- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
三、逻辑运算和移位指令
逻 辑 运 算 和 移 位 指 令 逻辑运算指令 AND DST,SRC 逻辑与指令 OR DST,SRC 逻辑或指令 XOR DST,SRC 逻辑异或指令 TEST DST,SRC 测试指令 NOT OPR 逻辑非指令 移位指令 SHL OPR,CNT 逻辑左移指令 SAL OPR,CNT 算术左移指令 SHR OPR,CNT 逻辑右移指令 SAR OPR,CNT 算术右移指令 ROL OPR,CNT 左循环移位指令 ROR OPR,CNT 右循环移位指令 RCL OPR,CNT 带进位左循环移位指令 RCR OPR,CNT 带进位右循环移位指令 SHLD DST,REG,CNT SHRD DST,REG,CNT
逻辑运算指令
(1)AND 逻辑与指令
格式:AND DST ,SRC
功能:
(DST)←(DST)∧(SRC)(按位与)
操作数:
AND MEM , IDATA
AND REG , IDATA
AND REG , MEM
AND MEM , REG
AND REG , REG
对标志寄存器的影响:
CF=OF=0;
根据运算结果设置SF、ZF、PF标志;
AF无定义。
说明:
1)利用AND指令,可以保留特定位(与1),同时屏蔽掉其它位(与0),以检测特定位。
2)利用AND指令,可以将某些特定位设置为0(与0),同时使其余位保持原值不变化(与1)。
3)一个寄存器和自身进行逻辑与运算,该寄存器内容不变。但该运算影响了SF、ZF、PF三个标志位,并使OF和CF清零。利用该特性,可以判断一个数据的正负、是否为零、以及数据的奇偶性。
(2)OR 逻辑或指令
格式:OR DST ,SRC
功能:
(DST)←(DST)∨(SRC)(按位或)
操作数:
OR MEM , IDATA
OR REG , IDATA
OR REG , MEM
OR MEM , REG
OR REG , REG
对标志寄存器的影响:
CF=OF=0;
根据运算结果设置SF、ZF、PF标志;
AF无定义。
说明:
1)利用OR指令,可以将某些特定位设置为1(或1),同时使其余位保持原值不变化(或0)。
2)一个寄存器和自身进行逻辑或运算,该寄存器内容不变。但该运算影响了SF、ZF、PF三个标志位,并使OF和CF清零。
利用该特性,可以判断一个数据的正负、是否为零、以及数据的奇偶性。
(3)XOR 异或指令
格式:XOR DST ,SRC
功能:
(DST)←(DST)⊕(SRC)(按位异或)
操作数:
XOR MEM , IDATA
XOR REG , IDATA
XOR REG , MEM
XOR MEM , REG
XOR REG , REG
对标志寄存器的影响:
CF=OF=0;
根据运算结果设置SF、ZF、PF标志;
AF无定义。
说明:
1)用XOR指令,可以将某些特定位“求反”(异或1),同时使其余位保持原值不变化(异或0)。
2)利用XOR指令,还可以将某个寄存器内容清零。
例如:
XOR AX,AX ;AX清0,设置CF = 0
(4)TEST 测试指令
格式:TEST OPR1 ,OPR2
功能:
(OPR1)∧(OPR2)(按位与),操作结果不保留,只根据操作结果的特征,设置条件码。
操作数:
AND MEM , IDATA
AND REG , IDATA
AND REG , MEM
AND MEM , REG
AND REG , REG
对标志寄存器的影响:
CF=OF=0;
根据运算结果设置SF、ZF、PF标志;
AF无定义。
说明:
TEST指令经常被用于进行位测试,例如:
┇
TEST AL,01H
JZ ZERO ;AL第0位为0,则跳转到标号ZERO处,否则继续执行
┇
(5)NOT 逻辑非指令
格式:NOT OPR
功能:
(OPR)←将(OPR)按位取反
操作数:
NOT REG
NOT MEM
对标志寄存器的影响: 对任何标志位都没有影响。
移位指令
操作数
① OPR:寄存器操作数REG、存储器操作数MEM
② CNT:立即数1,或者寄存器CL。
对标志寄存器的影响:
CF位:根据各条指令的规定来设置。
② OF位:
当CNT = 1,既移位次数等于1时,如果移位后
文档评论(0)