第5章控制转移和程序结构.ppt
《第5章控制转移和程序结构.ppt》由会员分享,可在线阅读,更多相关《第5章控制转移和程序结构.ppt(72页珍藏版)》请在优知文库上搜索。
1、微型计算机原理及应用微型计算机原理及应用l5.1 5.1 目标地址寻址方式目标地址寻址方式l5.2 5.2 分支程序结构分支程序结构l5.3 5.3 循环程序结构循环程序结构l5.4 5.4 子程序结构子程序结构25.1 目标地址的寻址方式l 程序代码在代码段;程序代码在代码段;CSCS:指明代码段在主存中的开始位置、即段基地址;:指明代码段在主存中的开始位置、即段基地址;EIPEIP:给出将要执行指令的偏移地址;:给出将要执行指令的偏移地址;l 程序顺序执行,微处理器自动增量程序顺序执行,微处理器自动增量EIPEIP;程序控制转;程序控制转移,移,EIPEIP随之改变;随之改变;l 程序转移
2、到另外的代码段,程序转移到另外的代码段,EIPEIP和和CSCS都将改变;都将改变;l 控制转移类指令:改变控制转移类指令:改变EIPEIP(有时(有时CSCS),即改变程序),即改变程序执行顺序(实现程序控制转移)的指令;执行顺序(实现程序控制转移)的指令;l 目标地址寻址方式目标地址寻址方式:指明目的地、即目标地址的方法;:指明目的地、即目标地址的方法;目标地址目标地址目的地址目的地址转移地址转移地址35.1.1 转移范围l1.1.段内转移段内转移 在当前代码段范围内的程序转移;在当前代码段范围内的程序转移;不需更改不需更改CSCS,只改只改EIPEIP(偏移地址);(偏移地址);近转移近
3、转移(NearNear):):1616位段是位段是1616位近转移位近转移NEAR16NEAR16,3232位段是位段是3232位近转移位近转移NEAR32NEAR32;短转移短转移(ShortShort):转移范围在):转移范围在127127-128-128字节;字节;l2.2.段间转移段间转移 需要更改需要更改CSCS(段地址)和(段地址)和EIPEIP(偏移地址);(偏移地址);远转移远转移(FarFar):):1616位段是位段是3232位远转移位远转移FAR16FAR16,3232位段是位段是4848位远转移位远转移FAR32FAR32;45.1.2 目标地址寻址方式l 1.1.相对
4、寻址方式相对寻址方式 提供目标地址相对于当前指令指针提供目标地址相对于当前指令指针EIPEIP的位移量;的位移量;目标地址(转移后的目标地址(转移后的EIPEIP)当前当前EIPEIP位移量;位移量;相对寻址都是段内转移,最常用、最灵活;相对寻址都是段内转移,最常用、最灵活;l 2.2.直接寻址方式直接寻址方式 直接提供目标地址;直接提供目标地址;目标地址(转移后的目标地址(转移后的CSCS和和EIPEIP)指令操作数;)指令操作数;l 3.3.间接寻址方式间接寻址方式 由寄存器或存储单元提供跳转地址;由寄存器或存储单元提供跳转地址;目标地址来自寄存器或存储单元、间接获得;目标地址来自寄存器或
5、存储单元、间接获得;寄存器间接寻址:用寄存器保存目标地址;寄存器间接寻址:用寄存器保存目标地址;存储器间接寻址:用存储单元保存目标地址;存储器间接寻址:用存储单元保存目标地址;55.1.3 无条件转移指令JMPl JMP labelJMP label;程序转向程序转向labellabel标号指定的地址标号指定的地址;有段内相对寻址,段间直接寻址有段内相对寻址,段间直接寻址;JMP reg16/reg32JMP reg16/reg32;程序转向寄存器指定的地址程序转向寄存器指定的地址;为寄存器间接寻址为寄存器间接寻址;JMP mem16/mem32JMP mem16/mem32;程序转向存储单元
6、指定的地址程序转向存储单元指定的地址;为存储器间接寻址为存储器间接寻址;6JMP指令的4种类型1.1.段内转移、相对寻址段内转移、相对寻址 标号指明目标地址,指令代码包含位移量;标号指明目标地址,指令代码包含位移量;2.2.段内转移、间接寻址段内转移、间接寻址 通用寄存器或主存单元包含目标指令的偏移地址;通用寄存器或主存单元包含目标指令的偏移地址;3.3.段间转移、直接寻址段间转移、直接寻址 标号包含目标指令的段地址和偏移地址;标号包含目标指令的段地址和偏移地址;4.4.段间转移、间接寻址段间转移、间接寻址 1616位段用双字存储单元包含目标地址;位段用双字存储单元包含目标地址;3232位段用
7、位段用3 3字存储单元包含目标地址;字存储单元包含目标地址;MASM会根据存储模式等信息自动识别会根据存储模式等信息自动识别7例题5-1无条件转移程序-1;数据段数据段00000000 0000 0000nvarnvardw?dw?;代码段代码段00100010 EB 01 EB 01jmpjmp labl1 labl1;8 8位位移量位位移量00120012 90 90nopnop00130013 B8 FF02 B8 FF02labl1:labl1:mov ax,type labl1mov ax,type labl100160016 E9 0001 E9 0001jmpjmp near p
8、tr labl2 near ptr labl2;1616位位移量位位移量00190019 90 90nopnop001A001A B8 0020 R B8 0020 Rlabl2:labl2:mov ax,offset labl3 mov ax,offset labl3;001D001D FF E0 FF E0jmpjmp ax ax001F001F 90 90nopnop00200020 B8 002B R B8 002B Rlabl3:labl3:mov ax,offset labl4mov ax,offset labl400230023 A3 0000 R A3 0000 Rmov nv
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 控制 转移 程序结构
