版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第9章转移指令转移指令就是可以控制CPU执行指令顺序的指令。8086CPU的转移行为分为:段内转移——只修改IP的值。短转移:IP的变化范围为-128—+127近转移:IP的变化范围为-32768—+32767段间转移——同时修改CS和IP的值。8086CPU的转移指令分为:无条件转移指令条件转移指令循环指令过程中断一、无条件转移指令(JMP)1、段内转移段内转移又可分为下面三种形式:段内直接短转移段内直接近转移段内间接转移2、段间转移段间转移又可分为下面二种形式:段间直接转移段间间接转移
3、应用举例
段内转移指令的转移范围在JMP指令所在的段内,只需将IP的值加上转移目的地的偏移量就可控制指令的转移。只需修改IP的值;转移目的地址是由JMP指令到目的地的偏移量决定的;偏移量为8位或16位的带符号数。(8位偏移量的范围为-128—127;16位的偏移量的范围为-32768—32767,其中负数为向前转移,正数为向后转移)段内直接短转移指令格式:
JMPSHORT标号执行操作:(IP)=(IP)+8位偏移量说明:标号是标号所在行指令的地址,即转移的目的地址。 转移的范围为以JMP指令为中的-128到+127字节内。程序9-1assumecs:codecode segmentstart: movax,0
jmpshorts addax,1s: incaxcode endsend start段内直接近转移指令格式:
JMPNEARPTR标号执行操作:(IP)=(IP)+16位偏移量转移的范围为以JMP指令为中的-32768到+32767字节内。注:上述两种转移指令都可以写作简化格式
JMP标号段内间接转移指令格式:JMPWORDPTROPR JMP寄存器注:OPR为除立即数寻址方式以外的任一种寻址方式。例:JMPCX; (IP)=(CX)JMPWORDPTR[BX]; (IP)=([BX])JMPWORDPTRDS:[0];JMPWORDPTR[BX][SI]
段间转移时,程序将从一个代码段转移到另一个代码段中支执行,转移的目的地址由段地址和偏移地址构成,因此段间转移需要同时修改CS和IP的值。需同时修改CS和IP的值;偏移量由段地址和偏移地址组成。段间直接转移指令格式:
JMPFARPTR标号执行操作:(IP)=标号的段内偏移地址 (CS)=标号所在段的段地址例:
JMPFARPTRS段间间接转移指令格式:
JMPDWORDPTR[]执行操作:用确定的内存单元中的双字的低字修改IP,高字修改CS的值。例:
JMPDWORDPTR[BX] JMPDWORDPTR[BX][DI]注: JMP1000:0020
这种格式只能用于DEBUG中,在源程序中出现时编译器不能编译,会报错。 二、取值运算符OFFSET功能:取得一个标号的偏移地址。举例:
MOVAX,OFFSETS三、条件转移指令JCXZ格式:
JCXZ标号功能:当CX=0时转移到标号处执行。注:所有的条件转移都为段内短转移四、循环指令LOOP功能:当CX≠0时转移到标号处执行。注:所有的循环指令都是段内短转移已知DS=1000H,ES=2000H,SS=3800H,SI=1010H,BX=0200H,BP=0020H,请指出下列指令的源操作数字段是什么寻址方式?源操作数字段的物理地址是多少?1)MOVAL,[1000H]2)MOVAH,SI3)MOVAX,[BP]4)MOVAL,BYTYPTR[BX][SI]5)ADDAX,[BP+10]6)ADDAL,ES:[BX]7)MOVAL,[BX][SI+8]8)MOVAL,ES:[BX+SI]补全下面程序,使该程序在运行中将S处的一条指令复制到S0处。
assume cs:code code segment s: movax,bx movsi,offsets movdi,offsetso
s0: nop nop code ends end s判断下列转移指令的转移方式:Jmpwordptr[bx+8]Jmpfarptrs;(S为标号)JmpbxJmpnearptrsJmpdwordptr[bx]JmpshortptrsJmpwordptr[bx+si]检测点9-11、程序如下:
assumecs:codedatasegment?dataendscodesegmentstart: movax,data movds,ax movbx,0 jmpwordptr[bx+1]codeendsendstart若要使程序中的JMP指令执行后,CS:IP指向程序的第一指令,在data段中应定义哪些数据?2、程序如下:
assumecs:code datasegment dd12345678h dataends codesegment start: movax,data movds,ax movbx,0 mov[bx],
mov[bx+2],
jmpdwordptrds:[0] codeends endstart补全程序,使jmp指令执行后,CS:IP指向程序的第一条指令。3、用DEBUG
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年旅游服务代理合同样本
- 2025年度绿植花卉租赁与城市景观提升合同范本4篇
- 2025年度绿化工程环境保护与节能减排合同范本4篇
- 2025版绿色建筑项目租赁与能源管理合同4篇
- 2025年度个人二手房交易安全协议范本4篇
- 个人间短期资金周转合同书版
- 个人买卖合同范文(2024版)
- 二零二五年度风力发电机组安装及运营维护协议3篇
- 2025年度个税起征点调整下签劳务合同税务筹划合作协议
- 二零二五年度素食餐饮品牌授权合作合同
- 车站值班员(中级)铁路职业技能鉴定考试题及答案
- 极简统计学(中文版)
- JTG∕T E61-2014 公路路面技术状况自动化检测规程
- 高中英语短语大全(打印版)
- 2024年资格考试-对外汉语教师资格证笔试参考题库含答案
- 软件研发安全管理制度
- 三位数除以两位数-竖式运算300题
- 寺院消防安全培训课件
- 比摩阻-管径-流量计算公式
- GB/T 42430-2023血液、尿液中乙醇、甲醇、正丙醇、丙酮、异丙醇和正丁醇检验
- 五年级数学应用题100道
评论
0/150
提交评论