C51单片机的软件基础

C51单片机的软件基础

ID:36355043

大小:2.12 MB

页数:82页

时间:2019-05-09

C51单片机的软件基础_第1页
C51单片机的软件基础_第2页
C51单片机的软件基础_第3页
C51单片机的软件基础_第4页
C51单片机的软件基础_第5页
资源描述:

《C51单片机的软件基础》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、*14.180C51单片机的指令系统4.1.1指令格式一条汇编语言指令中最多包含4个字段,其格式为:[标号:]操作码[目的操作数][,源操作数][;注释]例:LOOP:ADDA,#10H;A←(A)+10H根据设计使某台计算机具有的指令的集合便构成了这一计算机的指令系统。80C51系列单片机的指令系统共有111条指令。*21.标号标号是用户定义的一个符号,表示指令或数据的存储单元地址。标号由以英文字母开始的1~8个字母或数字串组成,以冒号“:”结尾。不能用指令助记符、伪指令或寄存器名来做标号。一旦使用了某标号定义一地址单元,在程序的其它地方就不能随意修改这个定

2、义,也不能重复定义。一条指令中的标号代表该指令所存放的第一个字节存储单元的地址,故标号又称为符号地址,在汇编时,把该地址赋值给该标号。*32.操作码操作码是用英文缩写的指令或伪指令功能助记符,用来表示指令的性质或功能。如MOV表示传送操作,ADD表示加法操作。*43.操作数操作数字段给出参与操作的数据或数据所在单元的地址。操作数字段的内容复杂多样,它可能为以下几种情况之一:(1)工作寄存器名(2)特殊功能寄存器名(3)标号名(4)常数(5)$(6)表达式*5(1)工作寄存器名由PSW.3和PSW.4规定的当前工作寄存器区中的R0~R7都可以出现在操作数字段中。

3、(2)特殊功能寄存器名8051中的21个特殊功能寄存器的名字都可以作为操作数使用。(3)标号名可以在操作数字段中引用的标号包括:赋值标号:由汇编伪指令EQU等赋值的标号可以作为操作数。指令标号:指令标号虽未被赋值,但这条指令的第一字节地址就是这个标号的值,在以后指令操作数字段中可以引用。*6(4)常数为了方便用户,汇编语言指令允许以各种数制表示常数,即常数可以写成二进制、十进制或十六进制等形式。(5)$操作数字段中还可以使用一个专门符号“$”,用来表示程序计数器的当前值。这个符号最常出现在转移指令中,如“SJMP$”,该指令表示继续执行该指令,在原地循环。*7

4、(6)表达式汇编程序允许把表达式作为操作数使用。在汇编时,计算出表达式的值,并把该值填入目标码中。例如:MOVA,SUM+l。*84.1.2指令系统的寻址方式寻找操作数所在单元的地址称为寻址;确定操作数所在单元地址的方法称为寻址方式。80C51单片机指令系统中的寻址方式共有七类,分别为立即寻址、寄存器寻址、寄存器间接寻址、直接寻址、变址寻址、相对寻址、位寻址。*91.立即寻址操作数就跟在操作码的后面,可以立即参与指令所规定的操作,不须另去寄存器或存储器等处寻找和取数。例:MOVA,#30H;A←30HMOVDPTR,#2000H;DPTR←2000H书写单片机

5、指令时,为了辨识是立即数,规定在它的前面加一个“#”号作为前缀。*102.寄存器寻址寻址某工作寄存器,自该寄存器读取或存放操作数,以完成指令所规定的操作。例MOVR3,A;R3←(A)ADDA,R2;A←(A)+(R2)可以寻址的寄存器种类有工作寄存器R0~R7、累加器A、寄存器B、数据指针DPTR、位累加器Cy。*113.寄存器间接寻址寄存器中存放的是地址而不是操作数,寻找到该工作寄存器后,以其内容为地址,去寻找所指的RAM单元以读取或存放操作数,称为寄存器间接寻址。例设R1的内容为40H,则MOVA,@R1;A←片内RAM(40H)的内容。图4-1MOVA

6、,@R1指令执行过程A1AH*124.直接寻址直接给出操作数所在的存储单元地址,以供寻址取数或存放的寻址方式称为直接寻址。对于80C51系列单片机,直接寻址可用于访问程序存储器,也可用于访问数据存储器。*135.变址寻址(或称基址加变址寄存器间接寻址)这种寻址方式只用于访问程序存储器,当然只能读取,不能存放,它主要用于查表性质的访问。以程序计数器PC或数据指针DPTR作为基址寄存器,以累加器A作为变址寄存器,把它们的和作为程序存储器的地址,再寻址该单元,读取数据。指令MOVCA,@A+DPTRMOVCA,@A+PC*14例如:MOVCA,@A+DPTR;A←(

7、(A)+(DPTR))设(A)=10H,(DPTR)=2000H,程序存储器的(2010H)=36H,则上面语句的功能是将A的内容与DPTR的内容相加,形成操作数的地址2010H,把该地址中的数据传送到累加器A。即((DPTR)+(A))→A。结果(A)=36H。图4-2MOVCA,@A+DPTR的执行示意图*156.相对寻址在相对转移指令中采用相对寻址方式,在指令的操作数部分给出地址的相对偏移量。相对偏移量为一个带符号的8位二进制数。将相对转移指令所在的地址称为源地址;转移后的地址称为目的地址。目的地址=源地址+转移指令字节数+相对偏移量。*16例SJMP5

8、0H设指令所在PC值为2000H,而指

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

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

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