数据操作指令具有计算能力。它们对数据执行算术、逻辑和移位操作。
有以下三种类型的数据操作指令 -
算术运算包括加法、减法、乘法和除法。有些计算机只提供加法和减法运算的指令,并从这两个运算中生成乘法和除法运算。每条指令都由一个助记符表示。
下表显示了一些算术指令及其各自的助记符。
算术指令
名称 | 助记符 |
---|---|
Load | LD |
Store | 英石 |
Move | 移动 |
Exchange | XCH |
Input | 在 |
Output | 出去 |
Push | 推 |
Pop | 流行音乐 |
这些说明的描述如下 -
增量- 增量指令将存储在寄存器或内存字中的值加 1。
递减- 递减指令从存储在寄存器或内存字中的内容中减去 1。
算术指令- 算术指令可用于不同类型的数据,例如浮点、二进制、单精度或双精度数据。
在算术指令执行期间,处理器状态标志或条件代码被设置以指定操作的结果。
逻辑指令对存储在寄存器中的位执行二进制操作。在逻辑运算中,操作数的每一位都被视为一个布尔变量。逻辑指令可以更改位值、清除一组位,甚至可以将新位值插入存储在寄存器或内存字中的操作数中。每条逻辑指令都由助记符表示。
名称 | 助记符 |
---|---|
Clear | CLR |
Complement | 通讯 |
AND | 和 |
OR | 要么 |
Exclusive-OR | 异或 |
Clear carry | CLRC |
Set carry | 国家经贸委 |
Complement carry | 商会 |
Enable interrupt | EI |
Disable interrupt | DI |
清除指令将特定操作数替换为 0。补码指令反转操作数的所有位并产生 1 的补码。AND、OR 和 XOR 指令对操作数的每个位或位组执行逻辑运算。
AND 指令可以清除操作数的一位或一组位。对于布尔变量 a,关系 'ab0 = 0' 和 'ab1 = a' 表示二进制变量在与 0 进行 AND 运算时将值更改为 0。
OR 指令可以设置操作数的一位或一组位。对于布尔变量 a,关系 'a + 1 =1' 和 'a + 0 = a' 表示二进制变量与 1 进行 OR 运算时,值变为 1。
XOR 指令可以对操作数的位进行补码。对于布尔变量a,'a + 1 = a'和'a + 0 = a'的关系表示二进制变量在与1异或时取反。但是,变量在与0异或时不改变值。
进位位可以用适当的指令清零、置位或补码。位操作指令还可以启用或禁用由触发器控制的中断功能。
移位指令有助于将操作数的位向右或向左移位。移位的方向基于特定指令。首先将操作数装入累加器,然后逐位执行移位操作。
左移操作将零移到低阶空出的位置。在右移操作中,零被移到高阶空出的位置。移位的位也可以是符号位的原始值,如算术右移,也可以是从累加器扩展的低位位置移出的位,如右移蓄能器和扩展器 (RRAE)。