网站大量收购闲置独家精品文档,联系QQ:2885784924

第3章4逻辑移位及串操作.ppt

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章4逻辑移位及串操作

第三章 指令系统;1;指令系统;逻辑运算指令(5条);1、逻辑“与”指令 AND 格式:AND d,s 功能: (d) ?(d) ∧ (s) 说明:将目的操作数d与源操作数s按位相“与”结果送回d中,常用于使某些位清0;【例】屏蔽AL的0,1两位。 AND AL,0FCH;2、逻辑“或”指令 OR 格式:OR d,s 功能: (d) ?(d) ∨ (s) 说明:将目的操作数d与源操作数s按位相“或”结果送回d中,常用于使某些位置位(置1);【例】将AL的0,1两位置1。 OR AL,03H;3、逻辑“异或”指令 OR 格式:OR d,s 功能: (d) ?(d) ⊕ (s) 说明:将目的操作数d与源操作数s按位相“异或”结果送回d中,常用于使某些位取反;【例】对AL的0,1两位取反。 XOR AL,03H;例如: NOT AX NOT DH NOT SI NOT BYTE PTR [SI];5、测试指令 TEST 格式:TEST d,s 功能:(d) ∧ (s) 说明:将目的操作数d与源操作数s按位相“与”,只影响标志位不回送结果,常用于测试某些位是0或1;【例】测试AL的最高位是0/1? TEST AL,80H JZ XXX ;是0则跳转 (JNZ XXX ;是1则跳转);移位运算指令(8条);6、逻辑左移指令 SHL(SHift Left) 格式:SHL d,count 功能:逻辑左移 说明:将目的操作数d左移count位,右边补0,左边入CF;BX乘以2: SHL BX,1;7、逻辑右移指令 SHR(SHift Right) 格式:SHR d,count 功能:逻辑右移 说明:将目的操作数d右移count位,左边补0,右边入CF;8、算术左移指令 SAL(Arithmetic) 格式:SAL d,count 功能:同逻辑左移完全相同;9、算术右移指令 SAR(Arithmetic) 格式:SAR d,count 功能:算术右移 说明:将操作数d的内容右移,左边不变,右边移入CF中;10、循环左移指令 ROL(ROtate/ROund Left) 格式:ROL d,count 功能:循环左移 说明:将操作数d的内容左移,最高位循环移入最低位,同时移入CF;11、循环右移指令 ROR(ROtate/ROund Right) 格式:ROR d,count 功能:循环右移 说明:将操作数d的内容右移,最低位循环移入最高位,同时移入CF;12、带进位循环左移指令 RCL(ROtate/ROund Carry Left) 格式:RCL d,count 功能:带进位循环左移 说明:将操作数d的内容左移,最高位循环移入CF,而CF循环移入最低位;13、带进位循环右移指令 RCR(ROtate/ROund Carry Right) 格式:RCR d,count 功能:带进位循环右移 说明:将操作数d的内容左移,最低位循环移入CF,而CF循环移入最高位;串操作指令(5条); 串操作可以按字节操作(助记符末尾字母加B),也可以按字操作(助记符末尾字母加W)。按字节操作时,地址指针加或减1,按字操作时,地址指针加或减2 若方向标志DF=0,则按增址操作,地址指针加1或加2;若方向标志DF=1,则按减址操作,地址指针减1或减2 8086共有5种基本的串操作指令,有的指令涉及到2个串,而有的只涉及到1个串 有些串操作是在数据串与寄存器之间进行,则规定寄存器只能用累加器,字节操作时用AL,字操作时用AX 串操作指令每次只处理一个元素的数据,为了能重复执行最多达64KB的串操作,8086还提供了3种重复前缀指令,使用这些指令可以使串操作指令重复执行由寄存器CX指定的次数 除串比较和串搜索指令影响全部6个状态标志外,其它指令均不影响标志位;重复前缀(3个);(2)相等则重复 REPE/REPZ(REPeat when Equal/Zero) 格式:REPE/REPZ 串操作指令 功能:若串操作指令执行结果相等,且CX指定次数未到,则重复执行串操作指令,直到结果不相等,或CX指定次数已到则停止 说明:若ZF=1且CX-1→CX≠0则重复执行串指令,直到ZF=0或CX-1→CX=0为止。REPE指令主要用于串比较和串搜索指令前;(3)不相等则重复 REPNE/REPNZ(REPeat when Not Equal/Zero) 格式:REPNE/REPNZ 串操作指令 功能:若串操作指令执行结果不相等,且

文档评论(0)

wuyoujun92 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档