第四讲 汇编语言程序.pptVIP

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

第四讲 汇编语言程序 汇编语言程序设计过程 顺序结构程序设计 分支结构程序设计 循环结构程序设计 子程序设计 常用伪指令 数据定义伪指令 数据定义伪指令可以是:DB、DW、DD、DQ、DT。 DB:用来定义字节类型的变量,DB定义的每个操作数都占用1个字节单元。 DW:用来定义字类型的变量,DW定义的每个操作数都占用1个字单元。 DD:用来定义双字类型的变量,DD定义的每个操作数都占用2个字单元。 DQ:用来定义八个字节类型的变量,DQ定义的每个操作数都占用8个字节单元。 DT:用来定义十个字节类型的变量,DT定义的每个操作数都占用10个字节单元。 例如:定义数值常数和字符串常数 DATA SEGMENT CON1 DB 56H,89H,0A3H,0BCH CON2 DW 7865H,0B34DH CON3 DD 897632BDH CON4 DB ‘ please input: ’ DATA ENDS 2.3.2 符号定义伪指令 符号定义伪指令可用来给汇编语言程序中的常数、表达式、变量、标号、指令助记符或寄存器等重新定义一个名字,或者改变变量、标号的属性,从而给程序设计带来更大的灵活性。符号定义伪指令主要有EQU、=、LABEL。 1.定义符号常数 (1)EQU 格式:符号常数 EQU 表达式 (2)= 格式:符号常数 = 表达式 说明:EQU 定义的符号常数不能重复定义,而用“=”定义的符号常数可以重复定义。 例如: A EQU 20 B EQU A*2+5 COUNT EQU ($-BUFA)/2 例如: A=20 A=A*2+5 2.定义变量或标号 (1)定义变量 格式:变量 LABEL 变量类型 说明:格式中的变量类型常用BYTE、WORD、DWORD,分别表示字节类型、字类型、双字类型。 (2)定义标号 格式:标号 LABEL 标号类型 说明:格式中的标号类型使用NEAR、FAR,分别表示近类型、远类型。 功能:给跟在LABEL伪指令后面的指令存储单元定义一个标号,该标号的类型属性在格式中指定,标号的段地址和偏移地址属性与指令存储单元的段地址和偏移地址相同。 2.3.3 段定义伪指令 为了实现程序的分段设计,宏汇编程序MASM提供了按段组织程序的一组伪指令,它们是SEGMENT … ENDS、ASSUME、END等。 1. SEGMENT和ENDS、 段定义伪指令的格式为: 段名 SEGMENT [定位属性] [组合属性] [‘类别’] ┇ 段名 ENDS 功能:定义程序中的一个逻辑段。 2.ASSUME 格式:ASSUME? 段寄存器:段名,… 功能:用来设定段寄存器与逻辑段之间的对应关系。程序中使用ASSUME后,宏汇编程序就将与段寄存器对应的逻辑段作为当前段。ASSUME一般出现在代码段的开始。 3.END伪指令 格式:END [标号] 功能:结束汇编。 2.3.3其他常用的伪指令 1.NAME伪指令 格式:NAME 程序名 功能:将程序名作为源程序目标模块的名字。 NAME伪指令通常放在源程序的开始,在输出汇编语言源程序的列表文件中,在每一页的开头输出该程序名。若源程序中省略NAME伪指令,则汇编程序将源文件名作为目标模块的名字。 2.TITLE伪指令 格式:TITLE 标题名 功能:同NAME伪指令的功能。将标题名作为源程序目标模块的名字。标题名最多60个字符,但汇编程序只将前6个字符作为目标模块名。 3.ORG伪指令 格式:ORG 表达式 功能: 将数据或指令代码从ORG伪指令中指定的偏移地址处开始存放。表达式的值表示偏移地址,取值范围为0~0FFFFH或0~65535。当程序中不使用ORG伪指令时,数据或指令代码从段的开始位置连续存放。 DATA SEGMENT BUFA DW 367BH,2845H,0A78H, 9DE3H,0F6BH,6532H COUNT EQU ($-BUFA)/2 ORG 100H BUFB DW COUNT DUP (?) DATA ENDS 4.EVEN伪指令 格式:EVEN 功能:将数据或指令代码从偶地址处开始存放。 DATA SEGMENT TAB1 DB 48H,0A2H,98H,0BEH,87H EVEN TAB2 DW 0B7639H,19F6H DATA ENDS 2.4 I/O功能调用 DOS操作系统和ROM BIOS分别提供了一系列

文档评论(0)

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

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

1亿VIP精品文档

相关文档