第4章汇编语言程序设计知识AYH.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章 汇编语言程序设计及知识 §4.1 汇编语言程序设计基础 §4.2 程序设计 4.1.1、机器语言与汇编语言 机器语言 7409 240AH 汇编语言 START:MOV A,#09H ADD A, #0AH 4.1.2、汇编语言的格式 用89C51汇编语言编写的源程序行(一条语句)包括四个部分,也叫四个字段: 〔标号:〕〔操作码〕〔操作数〕;〔注释〕 每个字段之间要用分隔符分隔,而每个字段内部不能使用分隔符。可以用作分隔符的符号:空格“ ”、冒号“:”、、逗号“,”、分号“;”等。 例:LOOP:MOV A,#00H;立即数00H→A 标号 标号是用户定义的符号地址。 一条指令的标号是该条指令的符号名字,标号的值是汇编这条指令时指令的地址。 标号由以英文字母开始的1~8个字母或数字组成,以冒号“:”结尾。 标号可以由赋值伪指令赋值,如果没有赋值,汇编程序把存放该指令目标码第一字节的存储单元的地址赋给该标号,所以,标号又叫指令标号。 操作码 操作码是必不可少的。 它用一组字母符号表示指令的操作码。在89C51中,由89C51的指令助记符组成。 操作数 汇编语言指令可能要求或不要求操作数,所以这一字段可能有也可能没有。 若有两个操作数,操作数之间用逗号“,”分开。 操作数包括的内容有: (1)工作寄存器:由PSW.3和PSW.4规定的当前工作寄存器区中的R0~R7。 (2)特殊功能寄存器:21个SFR的名字。 (3)标号名:赋值标号—由汇编指令EQU等赋值的标号;指令标号—指令标号指示的指令的第一字节地址是该标号的值。 (4)常数:可用二进制(B)、十进制、十六进制(H),若常数以字符开头,前面加0。 (5)$:用来表示程序计数器的当前值。 (6)表达式:汇编时,计算出表达式的值填入目标码。 注释 注释部分不是汇编语言的功能部分,只是用语增加程序的可读性。 良好的注释是汇编语言程序编写中的重要组成部分。 §4.1.3 伪指令 伪指令不是真正的指令,无对应的机器码,在汇编时不产生目标程序,只是用来对汇编过程进行某种控制。 ORG 汇编起始命令 格式:ORG 16位地址 功能:规定该伪指令后面程序的汇编地址,即汇编后生成目标程序存放的起始地址。例如: ORG 2000H START:MOV A,#64H ┇ 规定了START的地址是2000H,又规定了汇编后的第一条指令码从2000H开始存放。 END 汇编结束指令 格式:END 功能:通知汇编程序结束汇编。在END之后所有的汇编指令均不予以处理。 EQU 赋值命令 格式:字符名称 EQU 项(数或汇编符号) 功能:把“项”赋给“字符名称”。 注意:字符名称不等于标号(其后没有冒号);其中的项,可以是数,也可以是汇编符号。EQU赋值过的符号名可以用作数据、代码地址、位地址或一个立即数。可以是8位的,也可以是16位的。 例如: EQU 赋值命令 例1: AA EQU R1 MOV A,AA;AA代表工作寄存器R1 例2: A10 EQU 10 DELY EQU 07EBH MOV A,A10;A10作为片内的一个直接地址 LCALL DELY;DELY作为一个16位子程序的入口地址 DATA 数据地址赋值命令 格式:字符名称 DATA 表达式 功能:与EQU类似,但有以下差别: 1、EQU定义的字符名必须先定义后使用,而DATA定义的字符名可以后定义先使用。 2、用EQU伪指令可以把一个汇编符号赋给一个名字,而DATA只能把数据赋给字符名。 3、DATA语句可以把一个表达式的值赋给字符名称,其中的表达式应是可求值的。DATA伪指令在程序中用来定义数据地址 DB 定义字节命令 格式:DB(项或项表) 功能:通知汇编程序从当前ROM地址开始,保留一个字或字节串的存储单元,并存入DB后的数据。 注意:项或项表可以是一个字节,用逗号隔开的字节串或括在单引号中的ASCII字符串。 例如: DB 定义字节命令 ORG 2000H DB 0A3H LIST:DB 26H,03H STR:DB ‘ABC’ ┇ 经汇编后(2000H)=A3H, (2001H)=26H,

文档评论(0)

书房 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档