武汉大学《微机原理与接口技术》课件-第4章宏汇编语言程序设计.ppt

武汉大学《微机原理与接口技术》课件-第4章宏汇编语言程序设计.ppt

  1. 1、本文档共92页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
例1 display PROC 、、 、、 C3H 、、 RET ;NEAR 属性的过程对应段内返回 display ENDP 例2 display PROC FAR 、、 、、 CBH 、、 RET ;FAR属性的过程对应段间返回 display ENDP 例3:调用程序和子程序在同一代码段中。 MAIN PROC FAR : CALL SUBR1 : RET MAIN ENDP SUBR1 PROC NEAR : RET SUBR1 ENDP DOS把主程序看作一个FAR类型子程加以调用,故应把主程序定义为FAR类型。 例4:调用程序和子程序不在同一代码段中。 SEGX SEGMENT : SUBT PROC FAR : RET SUBT ENDP : CALL SUBT SEGX ENDS SEGY SEGMENT : CALL SUBT : SEGY ENDS 4.3.8LABEL 伪指令 LABEL伪指令给已定义的变量或标号取另一个名字(别名),并可重新定义它的类型属性,使同一变量或标号在不同地方被引用时,可采用不同的名字,具有不同的类型属性,但它们具有相同的地址属性。 格式:名称 LABEL 类型属性 例: DATB LABEL BYTE; DATB为DATW的别名 DATW DW 3031H,3233H; MOV AL,DATB[0]; (AL)=31H MOV BX,DATW[1]; (BX)=3330H 例: STACK SEGMENT STACK ‘STACK’ DW 100 DUP(?); 堆栈中经常使用LABEL。 TOP LABEL WORD; TOP为栈底名,类型为字。 STACK ENDS;如用指令MOV SP , OFFSET TOP 4.4 DOS系统功能调用和BIOS中断调用 4.4.1 DOS功能调用 DOS是PC/XT的操作系统,负责管理系统的所有资源,DOS中包括了许多可供用户调用的子程序。 用户调用DOS功能的途径: * 在DOS环境下,键入DOS命令; * 通过用户程序调用DOS和BIOS中的服务程序。 1、DOS功能调用概述 利用软中断指令 INT n 调用相应的中断服务程序。 n= 0 ~ 4 ;8088/8086CPU占用 n=5~1FH; BIOS功能调用 n=20~3FH; DOS功能调用 其中INT 21是一个具有100多个子功能的中断服务程序,分别用于设备管理,目录管理,文件管理及其它功能。 2、 DOS功能调用方法 1) DOS软中断( INT 20H~ INT 27H )指令 参见教材 P153 表4-4 表4-4 DOS软中断 软中断 功能 入口参数 出口参数 INT 20H 程序正常退出 ? ? INT 21H 系统功能调用 AH=功能号 功能调用相应的入口参数 功能调用相应的出口参数 INT 22H 结束退出 ? ? INT 23H CTRL+BREAK退出 ? ? INT 24H 出错退出 ? ? INT 25H 读盘 CX=读出扇区数 DX=起始逻辑扇区 DS:BX=缓冲区地址 AL=盘号 CF=1出错 INT 26H 写盘 CX=写扇区数 DX=起始逻辑扇区 DS:BX=缓冲区地址 AL=盘号 CF=1出错 INT 27H 驻留退出 ? ? INT 28H~INT 2FH

您可能关注的文档

文档评论(0)

卖报的小行家 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档