[理学]第四章 汇编语言程序设计.pptVIP

  1. 1、本文档共60页,可阅读全部内容。
  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文档。上传文档
查看更多
[理学]第四章 汇编语言程序设计

第4章 汇编语言程序设计 掌握: 汇编语言与汇编程序的概念; 汇编语言程序设计过程; 汇编语言源程序的结构框架; 常用伪指令及基本DOS功能模块的应用。 §4.1 计算机程序设计语言的演变 1、机器语言 直接用机器指令来编制程序的方法称为机器语言程序设计. 缺点:程序通用性差,编程难度大、阅读、查错和修改程序困难。 2、汇编语言 机器语言——二进制数形式的指令和数据。 B0 64 是什么意思?这就是机器语言。既不直观,又不易理解和记忆. MOV AL,64H ;很容易记忆理解,这就是助记符。 助记符——用便于记忆的英语单词表示的指令操作码。它反映了指令的功能和主要特征,便于人们理解和记忆。 标号或符号    采用标号或符号来代替地址、变量、常量,例:    LP1: mov ax,VAR     …   loop LP1 汇编语言——指令助记符,符号地址,标号,伪指令等语言元素的集合以及这些元素使用的规则。 汇编程序 汇编语言程序设计与执行过程 输入汇编语言源程序 源文件 .ASM 汇编(编译) 目标文件 .OBJ 链接 可执行文件 .EXE 调试 最终程序 优点 优点: 直接利用CPU的硬件资源; 直接利用CPU的指令系统和指令系统提供的各种寻址方式; 直接对位、字节或字寄存器或存储单元、I/O端口进行处理; 简洁、节省空间、运行速度快、效率高。 缺点 通用性差; 难度和工作量大; 需要大量的硬件知识、不易推广。 3、高级语言和混合语言 高级语言优点: 通用性好; 易学易用; 高级语言缺点: 目标程序不够紧凑、执行效率不如汇编语言; 不能直接利用硬件资源; 混合语言程序设计 §4.2 汇编语言语法 一、汇编语言源程序的结构 汇编语言源程序通常由一个或几个程序模块组成,每个模块一般由三个逻辑段组成: 数据段——存放数据、变量 堆栈段——堆栈区域 代码段——存放程序指令 源程序的结构 段式结构 至少包含一个代码段,并指明程序的执行起点,一个程序只有一个起点。 语句 语句是汇编语言程序的基本组成单位; 三种基本语句:指令语句、伪指令语句和宏指令语句; 设置返回操作系统的功能。 二、汇编语言的语句与格式 指令语句 伪指令语句 宏指令语句 指令语句 指令语句是能产生目标代码的语句,这些目标代码可供cpu执行,与机器指令一一对应。 格式  [标号:][前缀]指令助记符 操作数1, [;注释] 伪指令语句/指示性语句 伪指令语句是一种不产生目标代码的语句,它仅仅在汇编过程中指示汇编程序如何汇编。如何定义变量、分配存储单元以及指示程序开始和结束等。指示性语句无机器码指令与其相对应。 格式  [名字/变量]伪指令 参数[;注释] 宏指令语句 宏是若干语句组成的程序段,宏指令语句用来定义宏。一旦把某程序段定义成宏,则可用宏名来代替该程序段。 格式  [标号:] 宏指令 参数1,… ;注释 注释——以分号开头,可放在指令后,也可单独一行。 ?注意注解的写法。要写指令(段)在程序中的作用,而不要写指令的操作。 例如:以下为同一条指令写的注释 1)MOV CX,100 ;传送100到CX 2)MOV CX,100 ;循环计数器置初值 显然,第二种写法要比第一种写法要好。 三、汇编语句中的名字 名字包括变量、名标号、常量名、段名宏名等。 1、名字的命名规则: 组成:A-Z(不分大小写), 0-9, ? @ . _ $ 以字母开头,句号(.)只能作为首字符 长度小于31个字符 不能与保留字(指令助记符、伪指令、预定义符号等)重名 2、名字及其属性 标号:指令所在内存单元的符号地址。 有三个属性: 段地址:即标号所在段的段地址; 偏移量:标号所代表存储单元的段内偏移地址; 类 型:NEAR或FAR: NEAR—表示标号所在语句与转移指令/ 调用指令在同一码段内,跳转时 只需改变IP即可。 FAR—标号所在语句与转移指令/调用 指令不在同一代码段内。 ?若没有对类型进行说明,默认为NEAR。 标号通常作为转移指令或CALL指令的转移地址。 变量 变量名--代表存储器中一个数据区的名字。 变量有5个属性: 段属性:变量所代表数据区所在段的段地址 偏移属性:变量所代表的数据区首字节所在段内偏移地址。 类型属性:BYTE、WORD、DWORD、

文档评论(0)

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

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

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档