微原 第四章5.pptVIP

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微原 第四章5

4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 3.END伪指令 格式: END 表达式 该伪指令标志整个源程序的结束。它告诉汇编程序汇编到此结束。所以,每个单独汇编的源程序的结尾必须有END伪指令。格式中的表达式是该程序运行时的启动地址,它通常是一条可执行语句的标号。 4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 如前面完整结构程序中的最后有: MOV AH,4CH INT 21H CODE ENDS END START …… 总汇编结束 起始地址表达式 4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 与END指令类似的伪指令有: ENDS 用于表示段定义的结束 ENDP 用于表示过程定义的结束 ENDM 用于表示宏指令或重复宏的结束 4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 4.PAGE伪指令 格式: PAGE 参数1,参数2 功能:为汇编程序所产生的列表文件指定每页的行数和每行的字符数. 参数1—每页行数10-255(隐含为66) 参数2—每行字符数60-132(隐含为80) 4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 5.TITLE伪指令 格式: TITLE 正文 功能: 为程序指定一个标题.以后的列表文件会在第一行打印该标题. 4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 6.LABEL伪指令 类型--BYTE、WORD、DWORD、NEAR、FAR 前3种属于变量的类型,后两种是属于标号的类型。 格式: 名称 LABEL 类型 4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 名称--就是语句的名称,为一标识符 若类型是前3种之一,那么该名称就是变量名;当类型为后两种时,该名称就是标号。 变量与标号除具有类型属性外,还具有段地址和偏移地址的属性,名称的这两个属性就是汇编程序汇编到该语句时语句所在的段地址和偏移地址。 4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 如前面定义的堆栈段: STACK SEGMENT STACK DB 256 DUP(?) TOP LABEL WORD STACK ENDS 由于STACK段内的偏移地址开始为0000H,段内留出了256个字节作为堆栈区,因此汇编到TOP处时,偏移地址为0100H。 4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 汇编情况如下图所示: 256B堆栈区 SS:0000H TOP SS:00FFH 0100H TOP具有该单元的段地址和偏移地址属性,但不占用该单元。 …… 4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 由于堆栈指针SP初始化后要指向栈底+1单元,所以上述程序段中有: MOV AX , STACK MOV SS , AX MOV SP , OFFSET TOP …… …… 此段程序完成对 SS、SP的初始化 4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 又由于前面介绍组合类型时,介绍了若某段定义时,其组合类型选为STACK型,系统默认该段为堆栈段。所以,在可执行文件装入内存后,段寄存器SS中已是该段的段地址,堆栈指针SP已指向堆栈底+1单元的偏移地址。因此,在程序设计时,程序段就不用给SS、SP 初始化了。 MOV AX , STACK MOV SS , AX MOV SP , OFFSET TOP 4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 这段程序可以缺省。 即: 4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 LABEL伪指令的功能是定义某变量名或标号的类型的。它虽具有段地址与偏移地址的属性,但它不占内存单元。 例如: BARRAY LABEL BYTE AARRAY DW 100 DUP(?) 4.3 汇编语言程序设计的基本方法 ——8086汇编语言源程序的完整结构及伪指令 上面定义了两种类型的变量,BARRAY为字节类型,AA

文档评论(0)

hello118 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档