汇编语言2-4逻辑移位指令

上传人:平*** 文档编号:48001642 上传时间:2018-07-08 格式:PPT 页数:26 大小:2.16MB
返回 下载 相关 举报
汇编语言2-4逻辑移位指令_第1页
第1页 / 共26页
汇编语言2-4逻辑移位指令_第2页
第2页 / 共26页
汇编语言2-4逻辑移位指令_第3页
第3页 / 共26页
汇编语言2-4逻辑移位指令_第4页
第4页 / 共26页
汇编语言2-4逻辑移位指令_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《汇编语言2-4逻辑移位指令》由会员分享,可在线阅读,更多相关《汇编语言2-4逻辑移位指令(26页珍藏版)》请在金锄头文库上搜索。

1、第 2章一、数据传送类; 二、算术运算类; 三、位操作指令(逻辑运算和移位类) ; 四、串操作类; 五、控制转移类; 六、处理器控制类;8086指令系统第 2章要求:全面而准确地理解每条指令的功能和应用重点掌握以下指令:AND、XOR、TEST、 SHL、SHR、 RCL、RCR 8086指令系统位操作指令,它们都是按位进行操作的包含逻辑运 算类指令和移位指令。位操作类指令以二进制位为基本单位进行数据的操 作;这是一类常用的指令,都应该特别掌握注意这些指令对标志位的影响第 2章逻辑运算和移位类一、逻辑运算指令AND/OR/XOR/NOT/TES T二、移位指令SHL/SHR/SAL/SAR三、

2、循环移位指令ROL/ROR/RCL/RCR 第 2章一、逻辑运算指令ANDANDNOTNOTXORXORORORTESTTEST第 2章1、逻辑与指令AND功能:对两个操作数执行按位的逻辑与运算, 结果送到目的操作数AND reg,imm/reg/mem ;regregimm/reg/memAND mem,imm/reg ;memmemimm/reg说明:(1)按位的逻辑与运算; (2)操作数不能同时为存储器操作数; (3)注意对标志位的影响P44; 思考: (1)某一个操作数自己和自己相与? (2)AND指令主要用在什么场合?屏蔽某些位P44的例3-18第 2章2、逻辑或指令OR功能:对两个

3、操作数执行按位逻辑或 运算,结果送到目的操作数OR reg,imm/reg/mem ;regregimm/reg/memOR mem,imm/reg ;memmemimm/reg说明:(1)按位逻辑或运算; (2)OR指令对操作数的限制和对标志位的影响; 思考: (1)某一个操作数自己和自己相逻辑或? (2)OR指令主要用在什么场合?置某些位第 2章3、逻辑异或指令XOR功能:对两个操作数执行按位逻辑异或运算,结 果送到目的操作数XOR reg,imm/reg/mem ;regregimm/reg/memXOR mem,imm/reg ;memmemimm/reg说明: (1)只有相“异或”的

4、两位不相同,结果才是1; (2) XOR指令对操作数的限制和对标志位的影响同 AND指令; 思考: (1)某一个操作数自己和自己相异或? (2)XOR指令主要用在什么场合?寄存器清 求反某些位第 2章逻辑非指令NOT功能:对一个操作数执行按位逻辑非运算NOT reg/mem ;reg/memreg/mem说明: (1)按位取反,原来是“0”的位变为“1”, 原来是“1”的位变为“0” ; (2)NOT指令是一个单操作数指令; (3)NOT指令不影响标志位;第 2章小结逻辑指令:主要应用:对一个操作数的某些位进行置位 (变为1)或复位(变为0 )。源操作数往往 是立即数。实际编程时,需要正确地选

5、取立即数。第 2章 例题:逻辑运算mov al,45h;逻辑与 al=01h and al,31h;CF=OF=0,SF=0、ZF=0、PF=0mov al,45h;逻辑或 al=75h or al,31h;CF=OF=0,SF=0、ZF=0、PF=0mov al,45h;逻辑异或 al=74h xor al,31h;CF=OF=0,SF=0、ZF=0、PF=1mov al,45h;逻辑非 al=0bah not al;标志不变第 2章 例题:逻辑指令应用;AND指令可用于复位某些位(同0相与),不 影响其他位:将BL中D3和D0位清0,其他位不变 and bl,11110110B;OR指令可

6、用于置位某些位(同1相或),不 影响其他位:将BL中D3和D0位置1,其他位不变 or bl, 00001001B;XOR指令可用于求反某些位(同1相异或), 不影响其他位:将BL中D3和D0位求反,其他不变 xor bl, 00001001B第 2章测试指令TEST功能:对两个操作数执行逻辑与运算,结果 不回送到目的操作数,但要影响标志位,标志 位影响同AND指令。说明: (1)本条指令通常是用于检测一些条件是否满足 ,但又不希望改变原有的操作数的情况下。 (2)本条指令通常在其后紧跟一条条件转移指令 。第 2章例:测试为0或1若要检测AL中的最低位是否为1,若为1则转移。 test al,

