指令系统
第2部分
1
三、逻辑运算和移位类
逻辑运算
移位操作
与
或
非
异或
非循环移位
循环移位
逻辑移位
算术移位
不带进位位的移位
带进位位的移位
2
逻辑运算指令对操作数的要求大多与MOV指令相同。“非”运算指令要求操作数不能是立即数;
除“非”运算指令外,其余指令的执行都会使标志位OF=CF=0,其余标志位视情况而定
3
“与”指令:
格式: AND OPRD1,OPRD2
操作: 两操作数相“与”,结果送目标地址
4
“与”指令的应用
实现两操作数相与的运算;
使目标操作数的某些位不变,某些位清“0”;
在操作数不变的情况下使CF和OF清零。
实现手段:
5
“与”指令应用例
AND BL,[BX]
AND AL,0FH
AND AX,AX
6
“或”运算指令
格式: OR OPRD1,OPRD2
操作: 两操作数相“或”,结果送目标地
址
7
“或”指令的应用
实现两操作数相“或”的运算;
使某些位不变,某些位置“1”
在不改变操作数的情况下使OF=CF=0
8
“或”指令的应用例
OR AX,[DI]
OR CL,0FH
OR AX,AX
OR AL,AL
JP GOON
OR AL,80H
GOON:….
偶校验转移(PF=1)
将一个二进制数9变为字符‘9’
?
9
“非”运算指令
格式:NOT OPRD
操作:操作数按位取反再送回原地址
指令中的操作数不能是立即数
指令的执行对标志位无影响
例:NOT BYTE PTR[BX]
10
第3章 指令系统(二) 来自淘豆网www.taodocs.com转载请标明出处.