欢迎来到天天文库
浏览记录
ID:50337589
大小:12.28 MB
页数:30页
时间:2020-03-08
《单片机原理及应用 教学课件 作者 徐泳龙 主编 第04章____汇编语言程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1第四章汇编语言程序设计第一节 汇编语言程序的格式和伪指令第二节 汇编语言源程序汇编第三节 汇编语言源程序设计举例2计算机程序设计语言通常分为机器语言、汇编语言和高级语言等三类。机器语言能被计算机直接识别和执行;汇编语言是一种面向机器的语言;高级语言是一种面向过程和问题并能独立于机器的通用程序设计语言;3第一节汇编语言源程序的格式和伪指令一、汇编语言源程序的格式[标号:]操作码[操作数][;注释]二、伪指令伪指令:不属于指令集中的指令,在汇编时不产生目标代码,不影响程序的执行,仅指明在汇编时执行一些特殊的操作。例如:
2、为程序指定一个存储区,将一些数据、表格常数存放在指定的存储单元,对位地址赋用户名称,说明源程序段或数据块起始地址等。41、定义起始地址伪指令ORG格式:ORG操作数此伪指令的操作数为一个16位的地址,它指出了下面的那条指令的目标代码的第一个字节的程序存储器地址。在一个源程序中,可以多次定义ORG伪指令,但要求规定的地址由小到大安排,各段之间地址不允许重复。例:ORG0000HLJMPMAIN┆ORG1000HMAIN:MOVA,#30HADDA,#20H52、定义赋值伪指令EQU格式:字符名称EQU操作数该伪指令用来
3、给字符名称赋值。在同一个源程序中,任何一个字符名称只能赋值一次。赋值以后,其值在整个源程序中的值是固定的,不可改变。对所赋值的字符名称必须先定义赋值后才能使用。其操作数可以是8位或16位的二进制数,也可以是事先定义的表达式。例:BUFEQU58H;字符名称BUF的值等于58HLOOPEQU2000H;LOOP为2000H,作为16位地址63、定义数据地址赋值伪指令DATA格式:字符名称DATA操作数DATA伪指令的功能和EQU伪指令相似,不同之处是DATA伪指令所定义的字符名称可先使用后定义,也可先定义后使用。在程序
4、中它常用来定义数据地址。74、定义字节数据伪指令DB格式:[标号:]DB数据表该伪指令是用来定义若干字节数据从指定的地址单元开始存放在程序存储器中。数据表是由8位二进制数或由加单引号的字符组成,中间用逗号间隔。DB伪指令确定数据表中第一个数据的单元地址有两种方法,一是由ORG伪指令规定首地址,二是由DB前一条指令的首地址加上该指令的长度。例:ORG1050HTAB:DB44H,24H,00H,81HDB24H,14H,00H,42HDB96H,40H,’C’,’g’用DB定义的数据表的首地址是由TAB标号指出并由OR
5、G伪指令规定的1050H,数据表中的各数据依次存放在从TAB开始的存储单元中。85、定义双字节数据伪指令DW格式:[标号:]DW数据表该伪指令与DB伪指令的不同之处是:DW定义的是双字节数据,而DB定义的是单字节数据,其它用法都相同。在汇编时,每个双字节的高8位数据要排在低地址单元,低8位数据排在高地址单元。96、定义预留空间伪指令DS格式:[标号:]DS操作数该伪指令是用于告诉汇编程序,从指定的地址单元开始(如由标号指定首址),保留由操作数设定的字节数空间作为备用空间。要注意的是DB、DW、DS伪指令只能用于程序存
6、储器,而不能用于数据存储器。例:ORG1200HLOOP3:DS0AH以上伪指令经汇编后从1200H单元开始,保留10个字节的存储单元内容是空的,空间预留出来。107、定义位地址赋值伪指令BIT格式:字符名称BIT位地址该伪指令只能用于有位地址的位(片内RAM和SFR块中),把位地址赋予规定的字符名称,常用于位操作的程序中。例:X0BIT00HX1BIT01H以上伪指令是把片内RAM块20H单元中位地址00H和01H的2个位定义为X0和X1的位名称,这是一种由用户通过伪指令BIT来定义的位名称。定义后,对这2个位的操
7、作,可不用给出位地址而用此位名称代替。118、定义汇编结束伪指令END格式:[标号:]END汇编结束伪指令END是用来告诉汇编程序,此源程序到此结束。在一个程序中,只允许出现一条END伪指令,而且必须安排在源程序的末尾。否则,汇编程序遇到END伪指令就结束,对END伪指令后面的所有语句都不进行汇编。通常在END前不用标号。┆例:MOVA,30HADDA,31HMOV32H,AEND12第二节汇编语言源程序汇编用汇编语言编写的源程序称为汇编语言源程序。通过汇编将其转换成用二进制代码表示的机器语言程序,才能够识别和执行。
8、汇编通常由专门的汇编程序来进行,通过编译后自动得到对应于汇编源程序的机器语言目标程序,这个过程叫机器汇编。另外还可用人工汇编。一、汇编程序的汇编过程二、人工汇编13第三节汇编语言程序设计举例汇编语言程序设计通常的步骤是:1、建立数学模型。根据课题要求,用适当的数学方法来描述和建立数学模型。2、确定算法,绘制程序流程图。算法是程序设计的基本依据。
此文档下载收益归作者所有