6微型计算机技术指令系统第8讲20150110解说.ppt

6微型计算机技术指令系统第8讲20150110解说.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.5 逻辑运算和移位指令 3.5.1 逻辑运算指令 (1)逻辑“非”(取反指令) 3.5.1 逻辑运算指令 操作数可以是寄存器或存储器,但不能为段寄 存器和立即数。 例如: NOT CX NOT BYTE PTR [BX] NOT DS ;错 NOT 1234H ;错 3.5.1 逻辑运算指令 3.5.1 逻辑运算指令 (2)逻辑“与” 格式:AND DST, SRC 操作:DST← DST ∧ SRC 按位逻辑“与”,结果回送目标操作数; 影响SF、ZF、PF,同时将CF和OF清0。 “与”运算规则: 1∧1=1,1∧0=0,0∧1=0,0∧0=0。 3.5.1 逻辑运算指令 AND指令可以用于屏蔽某些不关心的位,而保留 某些感兴趣的位。 将要屏蔽的位和0进行逻辑“与”,而要保留的 位和1进行逻辑“与”即可。 3.5.1 逻辑运算指令 例如: AND AL, 0000 1111B 将高4位清0,而保留低4位。 3.5.1 逻辑运算指令 也可以用AND指令清进位标志。 例如: 3.5.1 逻辑运算指令 (3)逻辑“或” 格式:OR DST, SRC 操作:DST← DST ∨ SRC 按位逻辑“或”,结果回送目标操作数。 影响SF、ZF、PF,同时将CF和OF清0。 “或”运算规则: 1∨1=1,1∨0=1,0∨1=1,0∨0=0。 3.5.1 逻辑运算指令 用来对一些指定的位置1。 例如: OR AL, 0F0H 实现对AL高4位置1,其它位不变。 3.5.1 逻辑运算指令 3.5.1 逻辑运算指令 也可以用OR指令清进位标志。 例如: OR AX, AX 3.5.1 逻辑运算指令 (4)逻辑“异或” 格式:XOR DST, SRC 操作:DST ← DST ⊕ SRC 按位逻辑“异或”,结果送目标操作数; 影响SF、ZF、PF,同时将CF和OF清0。 “异或”运算规则: 1⊕1=0,1⊕0=1,0⊕1=1,0⊕0=0。 3.5.1 逻辑运算指令 XOR指令可以将一个数的某些位求反,而其余位 保持不变; 求反的位与1异或,而保持的位与0异或。 3.5.1 逻辑运算指令 例如:若要将AL中的第1、3、5、7位求反,其 它位不变,可用下面的指令实现。 3.5.1 逻辑运算指令 XOR指令的另一个用途是使寄存器的内容和进位 标志同时清零。 例如: XOR AX, AX 3.5.1 逻辑运算指令 例如:实现把AX寄存器清零。 ① MOV AX, 0 ② XOR AX, AX ③ AND AX, 0 ④ SUB AX, AX 3.5.1 逻辑运算指令 (5)位测试指令 格式:TEST DST, SRC 操作:DST ∧ SRC 完成与AND相同的操作,结果反映在标志位上, 但不回送结果。 3.5.1 逻辑运算指令 通常用ZF标志来判断某一位是否为0。 例如: TEST AL, 3.5.2 移位指令 1、算术和逻辑移位指令 (1)算术左移或逻辑左移指令 格式: SAL/SHL DST, 1 SAL/SHL DST, CL 3.5.2 移位指令 操作数可以是寄存器或存储器; 可以进行字节或字操作; 若移位位数大于1,所移位数用CL存放。 3.5.2 移位指令 例如: 3.5.2 移位指令 又如: MOV AL, 02H SAL AL, 4 ;错 3.5.2 移位指令 MOV AL, 02H SHL AL, 1 SHL AL, 1 SHL AL, 1 SHL AL, 1 3.5.2 移位指令 将一个无符号数左移1位,相当于该数乘2,左 移2位相当于乘4。 3.5.2 移位指令 例如:将AX中的16位无符号数乘以10。 因为:X×10 = X×2 + X×8 3.5.2 移位指令 可以用左移方法实现上述的乘法运算。 SHL AX, 1 ;乘2 MOV BX, AX SHL AX, 1 ;乘4 SHL AX, 1 ;乘8 ADD AX, BX ;乘10 3.5.2 移位指令 也可以

文档评论(0)

挑战不可能 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档