第3章汇编语言程序设计精选文档.ppt
《第3章汇编语言程序设计精选文档.ppt》由会员分享,可在线阅读,更多相关《第3章汇编语言程序设计精选文档.ppt(70页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第3章汇编语言程序设计本讲稿第一页,共七十页3.1 汇编语言基本概念3.1.1 程序设计语言3.1.2 汇编语言的语句结构3.1.3 伪指令返回本章首页本讲稿第二页,共七十页3.1.1 程序设计语言按照语言的结构及其功能可以分为三种:按照语言的结构及其功能可以分为三种:1机机器器语语言言:机机器器语语言言是是用用二二进进制制代代码码0和和1表表示示指指令和数据的最原始的程序设计语言。令和数据的最原始的程序设计语言。2汇汇编编语语言言:在在汇汇编编语语言言中中,指指令令用用助助记记符符表表示示,地地址址、操操作作数数可可用用标标号号、符符号号地地址址及及字字符符等等形形式式来描述。来描述。3高高
2、级级语语言言:高高级级语语言言是是接接近近于于人人的的自自然然语语言言,面面向向过程而独立于机器的通用语言。过程而独立于机器的通用语言。返回本节本讲稿第三页,共七十页 汇编语言源程序:用汇编语言编写的程序称为汇编语言源程序,简称源程序。计算机不能直接识别和执行源程序。汇编(过程):将汇编语言源程序翻译成机器码目标程序的过程,称为汇编过程,或简称为汇编。汇编程序:它是计算机的系统软件之一,用于将汇编语言源程序翻译成目标程序。本讲稿第四页,共七十页3.1.2 汇编语言的语句结构1汇编语言的指令类型 MCS-51单片机汇编语言,包含两类不同性质的指令。(1)基本指令:即指令系统中的指令。它们都是机器
3、能够执行的指令,每一条指令都有对应的机器码。(2)伪指令:汇编时用于控制汇编的指令。它们都是机器不执行的指令,无机器码。本讲稿第五页,共七十页汇编语言及汇编过程 汇编程序功能汇编程序功能 源程序源程序 (汇编指令程序)(汇编指令程序)汇编汇编 目标程序目标程序(机器码指令程序)(机器码指令程序)汇编指令与机器码指令有一一对应的关系。汇编指令与机器码指令有一一对应的关系。汇编程序是一种翻译程序,将源程序翻译成目标序。汇编程序是一种翻译程序,将源程序翻译成目标序。本讲稿第六页,共七十页 汇编程序的汇编过程汇编程序的汇编过程 汇编有两种方法:手工汇编、机器汇编。汇编有两种方法:手工汇编、机器汇编。1
4、 1、手工汇编:、手工汇编:第一次汇编:第一次汇编:确定地址,翻译成各条机器码,字符标号原样写确定地址,翻译成各条机器码,字符标号原样写出;出;第二次汇编:第二次汇编:标号代真,将字符标号用所计算出的具体地址值标号代真,将字符标号用所计算出的具体地址值或偏移量代换。或偏移量代换。本讲稿第七页,共七十页源程序源程序目标程序目标程序地址地址 ORG 1000HORG 1000H START START:MOV R0MOV R0,2FH 2FH MOV R2 MOV R2,#00H#00H MOV A MOV A,R0 R0 MOV R3 MOV R3,A A INC R3 INC R3 SJMP
5、SJMP NEXT NEXT LOOP LOOP:INC R0 INC R0 CJNE R0 CJNE R0,#44H#44H,NEXTNEXT INC R2 INC R2 NEXT NEXT:DJNZ R3DJNZ R3,LOOPLOOP MOV MOV 2AH2AH,R2 R2 SJMP$SJMP$END END第一次汇编第一次汇编第二次汇编第二次汇编1000A82F10027A001004E61005FB10060B100780NEXT100908100AB644NEXT100D0A100EDBLOOP10108A2A101280FEA82F7A00E6FB0B800508B644010
6、ADBF98A2A80FE本讲稿第八页,共七十页 两次扫描过程。两次扫描过程。第一次扫描:第一次扫描:检查语法错误,确定符号名字;检查语法错误,确定符号名字;建立使用的全部符号名字表;建立使用的全部符号名字表;每一符号名字后跟一对应值(地址或每一符号名字后跟一对应值(地址或数)。数)。第二次扫描:第二次扫描:是在第一次扫描基础上,将符号地址转是在第一次扫描基础上,将符号地址转换成换成地址(代真);地址(代真);利用操作码表将助记符转换成相应的目利用操作码表将助记符转换成相应的目标码。标码。2、机器汇编、机器汇编本讲稿第九页,共七十页2汇编语言的语句格式 汇编语言源程序是由汇编语句(即指令)组成
7、的。汇编语言一般由四部分组成。其典型的汇编语句格式如下:标号:操作码操作数;注释 START:MOV A,30H ;A(30H)各段之间必须用定界符隔开。返回本节本讲稿第十页,共七十页1、标号段 标号是用户给指令语句设定的一个符标号是用户给指令语句设定的一个符号,在汇编产生目标程序时,汇编程序号,在汇编产生目标程序时,汇编程序将把标号所指的指令语句目标码首地址将把标号所指的指令语句目标码首地址值赋给该标号。于是,值赋给该标号。于是,标号便可作为地标号便可作为地址或数据在其它语句的操作数段中引用。址或数据在其它语句的操作数段中引用。标号是以标号是以字母开头字母开头的的18个字母或数字个字母或数字
8、串组成,注意,不能使用串组成,注意,不能使用指令助记符指令助记符、伪指令伪指令或或寄存器名寄存器名来作标号,标号不能来作标号,标号不能重复定义。重复定义。本讲稿第十一页,共七十页2、操作码段 操作码指出指令操作的性质或控制要求,该段可以是指令助记符或伪指令助记符。3、操作数段 操作数是指令操作码操作的对象,它是参加操作的数或是操作数据所在的地址。操作数有三种类型的信息:立即数、寄存器和地址。本讲稿第十二页,共七十页信息表示方法:二进制(B)十六进制(H)十进制(D或无字尾)PC现行值($)ASCII码()指令标号等。为区分数字和字符,凡数字以09开头。如:MOV A,#0A4H4、注释段 为了
9、便于阅读和交流,对程序进行注释。汇编时对注释部分不予理会。本讲稿第十三页,共七十页3.1.3 伪指令1ORG:汇编起始地址 用来说明程序段或数据存储区的起始地址。格式为:ORG 十六位地址例如程序:ORG 1000H START:MOV A,#20H MOV B,#30H 说明程序从1000H开始存放。在一个源程序中,可以多次使用ORG指令。但不能重叠。本讲稿第十四页,共七十页 2EQU:赋值(或等值指令)给变量标号赋予一个确定的数值。其值在整个程序中不改变,且可多次使用。格式为:标号(字符名称)EQU 数或汇编符号例如,COUNT EQU 16H ;COUNT=16H ADDR EQU 30
10、00H ;ADDR=3000H MOV A,COUNT ;A=16H COUNT赋值后,当作直接地址使用。ADDR被定义为十六位地址。注意:必须先赋值,后使用。返回本节本讲稿第十五页,共七十页 3DB:定义字节数据(Define Byte)把把数数据据以以字字节节数数的的形形式式存存放放在在存存储储器器单单元元中中。常常用用于于定定义义数数据据常数表。常数表。格式如下格式如下:标号:标号:DB字节常数表字节常数表例如,例如,ORG2000HTAB:DB14H,26,ADB0AFH,BC汇编结果汇编结果:(2000H)=14H(2001H)=1AH=26(2002H)=41H(2003H)=AF
11、H(2004H)=42H(2005H)=43H本讲稿第十六页,共七十页 4DW:定义字数据(Define Word)按字的形式把数据存放在存储单元中。其中高字节数按字的形式把数据存放在存储单元中。其中高字节数存入低位地址。存入低位地址。格式如下:格式如下:标号:标号:DB字常数表字常数表例如,例如,ORG2000HTAB:DW7423H,00ABH,20汇编结果汇编结果:(2000H)=74H(2001H)=23H(2002H)=00H(2003H)=ABH(2004H)=00H(2005H)=14H 本讲稿第十七页,共七十页 5DS:定义存储区(Define Store)从指定的地址单元开始
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言 程序设计 精选 文档
限制150内