《微机原理2》ppt课件

《微机原理2》ppt课件

ID:40052626

大小:2.91 MB

页数:248页

时间:2019-07-18

《微机原理2》ppt课件_第1页
《微机原理2》ppt课件_第2页
《微机原理2》ppt课件_第3页
《微机原理2》ppt课件_第4页
《微机原理2》ppt课件_第5页
资源描述:

《《微机原理2》ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章汇编语言程序设计4.1汇编语言程序格式4.2伪指令4.3汇编语言源程序结构4.4汇编语言程序的上机过程4.5汇编语言程序设计4.6程序设计举例4.1汇编语言程序格式4.1.1程序结构【例4-1】给出一个完整的汇编语言源程序,该程序的功能是完成两个字节数据相加。DATASEGMENT;段定义开始(DATA段)BUF1DB34H;第1个加数BUF2DB2AH;第2个加数SUMDB?;准备用来存放和数的单元DATAENDS;段定义结束(DATA段)CODESEGMENT;段定义开始(CODE段)ASSUMECS:CODE,DS:DATA;规定DATA、CODE分

2、别为数据段;和代码段START:MOVAX,DATAMOVDS,AX;给数据段寄存器DS赋值MOVAL,BUF1;取第1个加数ADDAL,BUF2;和第2个加数相加MOVSUM,AL;存放结果MOVAH,4CHINT21H;返回DOS状态CODEENDS;段定义结束(CODE段)ENDSTART;整个源程序结束518从上面这个例子可以看出,汇编语言源程序由若干条语句组成,语句分为如下两类。1)指令语句指令语句是由8086/8088CPU提供的指令形成的语句,能完成一定的操作功能,能够翻译成机器代码的语句。2)伪指令语句伪指令语句也叫指示性语句,它只是为汇编程序在

3、翻译汇编语言源程序时提供有关信息,并不翻译成机器代码。例如,程序中的语句:BUF1DB34HBUF2DB2AHSUMDB?以上这些语句都是伪指令语句,其功能是在内存中开辟3个名字分别为BUF1、BUF2、SUM的字节单元,前两个单元的初值分别为34H和2AH,SUM仅指定一个字节单元,不定义确定的初值。实际上,汇编语言源程序中还可出现宏指令语句。宏指令语句就是由若干条指令语句形成的语句体。一条宏指令语句的功能相当于若干条指令语句的功能。4.1.2语句格式指令语句和伪指令语句的格式是类似的,其格式如下:[名字]指令助记符操作数[;注释]其中,带方括号的项可以省略,

4、注释内容以分号(;)引导。1.名字1)名字的标识符名字也就是由用户按一定规则定义的标识符,可由下列符号组成:(1)英文字母(A~Z,a~z);(2)数字(0~9);(3)特殊符号(?、@、_等)。2)名字的定义规则名字的定义要满足如下规则:(1)数字不能作为名字的第一个符号;(2)单独的问号(?)不能作为名字;(3)一个名字的最大有效长度为31位,超过31位的部分计算机不再识别;(4)汇编语言中有特定含义的保留字(如操作码、寄存器名等),不能作为名字使用。为了便于记忆,名字的定义应该做到见名知义,如用BUFFER表示缓冲区、SUM表示累加和等。3)名字的两种主要

5、形式名字有标号和变量两种主要形式。(1)标号在代码段中定义,后面跟着冒号“:”,标号有三种属性:段、偏移及类型。段属性:用于定义标号的程序段起始地址。当程序中引用一个标号时,该标号的段地址则总是在CS寄存器中。偏移属性:标号的偏移地址是从段起始地址到定义标号的位置之间的字节数。为16位无符号数;类型属性:用来指出该标号是在本段内引用还是在其他段中引用的。如在段内引用,则称为NEAR属性,如在段外引用,则称为FAR。(2)变量在数据段、附加数据段或堆栈段中定义,后面不跟冒号。它也可以用LABEL或EQU伪操作来定义。变量经常在操作数字段出现,它也有段、偏移及类型三

6、种属性。段属性:用于定义变量所在段的段起始地址。此值必须在一个段寄存器中(如DS或ES中)。偏移属性:变量的偏移地址是从段的起始地址到定义变量的位置之间的字节数。为16位无符号数。类型属性:变量的类型属性定义该变量所占的字节数。如BYTE(DB,1个字节长)、WORD(DW,2个字节长)、DWORD(DD,4个字节长)、FWORD(DF,6个字节长)、QWORD(DQ,8个字节长)、TBYTE(DT,10个字节长)。在同一个程序中,同样的标号或变量的定义只允许出现一次,否则汇编程序会指示出错。2.指令助记符指令助记符用来指明不同的操作指令。如MOV、ADD等都是

7、指令助记符。3.操作数指令中的操作数是用来指定参与操作的数据。对于一般指令,可以有一个或两个操作数,也可以没有操作数;对于伪指令和宏指令,可以有多个操作数。当操作数多于一个时,操作数之间用逗号分开。操作数可以是常数和表达式。1)常数(1)数值常数。汇编语言中的数值常数可以是二进制、八进制、十进制或十六进制数,书写时用加后缀(二进制用B、八进制用O或Q、十进制用D、十六进制用H)的方式标明即可。对于十进制数可以省掉后缀,对于十六进制数,当以A~F开头时,前面加数字0,以避免和名字混淆,如十六进制数A6H应该写成0A6H,否则容易和名字A6H相混。(2)字符串常数。

8、包含在单引号中的若干个字

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

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

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