- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
汇编语言程序设计及上机指导 第4章 指令系统.ppt
* 在64位模式下,指令指针为RIP。JMP指令的执行分为相对转移和绝对转移两种情况: 若为相对转移,则用RIP寄存器与机器码中的位移量字段相加的和修改RIP值,此时位移量字段不能超过32位,并将其符号扩展为64位再相加; 若为绝对转移,则把机器码中指出的寄存器或内存单元的值直接填入RIP(若不足64位将进行0扩展),实现64位地址空间的转移。 【例】 JMP 30000H ;若原来RIP=20000H,则将RIP加10000H, 实现相对转移 JMP R15 ;程序将转向R15指向的地址,即RIP←R15, 实现绝对转移 * 二.条件转移类指令 (1)根据单个标志位的条件转移指令 JC TAB1 ;当(AX-BX)有借位时,转至TAB1。 CMP CX,DX JNE TAB2 ;当CX≠DX(即CX-DX≠0)时,转至TAB2。 指 令 名 称 说 明 助 记 符 测试条件 等于/结果为零转移 相等/等于零 JE/JZ 目标标号 ZF=1 不等于/结果不为零转移 不相等/不等于零 JNE/JNZ 目标标号 ZF=0 有进位/有借位转移 有进位/借位 JC 目标标号 CF=1 无进位/无借位转移 无进位/借位 JNC 目标标号 CF=0 溢出转移 有溢出 JO 目标标号 OF=1 不溢出转移 无溢出 JNO 目标标号 OF=1 奇偶性为1/为偶转移 有偶数个“1” JP/JPE 目标标号 PF=1 奇偶性为0/为奇转移 有奇数个“1” JNP/JPO 目标标号 PF=0 符号位为1转移 是负数 JS 目标标号 SF=1 符号位为0转移 是正数 JNS 目标标号 SF=0 * (2)用于无符号数比较的条件转移指令 表3.9中的11~14条指令,检测无符号数比较结果的特征标志CF和ZF。 例:比较无符号数FEH和01H的大小,执行下面的指令后,将转移到ABOVE处继续执行指令。 MOV AL,0FEH CMP AL,01H JA ABOVE …… ABOVE:…… 指 令 名 称 说 明 助 记 符 测 试 条 件 高于/不低于也不等于转移 无符号数A>B JA/JNBE 目标标号 CF=0且ZF=0 高于或等于/不低于转移 无符号数A≥B JAE/JNB 目标标号 CF=0 低于/不高于也不等于转移 无符号数A<B JB/JNAE 目标标号 CF=1 低于或等于/不高于转移 无符号数A≤B JBE/JNA 目标标号 CF=1或ZF=1 * (3)用于有符号数比较的条件转移指令 表3.9中的最后四条指令检测的是SF、OF以及ZF标志,表示两个有符号数间的大小关系。 例:比较有符号数FEH和01H的大小,下面的指令,将不转移到greater,而是继续执行JG下面的一条指令,因为有符号数0FEH<01H。 MOV AL,0FEH CMP AL,01H JG GREATER 指 令 名 称 说 明 助 记 符 测 试 条 件 大于/不小于也不等于转移 有符号数A>B JG/JNLE 目标标号 SF⊕OF=0且ZF=0 大于或等于/不小于转移 有符号数A≥B JGE/JNL 目标标号 SF⊕OF=0或ZF=1 小于/在大于也不等于转移 有符号数A<B JL/JNGE 目标标号 SF⊕OF=1且ZF=0 小于或等于/不大于转移 有符号数A≤B JLE/JNG 目标标号 SF⊕OF=1或ZF=1 * 三.调用与返回指令 1.调用指令CALL 指令格式:CALL OPRD 用于调用子程序(或过程)OPRD,它和JMP指令相似。 ⑴段内直接调用 操作:PUSH IP ;IP入栈 (IP)←(IP)+16位位移量 ;转向子程序入口 * ⑵段内间接调用(CALL NEAR PTR DST) 操作:PUSH IP ;IP入栈 (IP)←(EA) ;转向子程序入口 ----IP的值不是CALL指令的下一条指令地址加上16位位移量,而是直接将DST的有效地址送入IP,这是一种绝对调用指令。 例: CALL BX
您可能关注的文档
最近下载
- 游艇帆船驾照A2F理论培训考试题库大全-上(单选题汇总) .docx VIP
- 圣女果设施农业种植基地大棚建设及深加工项目可行性报告.doc VIP
- 字节跳动项目经理岗面试题库参考答案和答题要点.docx VIP
- 南平市建阳外国语学校新初一均衡分班语文试卷.doc VIP
- 南平市建阳外国语学校语文新初一分班试卷.doc VIP
- 八年级下册数学期末考试题三套.doc VIP
- 圣女果设施农业种植基地项目经营分析报告.pptx VIP
- 新质生产力视角下的民办高校转型策略与实践.docx VIP
- 物业服务过渡期合同6篇.docx VIP
- 2025年保安员(初级)考试模拟100题及在线模拟考试(100题,含答案)完整版.pdf VIP
文档评论(0)