微机原理第7章.ppt

微机原理第7章.ppt

ID:51593449

大小:3.10 MB

页数:181页

时间:2020-03-25

微机原理第7章.ppt_第1页
微机原理第7章.ppt_第2页
微机原理第7章.ppt_第3页
微机原理第7章.ppt_第4页
微机原理第7章.ppt_第5页
资源描述:

《微机原理第7章.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第7章微型计算机汇编语言及汇编程序7.1宏汇编语言的基本语法7.2伪指令7.3宏指令7.4系统功能调用7.5汇编程序的功能及汇编过程7.6汇编语言程序设计习题汇编语言和机器语言相比,使用汇编语言来编写程序的突出优点就是可以使用符号;具体地说,就是可以用助记符来表示指令的操作码和操作数,可以用标号和符号来代替地址、常量和变量。助记符一般都是表示一个操作的英文字母的缩写,很便于识别和记忆。用汇编语言编写的程序叫源程序。源程序不能由机器直接执行,而必须翻译成由机器代码组成的目标程序,这个翻译过程称为汇编。用来把汇编语言编写的程序自动翻

2、译成目的程序的软件叫汇编程序。汇编过程的含义如图7.1所示。图7.1汇编语言的指令和机器语言的指令之间有一一对应的关系。所以,汇编语言是和机器密切相关的,是面向机器的语言,CPU不同的机器有不同的汇编语言。采用汇编语言进行程序设计时,我们可以充分利用机器的硬件功能和结构特点,从而可有效地加快程序的执行速度,减小目标程序所占用的存储空间。因此,与高级语言相比,汇编语言为我们提供了直接控制目标代码的手段,而且可以对输入/输出端口进行控制,实时性能好,执行速度快和节省存储空间等明显优点。所以,汇编语言大量被用于编写计算机系统程序、实时

3、通信程序、实时控制程序等。8086和80286,80386,80486系统的汇编程序完全相同,简称作ASM-86。在此基础上进一步扩展其功能,成为当前广泛使用的8086宏汇编程序,简称作MASM-86。图7.2它与指令语句不同,伪指令语句(又叫命令语句)中的伪指令本身不产生对应的机器目标代码。它仅仅是告诉汇编程序,对后面的指令语句和伪指令语句的操作数应该如何产生机器目标代码。每一条伪指令语句共分4个字段,它的指令格式如图7.2所示。7.1宏汇编语言的基本语法7.1.1伪指令语句格式1.标号名字段这是一个任选字段。标号名后面不能用

4、冒号“:”,这是它与指令语句的突出区别。不同的伪指令,标号名可以是常量名、变量名、过程名、结构名、记录名等。它们可以作为指令语句和伪指令语句的操作数,这时,标号名就表示一个常量或存储器地址。2.伪指令字段这是伪指令语句不可省略的主要成分。伪指令种类很多,如定义数据伪指令DB,DW,DD;段定义伪指令SEGMENT;定义过程伪指令PROC;…。它们是伪指令语句要求汇编程序完成的具体操作命令。3.操作数字段本字段是否需要,需要几个,需要什么样的操作数等都由伪指令字段中伪指令来确定。操作数可以是一个常数(二进制、十进制、十六进制等)、

5、字符串、常量名、变量名、标号、一些专用的符号(如BYTE,FAR,PARA等)。4.注释字段这是一个任选字段,它必须以分号为开始,它的作用与指令语句的注释字段相同。7.1.2常数、变量和标号常数、变量和标号是汇编语言能识别的数据项,它是指令和伪指令语句中操作数的基本组成部分。一个数据项包含有它的数值和属性两部分,这两部分对一条语句汇编成机器目标代码都有直接关系。1.常数常数是没有任何属性的纯数值。在汇编期间,它的值已能完全确定,且在程序运行中,它也不会发生变化。它可以有以下几种类型:(1)二进制数:以字母B结尾的,由0和1组成的

6、数字序列,如01011010B。(2)八进制数:以字母O或Q结尾的0~7数字序列,如723Q,35O。(3)十进制数:0~9数字序列,可以用字母D结尾,也可以没有结尾字母,如129,129D。(4)十六进制数:以字母H结尾,由数字0~9和字母A~F(或a~f)组成的序列,如3A5BH,0FH。为了区别由A~F组成的是一个十六进制数还是一个标识符,凡以字母A~F为起始的一个十六进制数,必须在前面冠以数字“0”,否则汇编程序认作标识符。(5)实数:它由整数、小数和指数3部分组成,这是计算机中的浮点表示法。实数一般用十进制数形式给出,

7、实数的格式如下:±整数部分小数部分E±指数部分其中,整数和小数部分形成这个数的值,称作尾数,它可以是带符号的数。指数部分由指数标识符E开始,它表示了值的大小,如5.213E-4。(6)字符串常数:用引号括起来的一个或多个字符。这些字符以ASCII码形式存储在内存中。如‵AB′,在内存中就是41H,42H。在程序中,常数主要出现在:(1)指令语句中源操作数中作立即数,它应与目的操作数的位数相一致,可以是8位或16位,例如:MOVAX,0A5F1H(2)在指令语句的基址加变址的寻址方式中作位移量,例如:MOVBX,[SI+32H]

8、(3)在数据定义伪指令中,例如:DB12H;定义一个字节数据DW1234H;定义一个字数据DD12345678H;定义一个双字数据DB′ABCD′;定义4个字节的字符串数据2.变量变量是内存中一个数据区的名字,代表存放在某些存储单元的数据,这些数据在程序运行期间

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

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

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