7、01h ;测试AL的最低位D0 jnz there;标志ZF=0,即D0=1 ;则程序转移到there .;否则ZF=1,即D0=0,顺序执行 there: .TESTTEST思考:(1)以上检测的是最低位,若要检测AX 的最高位是否为1,若为1则转移,如何编程?第 2章二、移位指令SHLSHLSALSALSARSARSHRSHR其中两条左移指令对应同一条机器指令,所以, 从机器指令的角度来说,移位指令只有三条。四条指令分成逻辑移位和算术移位,分别具有左 移或右移操作,将操作数移动一位或多位。第 2章移位指令(shift)SHL reg/mem,1/CL ;逻辑左移,最高位进入CF,最低位补0

8、SHR reg/mem,1/CL ;逻辑右移,最低位进入CF,最高位补0SAL reg/mem,1/CL ;算术左移,最高位进入CF,最低位补0SAR reg/mem,1/CL ;算术右移,最低位进入CF,但符号位保持不变SAL与SHL相 同演示演示演示演示演示演示第 2章说明:对操作数:(1)第一个操作数是指定的被移位的 操作数,可以是寄存器或存储器;第二个操作数表示 移位位数,该操作数为1,表示移动一位;当移位位 数大于1时,则用CL寄存器值表示。 对标志位: (1)按照移入的位设置进位标志CF (2)根据移位后的结果影响SF、ZF、PF (3)对AF没有定义 对OF而言,如果进行一位移动

9、,则按照操作数的 最高符号位是否改变,相应设置溢出标志OF:如果 移位前的操作数最高位与移位后操作数的最高位不同 (有变化),则OF = 1;否则OF = 0。当移位次数大 于1时,OF不确定。第 2章例:移位指令mov cl,4 mov al,0f0h;al=f0h shl al,1;al=e0h ;CF=1,SF=1、ZF=0、PF=0,OF=0 shr al,1;al=70h ;CF=0,SF=0、ZF=0、PF=0、OF=1 sar al,1;al=38h ;CF=0,SF=0、ZF=0、PF=0、OF=0 sar al,cl ;al=03h ;CF=1,SF=0、ZF=0、PF=1

10、、OF=0第 2章三、循环移位指令ROLROLRCLRCLRCRRCRRORROR将操作数从一端移出的位返回到另一 端形成循环,分成不带进位和带进位, 分别具有左移或右移操作第 2章循环移位指令(rotate)ROL reg/mem,1/CL ;不带进位循环左移ROR reg/mem,1/CL ;不带进位循环右移RCL reg/mem,1/CL ;带进位循环左移RCR reg/mem,1/CL ;带进位循环右移演示演示演示演示演示演示演示演示第 2章说明:循环移位指令对操作数:同移位指令。 对标志的影响: (1)按照指令功能设置进位标志CF (2)不影响SF、ZF、PF、AF (3)对于OF,

11、同移位指令。如果进行一位移动 ,则按照操作数的最高符号位是否改变,相应设置 溢出标志OF:如果移位前的操作数最高位与移位后 操作数的最高位不同(有变化),则OF = 1;否则 OF = 0。当移位次数大于1时,OF不确定例:移位实现乘法只要左移以后的数未超出一个字节或字的范围 逻辑左移一位相当于无符号数乘以2 逻辑右移一位相当于无符号数除以2实现位无符号数X10运算 (1)用乘法指令 (2)用移位与加法指令mov ax,x shl ax,1;ax ax2 Mov bx,x Mov cl,3 shl bx,cl ;bx bx8 add bx,ax Mov x,bxmov bx,ax mov si

12、,ax shl si,1;si2ax add si,ax;si3ax mov dx,bx mov cl,03h shl dx,cl;dx8bx sub dx,bx;dx7bx add dx,si;dx7bx3ax例3.34:移位实现乘第 2章 例:32位数移位;将DX.AX中32位数值整个左移一位 shl ax,1 rcl dx,1DXAXCF0总 结一、逻辑运算指令AND/OR/XOR/NOT/TEST二、移位指令SHL/SHR/SAL/SAR三、循环移位指令ROL/ROR/RCL/RCR 第 2章写出三条既可使AX寄存器清0,又能使CF为的指 令P62 第7 、题练 习作 业第 2章SHL / SAL指令第 2章SHR指令第 2章SAR指令第 2章ROL指令第 2章ROR指令第 2章RCL指令第 2章RCR指令第 2章逻辑运算指令第 2章

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号