360 彙編/360 指令/MR
外觀
MR - 乘暫存器 - 操作碼 1C
- MR 2,7
具體的語法是
- MR 目標暫存器, 源暫存器.
| RR 指令 (2 位元組) | ||||||
| 位元組 1 | 位元組 2 | |||||
| 目標暫存器 | 源暫存器 | |||||
| (8 位) 操作碼 1C |
(4 位) 0..F |
(4 位) 0..F | ||||
- 第一個引數是具有較少對目標暫存器的對數,其值為指令影響。
- 第二個引數是源值暫存器。
MR 指令在所有型號的 360、370 和 z/System 上都可用。
MR 指令執行兩個帶符號 32 位整數的乘法。第一個被乘數來自通用暫存器 T+1,其中 T 是目標暫存器(第一個運算元)的編號。第二個被乘數來自源暫存器(第二個運算元)。然後將所得積作為 64 位帶符號值放置到暫存器 T(最高有效 32 位)和 T+1(最低有效 32 位)中。目標暫存器編號 T 應為偶數。
程式狀態字中的條件碼欄位不會更改。
- 如果指定奇數暫存器編號作為目標暫存器,則會發生操作異常。
從 T+1 而不是 T 中獲取第一個被乘數(其中 T 是目標暫存器編號)可能會讓程式程式碼閱讀者感到困惑。例如,“MR 2,2”將暫存器 2 和 3 的值相乘,但“MR 2,3”計算暫存器 3 的值的平方。
- 要乘以記憶體中的字值,請參見M。
- 要除以暫存器中的字值,請參見DR。
- 要新增暫存器中的字值,請參見AR。
- 要新增值並根據無符號算術設定條件碼,或新增多字整數值的非最高有效部分,請參見AL 或 ALR。
- 要乘以浮點值,請參見MER、MDR、ME 或 MD。
| 上一條指令 MP |
360 彙編指令 {{{name}}} |
下一條指令 MS |
| 上一條操作碼 1B |
下一條操作碼 1D |
| 360 組合語言 | |
| 360 系列 | 簡介 · 基本常見問題解答 · 360 系列 · 360 架構 |
|---|---|
| 360 指令集 | 360 指令 · 分支指令 · 資料傳輸指令 · 控制流指令 · 算術指令 · 邏輯指令 · 移位和旋轉指令 · 特權指令 · 其他指令 |
| 語法和彙編器 | 360 彙編器· 偽指令 |
| 指令擴充套件 | 浮點 · 高階語言 |
| 此頁面或部分是一個未開發的草稿或大綱。 您可以幫助開發這項工作,或者您可以在專案室中尋求幫助。 |