Intel 8086/8088 指令系统(三)

三、位操作类指令

 

包括逻辑运算指令、测试指令和移位指令

 

指令名

指令格式

指令功能

标志位备注

逻辑运算指令

 

 

 

逻辑与

AND DEST,SRC

DEST←(SRC)∩(DEST)

SFZFPF,置CFOF0AF不确定

逻辑或

OR DEST,SRC

DEST←(SRC)(DEST)

SFZFPF,置CFOF0AF不确定

逻辑异或

XOR DEST,SRC

DEST←(SRC)Å (DEST)

SFZFPF,置CFOF0AF不确定

逻辑非

NOT DEST

不影响标志位

测试指令

 

 

 

 

TEST DEST,SRC

(SRC)∩(DEST)

按结果置SFZFPF,相与的结果不保存。CFOF0AF不定

移位指令

 

 

 

算术移位指令

SAL DEST,COUNT
SAR DEST,COUNT

左移COUNT
右移COUNT

影响OF SFZFPFCFAF不确定
COUNT
CL代替,带符号位,多余补零

逻辑移位指令

SHL DEST,COUNT
SHR DEST,COUNT

左移COUNT
右移COUNT

影响OF SFZFPFCFAF不确定
COUNT
CL代,不带符号位,多余补零

非进位循环移位

ROL DEST,COUNT
ROR DEST,COUNT

循环左移COUNT
循环右移COUNT

受影响的标志位OFCF
COUNT
CL代,不带符号位,多余补零

进位循环移位

RCL DEST,COUNT
RCR DEST,COUNT

CF循环左移COUNT
CF循环右移COUNT

受影响的标志位OFCF
COUNT
CL代,不带符号位,多余补零

 

1.       AND指令

 

功能: 执行BITBIT之间的逻辑与运算

语法: AND r/m, r/m/data

影响标志: C,O,P,Z,S(其中CFOF两个标志会被设为0)

 

2.       OR指令

 

功能: 执行BITBIT之间的逻辑或运算

语法: OR r/m,r/m/data

影响标志: C,O,P,Z,S(其中CO两个标志会被设为0)

 

3.       XOR指令

 

功能: 执行BITBIT之间的逻辑异或运算

语法: XOR r/m,r/m/data

影响标志: C,O,P,Z,S(其中CO两个标志会被设为0)

 

4.       NOT指令

 

功能: 执行BITBIT之间的逻辑非运算

语法: NOT r/m

影响标志: 该指令不影响任何标志位

 

5.       TEST指令

 

功能: 执行BITBIT之间的逻辑与运算,仅影响标志位

语法: TEST r/m,r/m/data

影响标志: C,O,P,Z,S(其中CO两个标志会被设为0) NOT指令不影响任何标志位

 

6.       SAL指令

 

功能: 算术左移位指令,把目的操作数的低位向高位移,空出的低位补0

语法: SAL r/m,data/CL

影响标志: C,P,Z,S,O

 

7.       SAR指令

 

功能: 算术右移位指令,把目的操作数的高位向低位移,空出的高位用最高位(符号位)填补。

语法: SAR r/m,data/CL

影响标志: C,P,Z,S,O

 

8.       SHL指令

 

功能: 逻辑左移位指令,移位后空出的位补0

语法: SHL r/m,data/CL

影响标志: C,P,Z,S,O

 

9.       SHR指令

 

功能: 逻辑右移位指令,移位后空出的位补0

语法: SHR r/m,data/CL

影响标志: C,P,Z,S,O

 

10.   ROL指令

 

功能: 非进位循环左移指令

语法: ROL r/m,data/CL

影响标志: C,P,Z,S,O

 

11.   ROR指令

 

功能: 非进位循环右移指令

语法: ROR r/m,data/CL

影响标志: C,P,Z,S,O

 

非进位循环左移/右移指令只是移位方向不同,它们移出的位不仅要进入CF,而且还要填补空出的位。

 

12.   RCL指令

 

功能: 带进位循环左移指令

语法: RCL r/m,data/CL

影响标志: C,P,Z,S,O

 

13.   RCR指令

 

功能: 带进位循环右移指令

语法: RCR r/m,data/CL

影响标志: C,P,Z,S,O

 

带进位的循环左移/右移指令只有移位的方向不同,它们都用原CF的值填补空出的位,移出的位再进入CF

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值