《x指令系统》PPT课件.ppt

《x指令系统》PPT课件.ppt

ID:52066968

大小:618.00 KB

页数:31页

时间:2020-03-31

《x指令系统》PPT课件.ppt_第1页
《x指令系统》PPT课件.ppt_第2页
《x指令系统》PPT课件.ppt_第3页
《x指令系统》PPT课件.ppt_第4页
《x指令系统》PPT课件.ppt_第5页
资源描述:

《《x指令系统》PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、三、逻辑类指令1.逻辑运算指令●运算规则:按位操作,无进/借位●对标志位的影响(除NOT指令外):CFOFSFZFPFAF00***无定义根据运算结果设置“与”运算指令格式:ANDdst,src“或”运算指令格式:ORdst,src“非”运算指令格式:NOTopr“异或”运算指令格式:XORdst,src测试指令格式:TESTdst,src说明:TEST相当于AND运算,但是不保存结果,仅影响标志。(1)逻辑”与”AND对两个操作数进行按位逻辑“与”操作。格式:ANDdest,src用途:保留操作数的某几位,清零其他位。例1:保留AL

2、中低4位,高4位清0。ANDAL,0FH例2:AL中有字符’a’~’z’,将其转换成大写。(‘a’=61h,‘A’=41h)ANDAL,01001111B例:测试AL的bit7,bit5,bit2是否都是1。ANDAL,10100100BCMPAL,10100100BJZYES;ifmatch,gotoYES……;ifnotmatch……YES:……;goeshereifall‘1’对两个操作数进行按位逻辑”或”操作。格式:ORdest,src用途:对操作数的某几位置1;对两操作数进行组合。例:把AL中的非压缩BCD码变成相应十进制数

3、的ASCII码。ORAL,30H(2)逻辑”或”OR例:把AH和AL中的非压缩BCD码组合成压缩的BCD码,放到AL中。MOVCL,4SHLAH,CLORAL,AH例:把AL的第5位置为1ORAL,00100000B对操作数进行按位逻辑”非”操作。格式:NOTmem/reg例:NOTCXNOTBYTEPTR[DI](3)逻辑“非”(取反)NOT对两个操作数按位进行”异或”操作。格式:XORdest,src用途:对reg清零(自身异或)把reg/mem的某几位变反(与’1’异或)例:把AX寄存器清零。例2:把DH的bit4,3变反①MO

4、VAX,0XORDH,18H②XORAX,AX③ANDAX,0④SUBAX,AX(4)逻辑”异或”XOR操作与AND指令类似,但不将”与”的结果送回,只影响标志位。TEST指令常用于位测试,与条件转移指令一起用。例:测试AL的内容是否为负数。TESTAL,80H;检查AL中D7=1?JNZMINUS;是1(负数),转MINUS……;否则(正数)不转移MINUS:…………(5)测试指令TEST逻辑运算指令常见的用法总结⑴清进位标志位:ANDAX,AX或ORAL,AL等⑵清零操作数:XORAX,AX不仅把AX清零,而且也影响了状态标志⑶把

5、某几位取反:用XOR指令,把要取反的位和1异或,不变的位和0异或⑷清零或置位某几位:用AND指令清零,用OR指令置位四、串操作指令8086/8088指令系统中有一组十分有用的串操作指令,这些指令的操作对象不只是单个的字节或字,而是内存中地址连续的字节串或字串。在每次基本操作后,能够自动修改地址,为下一次操作做好准备。串操作指令还可以加上重复前缀,此时指令规定的操作将一直重复下去,直到完成预定的重复次数。串操作指令共有以下五条:MOVS(Movestring)串传送CMPS(Comparestring)串比较SCAS(Scanstrin

6、g)串扫描LODS(Loadfromstring)从串中取数据STOS(Storeintostring)存数据到串中串操作指令功能说明⑴MOVS指令MOVSB或MOVSW以字节或字为单位在存储单元之间传送数据可以使用REP前缀⑵LODS指令LODSB或LODSW从内存中取出字节或字到累加器AL或AX可以使用REP前缀,但意义不大。⑶STOS指令STOSB或STOSW从累加器中存字节或字到存储器可以使用REP前缀⑷CMPS指令CMPSB或CMPSW以字节或字为单位进行两个存储器操作数的比较可以使用REPE/REPZ前缀用源操作数-目的操

7、作数⑸SCAS指令SCASB或SCASW在数据串中查找AL或AX中的内容。可以使用REPNE/REPNZ前缀表4.9串操作指令指令类型指令格式操作功能对标志的影响OSZAPC串传送指令MOVSDstring,SstringMOVSBMOVSW((ES):(DI))((DS):(SI))(SI)(SI)1或(SI)(SI)2(DI)(DI)1或(DI)(DI)2××××××串装入指令LODSSstringLODSBLODSW(AL)/(AX)((DS):(SI))(SI)(SI)1或(SI)(SI)2××××

8、××串保存指令STOSDstringSTOSBSTOSW((ES):(DI))(AL)/(AX)(DI)(DI)1或(DI)(DI)2××××××串比较指令CMPSSstring,DstringCMPSBCMP

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

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

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