- 1、本文档共51页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三次实验: 1、编程实现各种进制之间的转换,例如十进制到二进制、二进制到十进制,十六进制到二进制、二进制到十六进制等; 2、编写数字排序子程序,通过主程序调用实现数组数据的排序(升序或降序); 控制汇编语言程序的流程 .IF, .ELSE, .ELSEIF和.ENDIF .REPEAT-.UNTIL和 .WHILE- .ENDW 这些语句用于为MASM6.*指示特殊的汇编语言命令 IF 的例子 参见表6.3 参见第175页的6.8 参见第176页的6.9 参见第176页的6.10 DO-WHILE的例子 参见第177页的6.11 参见第178页的6.12 参见第179页的6.13 REPEAT-UNTIL的例子 参见第180页的6.14 参见第181页的6.15 过程 过程或子程序是存储器中可重复使用的一段软件,而且是经常要用的 CALL 指令连接到过程,而RET(返回)指令从过程返回 当程序执行期间调用过程时,在堆栈中存储返回地址 CALL 指令将其后的指令的地址(返回地址)压入堆栈 RET指令从堆栈弹出地址,因此能够返回到CALL之后的指令 过程要以PROC 伪指令开始并且以ENDP伪指令结束 两个伪指令与过程的名字一起出现 PROC伪指令后面是过程的类型:NEAR或FAR NEAR或FAR过程后面可以用USES语句,USES语句使进入过程后将一些寄存器内容自动压入堆栈,退出过程前自动弹出堆栈 段内和段间两种过程的区别 RET指令的不同: 近返回指令用操作码C3H, 而远返回指令用操作码CBH 近返回从堆栈弹出16位数字,把它放入指令计数器,实现从当前代码段的过程返回 远返回是从堆栈返回32位数字,并且放入IP和CS,实现从过程返回到任何存储单元 例11 参见第182页6.16 CALL指令 把程序流程传递到被调用的过程 CALL指令不同于转移指令,因为CALL在堆栈内保存返回地址 执行RET指令时,控制返回到紧跟在CALL指令之后的那条指令 近CALL指令:有3字节长,对于8086~80286微处理器,包含±32KB的位移量或距离;80386以上的微处理器按保护模式操作时用32位的位移量,允许±2GB的距离 远CALL指令: 5字节的指令,操作码后面跟随IP和 CS寄存器的值 远CALL指令转移到由第2~5字节指示的指令地址之前,先将IP和CS的内容压入堆栈 保护模式中的远CALL指令,寻址6个字节的内容,前4个字节是EIP,后2个字节是CS 使用寄存器操作数的CALL指令 CALL BX指令就是这样的例子 这条指令将IP的内容压入堆栈,然后转移到当前代码段位于BX寄存器中的偏移地址处 此类指令可以使用一个16位偏移地址,该地址存放在除段寄存器以外的任何16位寄存器中 例12 参见第184页例6.17 使用间接存储器寻址的CALL指令 当程序需要从不同的子程序中选择一个时,用间接存储器寻址的CALL是有实际意义的 例 13 参见第184页例6.18 RET指令 返回指令从堆栈中取出16位数字放回IP 返回指令从堆栈中取出32位数字放入IP和CS 80386~Pentium4微处理器按保护模式操作时, 远 返回从堆栈中取回6个字节;前4个字节包含EIP的新值,后两个字节包含CS的新值 80386~Pentium4微处理器按保护模式操作时, 近 返回从堆栈取回4个字节,并且放入EIP中 例 14 参见第186页的例6.19 中断概述 中断或者是硬件产生的CALL(由硬件信号从外部驱动),或者是软件产生的CALL(由执行指令内部驱动或者是由某些内部事件引发) 中断向量 共有256个不同的中断向量,每个中断向量包含了一个中断服务程序的地址 当微处理器按实模式操作时,中断向量是4个字节的数字,存储在存储器的第一个1024单元 在保护模式中,用中断描述符表替代向量表,每个中断用8个字节的中段描述符说明 中断指令 实模式中,这些指令中的每一个从向量表获取向量,然后调用过程,该过程存放在向量指向的那个位置 保护模式中,这些指令中的每一个从中断描述符表中获取中断描述符。这些描述符指定了中断服务程序的地址 INT 21H 指令为两个字节,第一个字节包含操作码,第二个字节包含向量类型号 * * 第 6章 程序控制指令 用于引导和改变程序的流程 转移指令、调用指令、返回指令、中断指令和机器
您可能关注的文档
- (微机原理与接口技术)chapter01微处理器和计算机入门.ppt
- (UC等自媒体高推荐高流量教程)条文标题公式 三段式标题.doc
- (微机原理与接口技术)chapter02微处理器及其结构.ppt
- (微机原理与接口技术)chapter03寻址方式.ppt
- (微机原理与接口技术)chapter04数据传送指令.ppt
- (微机原理与接口技术)chapter05算术和逻辑运算指令.ppt
- (微机原理与接口技术)chapter08微处理器程序设计.ppt
- (微机原理与接口技术)chapter07微处理器程序设计.pdf
- (微机原理与接口技术)chapter10存储器接口.ppt
- (微机原理与接口技术)chapter12中断.pdf
文档评论(0)