转移指令计算机原理.pdf

3.3.5 程序控制指令程序控制指令 程序控制指令又称为控制转移指令,包括转移指令、循环控制指令、过程调用指令和 中断指令 4 类。转移指令又分为无条件转移指令和条件转移指令。 1无条件转移指令无条件转移指令 JMP 计算机程序的执行完全按照 CSIP 的指向执行指令。通常情况下 CS 保持不变,IP 自动 增量,程序就按照指令的先后顺序执行。无条件转移指令会修改 CS 和 IP 的值,使程序跳 转到另一个位置去执行,改变指令的执行顺序。 根据程序的转移范围可分为段内转移和段间转移。 在同一段的范围之内进行转移, 只需 要修改 IP 的值, 称为段内转移。 如果 CS 的值被修改, 意味着程序将转移到另外的段去执行, 这称为段间转移。段间转移不仅修改段基址CS 的值,还修改 IP 的值。 JMP 指令不影响标志位。 (1)段内转移 指令格式 JMP OPRD 功能段内转移,IP IP位移量,或给 IP 赋值。 说明根据 OPRD 的类型又分为段内直接转移和段内间接转移。指令不影响标志位。 例如 JMP LABEL ;LABEL 为指令标号 JMP SHORT LABEL JMP NEAR LABEL JMP BX JMP WORD PTRBXDI JMP LABEL,程序转移到 LABEL 指明的指令处继续执行。指令中 LABEL 通常为标号, 例如【例题 3-17】程序段中的 FOUND 和 DONE。 JMP SHORT LABEL, 程序转移到 LABEL指明的指令处继续执行。 SHORT 为属性说明符, 说明转移范围,以当前 IP 为中心,转移范围-128127。 JMP NEAR LABEL,程序转移到 LABEL 指明的指令处继续执行。NEAR 为属性说明符, 说明转移范围,以当前 IP 为中心,转移范围-3276832767。 说明在编程时 NEAR 与 SHORT 通常省略,编译时由汇编程序自己计算。如果用了 NEAR 或 SHORT,在编译时有时会提示不正确的属性限制。所以 JMP LABEL 是最常见 的形式。 由于 LABEL 对应一条指令,是这条指令的符号地址,所以以上三种 JMP 形式又称为 段内直接转移。这些指令在编译时,汇编程序会计算出它的下一条指令到 LABEL 指明的指 令之间的位移量(相距多少字节) ,将这个位移量编译为 JMP 的操作数。指令执行时 IP 加 上这个位移量 (JMP 指令的功能) , IP 的值被修改, 使得下一条要执行的指令指向 LABEL。 JMP BX,将 BX 的值传送给 IP,程序转移到 CSIP 处继续执行。操作数可以是所有 16 位 通用寄存器。 JMP WORD PTRBXDI,从BXDI指明的内存区域连续取出两个字节传送给 IP,程序转 移到 CSIP 处继续执行。操作数可以采用各种寻址方式。 以上两种 JMP 形式又称为段内间接转移,编程时要注意操作数必须是 16 位。 【例题 3-17】 MOV DI, 0 JMP DONE FOUND DEC DI DONE MOV POINT, DI MOV AX,1234H JMP CX ;IP2000H,程序跳转到段内偏移地址为 2000H 处 (2)段间转移 指令格式 JMP OPRD 功能段间转移,IPOPRD 的段内偏移地址,CSOPRD 所在段的段基址。 说明根据 OPRD 的类型又分为段间直接转移和段间间接转移。指令不影响标志位。 例如 JMP FAR LABEL JMP DWORD PTR BXDI JMP FAR LABEL ,程序转移到 LABEL 指明的指令处继续执行,LABEL 为标号。FAR 是 相对于 NEAR 的属性说明符,FAR 说明标号 LABEL 在另外的代码段,与 JMP 指 令本身不在同一段。 这条指令执行的操作是 IPLABEL 的偏移地址, CSLABEL 所在段的段基址,程序转移到 CSIP 处继续执行。这种 JMP 形式又称为段间直接转 移。 JMP DWORD PTRBXDI, 从BXDI指明的内存区域连续取出 4 个字节, 前两个字节 (低 地址)传送给 IP,后两个字节送给 CS,程序转移到 CSIP 处继续执行。操作数属 于存储器操作数,可以采用各种存储器的寻址方式。这种 JMP 形式又称为段间间 接转移。 例如 JMP FAR NEXT JMP 80002000H JMP DWORD PTR DI 2条件转移指令条件转移指令 条件转移指令先测试条件, 若条件成立则执行转移操作; 若不成立则不转移并顺序执行 下一条指令。所有的条件转移指令转移范围-128127,属于段内短转移,都不影响状态标 志位。 指令格式 JCC OPRD 功能若条件成立则转移到 OPRD 处执行,IP IP位移量。 说明J 是 JUMP 的缩写,CC 表示转移的条件,OPRD 通常是标号。 表 3-1 条件转移指令 指令名称 汇编格式 转移条件 功能说明 进位转移 JC target CF1 有进位或借位 无进位转移 JNC target CF0 无进位或借位 等于或为零转移 JE/JZ target ZF1 相等或结果为 0 不等于或非零转移 JNE/JNZ target ZF0 不相等或结果不为 0 奇偶校验为偶转移 JP/JPE target PF1 有偶数个 1 奇偶校验为奇转移 JP/JPO target PE0 有奇数个 1 结果为负转移 JS target SF1 为负数 结果为正转移 JNS target SF0 为正数 溢出转移 JO target OF1 溢出 不溢出转移 JNO target OF0 不溢出 大于则转移 JA/JNBE target CF0 且ZF0 无符号数 大于或等于则转移 JAE/JNB target CF0 无符号数 小于则转移 JB/JNAE target CF1 无符号数 小于或等于则转移 JBE/JNA target CF1 或ZF1 无符号数 大于则转移 JG/JNLE target SFOF且ZF0 带符号数 大于或等于则转移 JGE/JNL target SFOF 带符号数 小于则转移 JL/JNGE target SFOF且ZF0 带符号数 小于或等于则转移 JLE/JNG target SFOF或ZF1 带符号数 CX内容为0转移 JCXZ target CX0 【例题 3-18】测试 AX 为奇数还是偶数,如是奇数则 BX 置成 0FFFFH;如是偶数 BX 置 成 0。 TEST AX, 01H ;测试 BX 中最低位的逻辑值 JZ EVEN ;ZF1,AX 为偶数转移至 EVEN 处执行 MOV BX, 0FFFFH ;AX 为奇数,设置奇数标志 JMP CON EVEN MOV BX,0 ;设置偶数标志 CON 【例题 3-19】 AX 与 BX 均为无符号数,测试 AX 与 BX 的大小 CMP AX, BX ;比较 AX 与 BX JZ EQUAL ;AXBX 则转移到 EQUAL 处 JA LAG ;AXBX,则转至 LAG 处 JMP CON ;AXBX,转移至 CON 处 EQUAL MOV CX, 0 ;置等于标志 LAG MOV CX, 0FFFFH ;置大于标志 CON

