逻辑运算类指令的特点:
1、位对位的操作
2、除了NOT指令,其余指令影响标志位
CF=0,AF=0,OF=0
SF,PF,ZF根据指令操作结果确定。
逻辑与指令 AND
格式: AND DST , SRC
功能:将8位、16位寄存器或存储器内容和源操作数“与”
逻辑测试指令 TEST
格式: TEST DST , SRC
功能:将8位、16位寄存器或存储器内容和源操作数“与”,不产生运算结果,仅影响状态标志
逻辑或指令 OR
格式: OR DST , SRC
功能:将8位、16位寄存器或存储器内容和源操作数“或”
逻辑异或指令 XOR
格式: XOR DST , SRC
功能:将8位、16位寄存器或存储器内容和源操作数“异或”
NOT 逻辑求反
格式:NOT DST
功能:将8位、16位寄存器或存储器内容求反
AND 可以使指定位为0
OR 可以使指定位为1
XOR 可以使指定位为非
将一个二进制数9变为字符‘9’
移位类指令的特点:
1、格式:SHR DST ,SRC
DST:通用寄存器或存储单元
SRC:1或CL寄存器
2、移位指令影响标志位
CF为指令移出的一位
OF=1表示移位前后符号位发生了变化
算术、逻辑移位指令还影响SF、PF、ZF
算术左移指令:
SAL DST,1
SAL DST,CL
逻辑左移指令:
SHL DST,1
SHL DST,CL
有符号数
无符号数
算术左移和逻辑左移
逻辑右移
格式:
SHR DST,1
SHR DST,CL
无符号数的右移
0
CF
逻辑右移例:
MOV AL,68H
MOV CL,2
SHR AL,CL
移动1次
移动2次
0
0
0
AL
AL
AL
CF
CF
CF
0
0
0
0 1 1 0 1 0
0
0 0 1 1 0 1 0 0
0 0 0 1 1 0 1 0
算术右移
格式:
SAR DST,1
SAR DST,CL
有符号数的右移
CF
非循环移位指令的应用
左移可实现乘法运算
右移可实现除法运算
3.6逻辑运算类指令 来自淘豆网m.daumloan.com转载请标明出处.