51单片机指令系统.ppt_第1页
51单片机指令系统.ppt_第2页
51单片机指令系统.ppt_第3页
51单片机指令系统.ppt_第4页
51单片机指令系统.ppt_第5页
已阅读5页,还剩81页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第3章MCS-51单筹码命令系统,3.1 MCS-51单筹码命令系统简介3.2 MCS-51单筹码命令系统3.3汇编语言编程3.4 MCS-51汇编语言实用程序设计(略),结束,3.1 MCS-51单筹码命令系统简介,MCS牙齿3.1.1 MCS-51单筹码命令系统分类1,MCS-51单筹码命令系统命令的字节数可分为(1)单字节命令(49)(2)双字节命令(46)(3)三字节命令,命令的执行时间为(2)命令格式是opcode操作数,3.1.3命令中常用的符号Rn:表示当前作业寄存器R0R7之一。Ri:表示寄存器的间接寻址,通常用作间接寻址的地址指针。其中Ri表示R0和R1寄存器。Direct:

2、表示内部数据内存设备的地址和特殊功能寄存器SFR的地址,对于SFR,可以同时使用物理地址和直接名称。#date:表示8位立即,即8位常量,范围为# 00h # 0ffh,# date163360表示16位立即,即16位常量,范围为# 000h # 0fffh add0,Bit:在内部RAM和SFR中具有位寻址功能SFR的位地址可以直接出现在命令中,可以用SFR的名称和当前存在的数字表示,以便于阅读。例如:如果表示PSW的奇偶校验位,则可能在命令中显示为D0H或PSW.0。表示间接寻址寄存器或主寻址寄存器的前缀符号。$:表示当前指令的地址。3.1.4寻址方法1,立即寻址立即寻址是将操作数直接存储

3、在命令中,作为命令的一部分存储在片段中。即时寻址的数量称为即时数。例如,命令:MOV A,#30H 2,直接寻址直接寻址是将操作数的地址直接存储在命令中。牙齿寻址的操作数只能存储在内部数据内存和特殊功能寄存器中。例如,MOV A、30H、3、寄存器寻址意味着在上述寄存器中存储操作数,在寻址时寄存器隐含在命令的操作码中。例如,MOV A,R0 4,寄存器之间的地址寄存器之间的地址是操作数以寄存器内容为地址的单位,例如,MOV A,R0,5,例如,MOVC A、A DPTR 6,相对寻址相对寻址将节目柜台PC的当前值与指令的第二个字节提供的偏移量相加,以形成发送的目标地址。例如,JZ61H,7,位

4、寻址位寻址是指片内RAM的20H2FH中的128位地址,以及SFR的11位可寻址寄存器的位寻址。例如,位寻址命令MOV C,20H将RAM的位寻址区域20H位地址的内容发送到位累加器C。字节寻址命令:MOV A,20H,将内部RAM上20H个单位的内容发送到累加器A的命令。,3.2 MCS-51单筹码命令系统,3.2.1资料传输类命令1,内部传输命令(16) (1)将数据传输到累加器A的命令(4个),(5个)格式为标签:opcode操作数。注释示例:loop : mov a,# 20h(A) 20H,3.3.2医生命令1,定位医生命令格式:ORG n 2,定向字节医生命令格式:标签:DB X1

5、,X2,Xn牙齿医生命令的功能是将Xi存储在以标签开头的连续单元中。3,2字节医生命令格式定义:标签:DW X1、X2、Xn牙齿医生命令的功能是将Xi存储在以标签开头的连续单元中。4、保留存储医生命令格式:DS n DS n保留N个单位的存储,从标记单位开始。5,指定医生命令格式:字符名称x EQU n牙齿命令的功能是为字符名称指定数据或地址n。6.退出程序集命令格式:END END指示源程序放在程序集语言源程序的末尾,直到结束。根据、3.3.3汇编语言编程过程1、分析工作、算法或问题解决思路2的确定、算法和解决思路,节目流程图绘制过程流程图由多个框和过程线组合而成。徐璐必须显示另一个框中徐璐