计算机原理转移指令题,转移指令计算机原理.pdf相关推荐

  1. 计算机操作员 国家题库,计算机操作员中最新国家题库基础知识部分.doc

    计算机操作员中最新国家题库基础知识部分 第1章 信息技术原理概述PAGE PAGE 22国家职业资格培训教程配套辅导练习第一章 信息技术原理概述计算机的概念.分类及应用1.信息革命的概念 迄今为止,人 ...

  2. 计算机组成原理综合题,2013计算机组成原理复习题.doc

    文档介绍: 2013计算机组成原理复****题 计算机组成原理知识点及复****题 1.计算机系统中的存贮器系统是指cache.主存贮器和外存贮器. 2.冯·诺依曼机工作的基本方式的特点是按地址访问并 ...

  3. 计算机三级在线题库,计算机三级网络技术题库(附答案)

    计算机三级网络技术题库(附答案) 一.选择题(每题1分,共60分) 下列各题A.B.C.D四个选项中,只有一个选择是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分. (1)全球多媒体网是 ...

  4. 计算机二级抽题规律,计算机二级考试抽题规律计算机二级考试题及答案.doc

    计算机二级考试抽题规律计算机二级考试题及答案 [--考试祝福语] 1.下列总线中,对微软出的"即插即用"(Play and Plug)方案支持很好的是( A ) A.PCI B.A ...

  5. 全国计算机在线做题,全国计算机等级考试一级题库.docx

    全国计算机等级考试一级题库 全国计算机等级考试一级题库 一选择题: 1.微型计算机硬件系统中最核心的部件是( ).答 案:B A .主板 B. CPU C.内存储器 D. I/O 设备 2.下列术语中 ...

  6. 计算机一级在上网题中怎么新建文本文件,计算机一级上网题教程 计算机基础知识题库...

    计算机一级上网题怎么做? 在计算机一级考试中,有一道在线题困扰着很多人.我不能从这个问题开始.我来教你怎么解决这个问题.1网上试题通常是计算机考试的最后一道题,内容是发电子邮件. 2. 根据第一项,在 ...

  7. 职称计算机没门多少题,职称计算机考试有一科没考过怎么办

    职称计算机考试有一科没考过怎么办以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 职称计算机考试有一科没考过怎么办 下次职 ...

  8. 大学计算机一级网络题,大学计算机一级考试试题及答案

    大学计算机一级考试试题及答案 23.计算机网络发展经历了远程终端联机阶段.计算机网络阶段.____阶段和信息高速公路阶段. 解答:计算机网络的发展大体上经历了4个阶段即远程终端联机阶段.计算机网络阶段 ...

  9. 哪里能练计算机基础知识题库,计算机基础知识练习题集锦.doc

    计算机基础知识练习题集锦.doc (22页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 24.9 积分 计算机基础知识练习题集锦全国计算机一级等级考试选 ...

最新文章

  1. 分区式存储管理算法实现_穿梭式自动化立体库的种类和特点有哪些?
  2. jvm性能调优 - 16案例实战_每日上亿请求量的电商系统 年轻代垃圾回收参数如何优化
  3. 阿里云:构建全球企业内外安全网络最佳实践
  4. springBoot学习(二) 基础运行原理
  5. 命令行开发、编译、打包Android应用程序
  6. ubuntu 安装 oracle-xe-universal
  7. 苹果 Mac 如何同时输出两个蓝牙喇叭或两副 AirPods 耳机?
  8. linux下最全的快捷键大全
  9. 什么是DDD(领域驱动设计)?
  10. 计算机怎么求标准偏差,如何计算Excel标准偏差?您必须知道这两个技巧
  11. Oracle中TO_NUMBER()函数的用法
  12. vue 修改标题栏_在Vue中如何实现动态修改页面title
  13. 千万别惹程序员,否则会在代码注释里,告诉这家公司有多坑
  14. 2012-8-18可樂美文分享《遗留在时…
  15. APP内打电话的小功能
  16. 政府安全资讯精选 2017年第十二期 中国网络安全漏洞披露平均效率远超美国; 美国美国国土安全部发布指令,要求联邦机构强化Web和电子邮件安全...
  17. 西门子1500与SMC EX260总线阀岛通讯组态
  18. 无线网卡的工作模式--ath9k网卡驱动开发总结(一)
  19. 商用室内机器人才是未来机器人开发的热点与趋势
  20. ArcBlock荣获“2018区块链之星”奖项

热门文章

  1. 下一代智能数据工厂,阿里云发布全新DataWorks
  2. 2017双11技术揭秘—阿里巴巴数据库技术架构演进
  3. 低代码发展专访系列之一:低代码平台产品的使用者都是谁?
  4. Cloud Native Infrastructures Meetup 北京 | 活动安排
  5. 阿里云宣布3年再投2000亿
  6. 我最喜欢的云 IDE 推荐!
  7. 5G精华问答 | 5G是否会“逼退”4G?
  8. jq动态渲染后获取不到元素高度_浏览器的渲染机制
  9. 曲师大教务系统服务器,曲师大教务处信息门户入口地址
  10. linux测试手柄,Linux Joystick 介绍