黄玉清-微机原理课件3.ppt

黄玉清-微机原理课件3.ppt

ID:61917504

大小:351.00 KB

页数:47页

时间:2021-03-29

黄玉清-微机原理课件3.ppt_第1页
黄玉清-微机原理课件3.ppt_第2页
黄玉清-微机原理课件3.ppt_第3页
黄玉清-微机原理课件3.ppt_第4页
黄玉清-微机原理课件3.ppt_第5页
资源描述:

《黄玉清-微机原理课件3.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、3.4.3、逻辑运算指令逻辑运算指令AND与OR或NOT非TEST测试XOR异或非循环移位指令SALSHLSARSHR循环移位指令ROLRORRCLRCR逻辑运算方法SRCDSTNOTAND/TESTORXOR001000010011101011110110一、逻辑指令ANDdst,srcORdst,srcXORdst,srcNOTdstTESTdst,src例1、ANDAX,BXANDAH,0FHORAL,0F0HTESTAL,01;测试AL的D1=1?XORAX,AX;将AX清零例2、设AH=10011101,对AH的高四位置

2、零,低四位保持不变。一、逻辑指令——ANDANDAH,0FH10011101AND0000111100001101若需要将高四位置一呢?例3、ORAH,50HORAX,0FF00H00001101OR11110000一、逻辑指令——OR11111101例4、使AL中的数,第0、1位取反。MOVAL,71H;送操作数XORAL,03H;送特征数00000011HLT;暂停01010001(AL)XOR0000001101010010一、逻辑指令——XOR例5、测试AL中的第0、1、2位是否为零。MOVAL,40HTESTAL,07H

3、;测AL的0、1、2位HLT01001000AND0000011100000000一、逻辑指令——TESTAND指令用于对一个数据的指定位清零;OR指令用于对一个数据的指定位置1;NOT指令用于取反码,再加一,得补码;XOR指令用于对寄存器清零;TEST指令用于测试一个数据的指定位是1还是0。一、逻辑指令——应用总结SHLdst,count;逻辑左移SHRdst,count;逻辑右移SALdst,count;算数左移SARdst,count;算数右移CML00MLCCML0MLC二、非循环移位指令移位指令影响标志位CF、OF、PF

4、、SF和ZF。如果只移一位,指令中用1指出移位的位数,如果超过1位,必须用CL预先指明移位的位数。例1:SALDX,1;DX中的数左移1位MOVCL,4SALAX,CL;AX中的数左移4位SHLAL,CLSHRAL,CL;AL中的数右移4位二、非循环移位指令例2、将两个非组合BCD数(高阶存BL,低阶存于AL中),转换成一个组合的BCD数,存于AL中。0000****BL0000????ALOR****0000BLMOVCL,4SHLBL,CLORAL,BLHLT二、非循环移位指令****????ALSHL分析:10=(2+8)左

5、移一位,乘以2;右移一位,除以2。二、非循环移位指令程序段:MOVBX,AXMOVCL,2SHLAX,CL;左移2位,乘以4ADDAX,BX;AX为原来5倍SHLAX,1;AX为原来的10倍HLT例3、将AX中的内容乘以10。三、循环移位指令ROLdst,count;左小循环RORdst,count;右小循环RCLdst,count;左大循环RCRdst,count;右大循环例1、ROLAL,1AL:1001000100100011例2、MOVCL,2ROLBH,CLBH:1010111110111110举例1、已知AX=0012

6、H,BX=0034H,要求把它们装配到一起形成AX=1234H,如何作?2、有一双字存放于DX、AX中,现要将其整体左移一位,如何操作?三、循环移位指令LEASI,ASCBUFLEADI,BCDBUFMOVCX,COUNTRORCX,1JNCNEXTROLCX,1MOVAL,[SI]INCSIANDAL,0FHMOV[DI],ALINCDIDECCXRORCX,1MOVAL,[SI]INCSIANDAL,0FHMOVBL,ALMOVAL,[SI]INCSIPUSHCXMOVCL,4SALAL,CLPOPCXADDAL,BLMOV[

7、DI],ALINCDILOOPNEXTNEXT:将一段ASCII码转换成组合BCD码。举例3.4.4、串操作指令字串传送:MOVSB/MOVSW字串比较:CMPSB/CMPSW字串扫描:SCASB/SCASW字串装入:LODSB/LODSW字串存储:STOSB/STOSB一、串操作的特点1)、SI寻址源操作数,段地址在DS;DI寻址目的操作数,段地址在ES。2)、每次操作后,SI、DI自动修改:DF=0,SI和DI加1或(加2),DF=1,SI和DI减1或(减2)。3)、若源字串和目的字串在同一段中,则把DS和ES设成相同数字。4

8、)、通过重复前缀实现串操作。二、重复前缀1、REPMOVSB/MOVSW(1).若CX=0,退出重复操作;(2).若CX≠0,执行串操作一次,CXCX-1,修改SI、DI,转(1)。2、相等重复前缀REPZ(REPE)(1).若CX=0或ZF=0

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。