360 彙編/360 指令/SR
外觀
SR - 減去暫存器 - 操作碼 1B
- SR 2,1
具體的語法是
- SR 目標暫存器, 源暫存器.
| RR 指令(2 位元組) | ||||||
| 位元組 1 | 位元組 2 | |||||
| 目標暫存器 | 源暫存器 | |||||
| (8 位) 操作碼 1B |
(4 位) 0..F |
(4 位) 0..F | ||||
- 第一個引數是目標暫存器,其值受指令影響。
- 第二個引數是源值暫存器。
SR 指令在所有型號的 360、370 和 z/System 上都可用。
SR 指令從第二個引數指定的暫存器中讀取 32 位整數,並將其從第一個引數指定的暫存器值中減去。執行指令後,第一個引數指定的暫存器將儲存操作結果。程式狀態字中的條件程式碼欄位會根據結果值進行更改。
此指令也可以用於使兩個暫存器引數相同以將該暫存器清零。如果 XR 指令中的兩個引數是同一個暫存器,則會發生相同的功能。
如果發生有符號整數溢位,即差值不在 -2**31 和 2**31-1 之間,則 CC 設定為 3。否則,CC 設定為 0、1 或 2,如果差值分別等於零、小於零或大於零。
- 如果檢測到有符號整數溢位並且 PSW 中的位 36 設定,則會發生操作異常。
- 要從 z/Series 上兩個暫存器的完整 64 位雙字中減去雙字值,請參見 SGR.
- 要從 z/Series 上另一個暫存器的完整 64 位雙字中減去字值,請參見 SGFR.
- 要從 z/Series 上記憶體中的 64 位雙字中減去完整 64 位雙字暫存器,請參見 SG.
- 要從 z/Series 上記憶體中的 32 位字中減去完整 64 位雙字暫存器,請參見 SGF.
- 要從記憶體中減去字值,請參見 S.
- 要從記憶體中減去半字值,請參見 SH.
- 要減去值並根據無符號算術設定條件程式碼,或者新增多字整數的最重要部分,請參見 SL 或 SLR.
- 要減去 32 位字浮點值,請參見 SE、SER、SD 或 SDR.
- 要新增 32 位字整數,請參見 AR、A、AH、AL 或 ALR.
- 要檢查條件程式碼,請參見 BC 或 BCR.
| 上一條指令 SQXR |
360 彙編指令 {{{name}}} |
下一條指令 SRA |
| 上一個操作碼 1A |
下一個操作碼 1C |
| 360 組合語言 | |
| 360 系列 | 簡介 · 常見問題解答 · 360 系列 · 360 架構 |
|---|---|
| 360 指令集 | 360 指令 · 分支指令 · 資料傳輸指令 · 控制流指令 · 算術指令 · 邏輯指令 · 移位和旋轉指令 · 特權指令 · 其他指令 |
| 語法和彙編器 | 360 彙編器· 偽指令 |
| 指令擴充套件 | 浮點 · 高階語言 |
| 此頁面或部分內容是未完成的草稿或大綱。 您可以幫助完成工作,或者您可以在專案室尋求幫助。 |