6、另一个框中的相同文字。3、流程图编写节目4、机械调试节目3.3.4顺序结构节目设计按节目编写顺序依次执行。所有复杂的程序包括大成分的顺序结构程序。示例3-8将两个压缩的BCD代码转换为二进制编程思想。(a1a0)BCD=a110 A0编程说明:要转换的两个压缩BCD代码存储在R2中,转换结果存储在R2中。节目流程图如图3-1所示。编程如下:start : mov a,R2 anl a,# 0f0h高BCD代码swap a mov b、# 0ah mvl ab mov R3、a mov a、R2 anl a、# 0fh低BCD代码ADD A,R3 MOV R2,A END,3.3.5分支编程,得

7、到示例3-9符号函数的值1,X0 Y=0,X=0的值。-1 X0编程说明:变量X存储在单元格40H中,函数Y存储在单元格41H中。牙齿计划是第三季度计划。节目流程图如图3-3所示。、编程如下:START: MOV A,40H JZ COMP JNB ACC.7,POST MOV A,# 81h-1表示SJMP COMP POSI: MOV A,# 01h。1 COMP: MOV 41H,A END,示例3-10获取一个字节中有符号二进制数的补码。编程如下:cmpt3360 mova,30h jnb acc.7,nch(A)0、MOV C、ACC.7保存不需要转换的符号mov10h、c CPL

8、a add a、# 1 mov c、10h mov acc.7、c。还原符号NCH:END,在图3-5中,K的最大值通常为128。示例3-1使用单筹码微型计算机进行四茄子运算。编程说明:在单筹码微电脑系统中,设置、4个运算键、牙齿4个运算键的键值分别为0、1、2、3(键值存储在2中),按下其中一个键即可执行相应的运算。P1输入相加、相减、PID或被除数、计算结果的低8位数或份额。P3输入相加、相减、乘数或除数、结果的8位数或馀数。密钥号存储在累加器A中。节目流程图如图3-6所示。、和参考过程如下:start : mov P1、# 0f FH mov P3、# 0f FH mov dptr、#

9、table clr c mov a、R2 subba和# 04h jnc error舍入为A的MOV P3、A RET PRG1: MOV A、P1 CLR C SUBB A、P3 MOV P1、A、clr a RLC a借款人在A中加入MOV P3、A RET PRG2: MOV A、P1 MOV B、P3 MUL AB MOV P1、A MOV P3、B RET、PRG : mov a、P1 MOV B、P3 div编程说明:存储16个二进制无符号数字的第一个地址为30H,牙齿循环程序的循环数为16次,数字放在R4,R5。节目过程如图3-8所示。和参考程序如下:start : mov r0

10、、# 30h mov R2、# 10h mov R4、# 00h mov r5、# 00h、loop 3360 mov a;R4 MOV R4,A INC R0 DJNZ R2,LOOP END,示例3-13将内部数据内存30H4FH单位的内容传递到以外部数据内存2000H开头的单元格。解决方案:编程说明:内部数据区域第一地址:R030H外部数据区域第一地址:DPTR2000H环路数:R232H节目流程图3-9所示。和参考程序如下:start : mov r0、# 30h mov dptr、# 2000h mov R2、# 32h loop 3360 mov a、r0 movx dptr、a

11、Inc r0 ining节目过程如图3-10所示。参考过程如下:mov30h、r0、l1: decr6 mov a、R6 mov R3、a mov R2、a mov a、r0 mov R1、a Inc R1、l 23360 mov a R1 JC.编程说明:变量X的值存储在内存30H单元格中,变量Y的值存储在内存31H单元格中。首先用原验票命令MOVC A,A DPTR编写节目(参考过程1);然后用附近的核对表命令MOVC A,A PC编写程序(请参阅参考过程2)。参考过程1: org 1000h start 3360 mov a,30h mov dptr,# table movc a,a dptr mov 31h,a table 3360 db0,1,4,9,参考过程2:oo(1)计算解释:编程说明:要转换的十六进制数存储在40H单元格中,转换的ASC代码存储在40H中。编程思想:十六进制09的ASC是41H46H。转换数9加30H是对应的ASC代码。可转换的数目9加37H。节目过程如图3-11所示。和参考程序如下:org 0100h mov a,40h anl a,# 0f h clr c subb a,# 0ah,JC next add a,# 0ah add a,# 37h;子程序返回命令RET。2、保存和还原寄存器内容示例:SU

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论