计算机技术--第12章.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文档。上传文档
查看更多
计算机技术--第12章

第12章 汇编语言程序设计 12.1汇编语言概述 12.1.1汇编语言和汇编程序的基本概念 汇编语言是一种介于机器语言和高级语言之间的计算机编程语言,它既不象机器语言那样直接使用计算机所认识和理解的二进制代码来构成,也不像高级语言那样独立于机器之外直接面向用户。 用汇编语言编写的程序叫汇编语言程序,汇编语言的源代码是用很像英文缩写的助记符编写而成。 汇编程序:实际上是一种翻译程序,与高级语言的编泽程序所完成的任务相类似。它是用汇编程序去读句法上已经程式化的用汇编语言编写的源代码的文本文件,将用汇编语言编写的源代码转换成机器代码,直接由微处理机执行。 汇编程序的主要功能是: ①检查源程序。 ②检测出源程序中的语法错误,并给出出错的信息。 ②产生源程序的目标程序,并可给出列表文件(同时列出汇编语言和机器语言的文件)称为LST文件。 ④将宏指令展开。 汇编语言编写程序的优点:是一种面向机器的语言,用助记符代替了机器语言指令的二进制代码;用汇编语言编写的源程序与其经过汇编程序汇编之后所产生的机器语言程序之间具有一一对应的关系。当用汇编语言编写程序时,允许程序设计人员直接使用存储器、寄存器、I/O端口和CPU的其他许多硬件系统特性(如中断系统、DMA系统等),可以直接对每一位、字节、字、寄存器、存储单元、I/O端口进行处理,同时也能直接使用微处理机的指令系统及其所提供的各种寻址方式,编制出高质量的程序。所以用汇编语言编写的程序要比用与它等效的高级语言程序生成的目的代码精简得多,占用的内存储器空间少,执行的速度也快。 用汇编语言编写程序,最主要的缺点是 ①所编写的程序与所要解决的问题的数学模型之间的关系不直观,使得编制程序的难度加大,而且编写出的程序可读性也差,导致出错的可能性也增大,因而程序设计和调试的时间也比较长。另外, ②不同系列的微处理机或CPU系列因具有不同的指令系统,所以其汇编语言也不相同,因此汇编语言程序在不同机器间的可移植性较差。 12.1.2 汇编语言程序设计的基本步骤 1.分析问题 2.确定算法 3.设计流程 4.根据流程图编写程序 采用汇编语言编写程序应注意以下几个问题: (1)必须详细了解CPU的编程模型、指令系统、寻址方式及相关伪指令; (2)必须进行存储空间和工作单元的合理分配; (3)多次使用的程序段可采用子程序或宏指令; (4)尽可能用标号或变量来代替绝对地址和常数。 5.程序的检验 6.编写说明文件 一个完整的软件应有相应的说明文件,这不仅便于用户使用,也便于对程序的维护和扩充。说明文件主要应包括程序的功能和使用方法,程序的基本结构和所采用的主要算法以及程序必要说明和注意事项等。 12.2 汇编语言源程序结构 语句是构成汇编程序的最基本的单位。 汇编语言语句有三种:指令语句、伪指令语句和宏指令语句(或称宏调用语句)。 汇编语言语句是由4部分(又称4个字段)组成:名字字段(name field)、操作字段(operation field)、操作数字段(operand field)和注释字段(comment field). 格式如下: [标号:]操作符 [操作数] [;注释] 1.标号 名字必须以字母开始,至多包含31个字符,这些字符是:A到z共26个英文字母;从0到9共10个阿拉偏数字;4个专用符号;-、?、@、.。包含一个圆点“.”,这个圆点必须是这个名字的第一个字符 . 在命名时必须特别小心,千万不可与汇编程序的保留字或指令同名。如果包含一个圆点“.”,这个圆点必须是这个名字的第一个字符。 标号:标号在代码段中定义,后面跟着冒号:,它也可以用LABEL或EQU伪操作来定义。此外,它还可以作为过程名定义。 变量:变量在数据段或附加数据段中定义,后面不跟冒号。它也可以用LABEL或EQU伪操作来定义。变量经常在操作数字段出现。 2.操作符 操作符可以是指令、伪指令或宏指令的助记符。对于指令,汇编程序将其翻译为机器语言指令。对于伪指令,汇编程序将根据其所要求的功能进行处理。对于宏指令,则将根据其定义展开。 3.操作数项 操作数项由一个或多个表达式组成,多个操作数项之间一般用逗号分开。 对于伪操作或宏指令,则给出它们所要求的参数。 操作数项可以是常数、寄存器、标号、变量或由表达式组成。 4.注释字段 注释项用来说明一段程序、一条或几条指令的功能。对于汇编语言程序来说,注释项的作用是很明显的,它可以使程序容易被读懂,因此汇编语言程序必须写好注释。注释应该写出本条(或本段)指令在程序中的功能和作用,而不应该只写指令的动作。 表达式是常数、寄存器、标号、变量与一些操作符组合的序列,

文档评论(0)

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

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

1亿VIP精品文档

相关文档