第5章汇编语言程适序设计.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文档。上传文档
查看更多
第5章汇编语言程适序设计

2、寄存器 80X86的寄存器可以作为指令的操作数。 8位 AH AL BH BL CH CL DH DL 16位 AX BX CX DX BP SP SI DI CS DS SS ES 32位 EAX EBX ECX EDX EBP ESP ESI EDI DS ES SS CS FS GS 3、变量 变量是内存中的数据区,在程序中作为存储器操作数来 使用。在除代码段以外的其它段中定义。 变量主要有三种属性: ①段 值—变量定义所在段的段地址 ②偏移量—变量单元地址与段起始地址之间的位移量。 ③类 型—主要有字节、字和双字三种。 TYPE运算符用来取变量或标号的类型值 存储器单元类型 对应值 DB(字节) 1 DW(字) 2 DD(双字) 4 DQ(四字) 8 DT(10字节) 10 NEAR -1 FAR -2 LENTH运算符返回DUP定义的数据占据的元素个数,其它返回1。 SIZE运算符返回DUP定义的数据占据的字节数,其它返回TYPE值。 5.1.2汇编语言源程序到可执行文件的处理过程 5.1.3 汇编语言程序与DOS操作系统的接口 程序段前缀占256B的存储单元,其中的信息是DOS装载可执行文件时自动生成的。DOS通过PSP向用户程序提供程序正常结束或者异常结束时返回DOS的途径。DOS是通过PSP管理用户程序的。 在PSP的开始处有一条INT 20H软中断指令,用于返回到DOS管理的状态。 PSP是程序运行不可分割的部分,内存中的每一个执行程序都有相应的PSP。 当程序结束返回DOS,程序以及相应的PSP所占据的内存空间同时释放,交还给DOS。 汇编语言程序返回DOS状态的方法 1)标准方法 EXP1 PROC FAR START:PUSH DS MOV AX,0 PUSH AX RET EXP1 ENDP 2)非标准方法 MOV AX,4C00H INT 21H 5.2 伪指令语句 在源程序中使用一些约定的符号,这些符号用来告诉汇编程序应如何工作,这就是汇编控制指令,也称伪指令。 伪指令语句包含在源程序中,由汇编程序对源程序进行汇编时解释执行。伪指令语句除了本身可以申请分配一部分存储空间用作数据区和堆栈区外,不产生任何目标代码。在将源程序翻译成目标程序后,伪指令语句就不存在了。 5.2.1 数据定义伪指令 常用的变量定义伪指令有 DB、DW、DD、DQ、DT,分别用来定义字节,单字、双字、四字及十字节类型变量。它们的基本应用格式如下: [变量名] { DB|DW|DD|DQ|DT }〈表达式〉 其中,变量名是可选的,{ }表示其中的伪操作命令必须选用一种,表达式有如下几种应用形式: 1.数值表达式 这种形式定义的变量具有表达式给定的数值初值。 例如:ABC DB 4*10H;变量ABC为字节类型,初值为64 BET DW 1234H;变量BET为字类型,低位地址存放 34H,高位地址存放12H 2.ASCII字符串 字符串必须用单引号括起来。DB伪指令为串中每一 个字符分配一个字节单元,且自左至右按地址递增的顺 序依次存放,字符个数不得超过255个。例如 MSG1 DB msgtest 对于DW伪指令,可以给两个字符组成的字符串分配两个 字节存储单元,而且这两个字符的存储顺序是前一个字符在 高字节,后一个字符在低字节只取前两个字符。每一个数据 项不能多于两个字符,若超过2个字符,只取前两个字符。例 如: MSG2 DW AB,‘123,ef 3.地址表达式 地址表达式的运算结果是一个地址,因此只能用DW或DD来定义。如果用DW定义,则将原变量或标号的偏移地址定义为新变量;如果用DD来定义,则将原变量或标号的偏移地址和段地址分别置入新变量的低位和高位字中。例如: AD1 DD BETA1;变量的初值为BETA1的段地址和偏移地址 5. n DUP 表达式 这种情况用于定义重复变量,DUP(Duplica

文档评论(0)

186****0772 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档