-第5章 汇编语言程序设计.ppt

-第5章 汇编语言程序设计.ppt

ID:51588748

大小:890.50 KB

页数:90页

时间:2020-03-24

-第5章 汇编语言程序设计.ppt_第1页
-第5章 汇编语言程序设计.ppt_第2页
-第5章 汇编语言程序设计.ppt_第3页
-第5章 汇编语言程序设计.ppt_第4页
-第5章 汇编语言程序设计.ppt_第5页
资源描述:

《-第5章 汇编语言程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第5章汇编语言程序设计内容提要:本章介绍了汇编语言基本语法,汇编语言程序的实现,汇编语言程序设计方法及应用,并通过程序设计举例说明了顺序结构程序设计;分支结构程序设计;循环结构程序设计;子程序设计以及宏的定义和调用。学习要求:熟练掌握8086/8088微处理器汇编语言程序设计的方法及应返回主目录通过前面的学习我们知道,计算机之所以能够自动地工作,是因为计算机能按照程序的安排执行相应的指令,编写这些程序的语言就称为计算机语言。计算机语言按照人类的语言习惯通常分为高级语言、中级语言和低级语言,与人类自然语言相差较大、接近于机器描述的计算机语言称为低级语言,低级

2、语言包括机器语言和汇编语言。本章主要介绍和计算机硬件系统紧密相关的汇编语言程序设计。本章目录5.1汇编语言基础5.2汇编语言程序结构5.3汇编语言程序设计小结第5章汇编语言程序设计基础在计算机内部,控制计算机工作的指令都以二进制代码的形式出现,这样的指令称为机器指令,用机器指令编写的程序称为机器语言程序。可见,机器语言是二进制编码表示的命令和数据的总称,是面向机器的,能够被计算机直接识别和执行的。然而,二进制表述的机器语言既不直观,又不便于记忆、阅读和书写,为了程序设计的方便,产生了汇编语言。汇编语言是一种符号语言,用与操作功能含义相应的缩写英文字符组成的

3、助记符号作为编程使用的语言,来表示二进制格式的指令代码和变量地址。计算机在运行汇编语言程序之前要先将其转换成机器代码,才能由计算机识别执行,转换的过程是由编译程序来完成。5.1汇编语言基础5.1.1汇编语言概述在汇编语言中,符号指令和机器指令通常是一一对应的,汇编语言与机器语言相比编程简单、便于交流,并且保留了机器语言与硬件系统联系密切的特点,所以,汇编语言仍然是面向机器的语言,在使用汇编语言时必须对相应的计算机硬件有一定了解,CPU不同的计算机,汇编语言也不同。由于机器不能直接执行汇编语言源程序,所以必须先将源程序转换成二进制代码表示的机器指令,完成这一

4、功能的软件就是汇编程序,在IBM-PC微型计算机系统中,目前广泛使用的汇编程序是由Microsoft公司开发的宏汇编程序—MASM。•用汇编语言设计的程序能够充分利用硬件系统的功能和结构特性,有效地加快程序的执行速度;直接对寄存器、存储器和I/O端口进行操作,减少程序占用的存储空间。•但是,由于汇编语言对于数学模型中的关系表示不够直观,使得在一些复杂计算程序设计中,设计汇编语言程序要花费较多的时间,编程上有一定难度。•另外,由于是面向机器的语言,所以要求程序设计人员必须具备一定的计算机硬件知识。同其它语言一样,汇编语言的基本组成单位是语句,在汇编语言源程序

5、中每个语句由四项组成.其格式如下:[标号:]操作项[操作数][;注释]其中,操作项是必不可少的。5.1.2汇编语言语句格式标号是一个可选字段,由字母(A~Z、a~z)数字(0~9)及专用字符(?、.、@、-、$)组成的字符串,最长不超过31个字符,要求必须以字母开头,用冒号与操作项分开。标号实质上是指令的符号地址,但并不是所有指令语句都有标号。如果指令语句前有标号,则程序的其他部分可以引用这个标号,如程序中的JMP指令和CALL指令的转移目标由标号指定,即JMP指令和CALL指令是根据标号来确定它们之后要执行的语句,可见标号其实是指定了具体的指令地址,所以

6、相同的标号定义在同一程序中只允许出现一次。1、标号字段标号有三种属性:段、偏移量和类型。标号的段属性是定义标号的程序段的段基值;标号的偏移量属性是表示该标号在段内的偏移地址,偏移量是一个16位的无符号数;标号的类型属性有NEAR和FAR两种,NEAR只能提供同一段内的指令调用,FAR可以被其他段指令调用。操作项是汇编语言程序中不可省略的主要部分,用指令助记符或定义符表示的机器指令操作码,如:MOV、ADD等,它告诉CPU要完成什么具体操作。有的操作项带有前缀,指令系统中允许与指令助记符一起出现的前缀是前缀指令和段超越前缀。2、操作项字段操作数紧跟在操作项之

7、后,具体指明操作项的指令对哪些变量或常数进行操作,它可以包含两个操作数、一个操作数或无操作数。如:MOV、ADD等指令要求有两个操作数,它们之间用逗号隔开;NEG、INC等指令只需要一个操作数;而CLC等指令就不需要操作数,因为操作数已隐含在指令助记符中了。操作数可以是数据,也可以是存放数据的地址,所以可以作为操作数的有:常量、变量、表达式、寄存器和标号。2、操作数字段⑵变量变量是指存放在存储器或寄存器中的数据,这些数据随着程序运行可能随时会发生变化。寄存器有固定的名字,如:AL、AX等;存储器常以其地址或地址表达式的形式出现。应该指出,变量也有段、偏移量

8、和类型三个属性。常量是指令中的固定值,它们在程序运行期间不发生变化

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。