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 汇编器· 伪指令 |
指令扩展 | 浮点 · 高级语言 |
此页面或部分是一个未开发的草稿或大纲。 您可以帮助开发这项工作,或者您可以在项目室中寻求帮助。 |