- 1、本文档共111页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
合肥学院电子系 规定:OPRD可为除立即数外的各种寻址方式。 (1)段内直接短转移指令 格式:JMP SHORT OPRD;(IP)← (IP)+ OPRD 规定:OPRD为8位地址偏移量,为符号地址(标号)。由SHORT指出,范围为-128 ---- +127。 (2)段内直接近转移指令 格式:JMP NEAR PTR OPRD;(IP)← (IP)+ OPRD 规定:OPRD为16位地址偏移量,为符号地址(标号) 。由NEAR指出, NEAR可省略( 指令可写成JMP OPRD )。目的地址与JMP指令应处于同一地址段范围之内。 (3)段内间接转移指令 格式:JMP WORD PTR OPRD;(IP)← [EA] 规定: OPRD可为除立即数外的各种寻址方式。若OPRD为16位寄存器,则(IP)← (reg);若OPRD为存储器中的一个字,则(IP)← (add+1) (add)。如: JMP WORD PTR[BX]; ( IP ) ← ((DS)?16 +(BX)) JMP WORD PTR BX ; ( IP ) ← (BX) (4)段间直接(远)转移指令 格式:JMP FAR PTR OPRD;(IP)← OPRD的段内偏移地址 (CS) ← OPRD所在的段地址 规定:OPRD为直接寻址方式。 (5)段间间接转移指令 格式: JMP DOWRD PTR OPRD; (IP)← [EA] (CS) ← [EA+2] 3.子程序调用和返回指令(P105) (1)子程序调用指令CALL CALL指令用来调用一个过程或子程序。由于过程或子程序有段间(即远程FAR)和段内调用(即近程NEAR)之分。所以CALL也有FAR和NEAR之分。因此返回指令RET也分段间与段内返回两种。 格式: CALL 子程序名 DST 段内调用: CALL NEAR PTR OPRD ; (SP)←(SP-2),((SP)+1)(SP)) ← (IP), ( IP ) ←子程序DST的地址( 即:IP+16位位移量 ) 规定:CALL指令首先将当前IP内容压入堆栈。当执行RET指令而返回时,从堆栈中取出一个字放入IP中。 段间调用:CALL FAR PTR OPRD ; (SP)←(SP-2) ,((SP)+1),(SP))= ( CS ) ; (SP)←(SP-2) ,((SP)+1),(SP))=( IP ); ( IP ) =[EA];( CS )=[EA+2] 5.十进制调整指令 计算机中的算术运算,都是针对二进制数的运算,而人们在日常生活中习惯使用十进制。为此在8086/8088系统中,针对十进制算术运算有一类十进制调整指令。 在计算机中人们用BCD码表示十进制数,对于BCD码,计算机中有两种表示方法: 压缩BCD码:即规定每个字节表示两位BCD数; 非压缩BCD码:即用一个字节表示一位BCD数,在这字节的高四位用0填充。 例如:十进制数25D,压缩BCD数为25H;非压缩BCD数为0205H,用两字节表示。数字的ASCII码是一种非压缩BCD码(高4位为0011H),0----9的ASCII码是30H----39H。 每条十进制调整指令在使用时都与相应的算术运算指令配合,并自动对相应的算术运算指令结果进行相应的十进制调整。 相关的BCD转换指令见下表。 十进制调整指令 指令格式 指令说明 DAA 压缩的BCD码加法调整 DAS 压缩的BCD码减法调整 AAA 非压缩的BCD码加法调整(ASCII码调整) AAS 非压缩的BCD码减法调整(ASCII码调整) AAM 乘法后的BCD码调整 AAD 除法前的BCD码调整 (1)AAA加法的ASCII调整指令 调整原则: a.若AL的低4位9或AF=1,则 AL=AL-6; 用与操作将AL高4位清零; AF置1,CF置1,AH=AH+1; b.否
文档评论(0)