MCS51单片机指令系统32寻址方式.ppt

上传人:小飞机 文档编号:5439684 上传时间:2023-07-07 格式:PPT 页数:37 大小:522KB
返回 下载 相关 举报
MCS51单片机指令系统32寻址方式.ppt_第1页
第1页 / 共37页
MCS51单片机指令系统32寻址方式.ppt_第2页
第2页 / 共37页
MCS51单片机指令系统32寻址方式.ppt_第3页
第3页 / 共37页
MCS51单片机指令系统32寻址方式.ppt_第4页
第4页 / 共37页
MCS51单片机指令系统32寻址方式.ppt_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《MCS51单片机指令系统32寻址方式.ppt》由会员分享,可在线阅读,更多相关《MCS51单片机指令系统32寻址方式.ppt(37页珍藏版)》请在三一办公上搜索。

1、第3章 MCS-51单片机指令系统,3.1 指令系统简介3.2 寻址方式,本章内容,3.1 指令系统简介3.2 寻址方式3.3 MCS-51的指令集3.4 汇编语言程序的基本形式3.5 汇编语言程序的基本结构,程序框架,ORG 0000H LJMP MAIN;跳转至主程序ORG 0003H LJMP INT0_INT;跳转至外部中断0的中断服务程序ORG 000BH LJMP T0_INT;跳转至定时器0的中断服务程序ORG 0013H LJMP INT1_INT;跳转至外部中断1的中断服务程序ORG 0030HMAIN:;开始写主程序 END,中断入口地址,主程序开始,软件编程环境,3.1

2、指令系统简介,指令:规定计算机进行某种操作的命令指令系统:指令集合不同系列的机器,其指令系统不同指令编码机器语言指令:二进制数汇编语言指令:助记符(英文缩写),3.1.1 MCS-51单片机指令,111条分类按机器周期数单、双、四按指令功能数据传送、算术运算、逻辑运算及移位、控制转移、位操作按指令的字长分单字节、双字节、三字节,字节少的指令占用存储单元少,执行速度快,3.1.2 指令的格式,标号:操作码助记符 目的操作数,源操作数;注释,NEXT:MOV A,#0A7H;立即数0A7H送累加器A,常用的指令说明符号,3.1.3 指令的字节,(1)单字节指令操作码和操作数加起来只有一个字节(2)

3、双字节指令操作码和操作数各占一个字节(3)三字节指令第一字节为操作码第二、第三字节为操作数或操作数地址,(1)单字节指令(49条),无操作数单字节指令指令中只有操作码字段,操作数隐含在操作码中 例:INC A;指令编码为 04H含有操作数寄存器号的单字节指令 指令码由操作码字段和指示操作数所在寄存器号的字段组成 例:MOV A,Rn;指令编码为 E8HEFH,PC,IR,ID,控制器,AR,+1,RAM地址锁存,RAM,ROM,04H,INC A指令编码:04H,(2)双字节指令(46条),指令操作码字节在前;在后的操作数字节可以是立即数,也可以是操作数所在片内RAM的地址。例:MOV A,#

4、data;指令编码为 74H dataMOV A,dir;指令编码为 E5H dir,PC,IR,ID,控制器,AR,+1,RAM地址锁存,RAM,ROM,E5H,35H,FFH,36H,37H,38H,34H,33H,35H,35H,FFH,MOV A,35H指令编码:E535H,(3)三字节指令(16条),指令第一字节为操作码第二、第三字节为操作数或操作数地址。分为4类16位数据MOV DPTR,#26ABH8位地址和8位数据MOV 74H,#0FFH8位数据和8位地址CJNE A,#00,60H 16位地址LCALL 2020H,3.2 寻址方式,寻找操作数的方式7种:(1)立即寻址(2

5、)直接寻址(3)寄存器寻址(4)寄存器间接寻址(5)变址寻址(6)相对寻址(7)位寻址,寻址方式越多指令功能就越强,灵活性越大,(1)立即寻址,例1 MOV A,3AH 例2 MOV DPTR,1638H;A3AH;DPTR1638H,MOV 3AH,A,3AH,16H,38H,MOV 1638H,DPTR,(2)直接寻址,例 若(30H)=0AAH,执行指令MOV A,30H;(A)(30H)结果:(A)=0AAH,0AAH,注意:,直接寻址可以访问:内部数据存储器的低 128 个字节单元特殊功能寄存器,特殊功能寄存器只能用直接寻址方式进行访问,A、B、DPTR?,(3)寄存器寻址,例 若(

6、R0)=0AAH,执行指令MOV A,R0;A(R0)结果:(A)=0AAH,指令码为:E8H,0AAH,注意:,可采用寄存器寻址的寄存器R0R7累加器 AINC A;寄存器寻址(机器码:04H)INC ACC;直接寻址(机器码:05E0H)INC 0E0H;直接寻址(机器码:05E0H)寄存器 BMUL AB 和 DIV AB;寄存器寻址MOV B,#12H;直接寻址(机器码:75F012H)数据指针 DPTRINC DPTR和 MOV DPTR,#1234H;寄存器寻址,(4)寄存器间接寻址,使用规定片内(256B)RAM 间接用 Ri(i=0 或 1),即MOV A,R1 或 MOV A

7、,R0片外 64KB RAM间接用 DPTR,即MOVX A,DPTR间接用 Ri,即MOVX A,R1或MOVX A,R0此时,高8位地址由P2提供,低8位地址由Ri提供,例1 若(R0)=0AAH,(0AAH)=5BH,执行指令MOVA,R0;A(R0)结果:(A)=5BH,5BH,例2 MOV DPTR,#3456H;DPTR 3456H 若(3456H)=99H,则MOVX A,DPTR;A(DPTR);(A)=99H,注意:,寄存器间接寻址,不能用于对 SFR 寻址片内RAM和片外RAM之间不能直接传递数据堆栈操作(PUSH,POP)隐含为SP间接寻址,(5)变址寻址,3条MOVC

8、A,A+PC;A((A)+(PC))MOVC A,A+DPTR;A((A)+(DPTR))JMP A+DPTR;PC(A)+(DPTR)所用寄存器基地址寄存器:DPTR、PC累加器A:预先存放被寻址操作数地址相对基地址的偏移量只能 访问 ROM,下一条指令的PC值,例1 若(A)=08H,(DPH)=20H,(DPL)=00H;执行:MOVC A,A+DPTR执行后:(A)=88H,88H,例2若(A)=30H,(1031H)=20H执行:地址1000H处的指令 1000H:MOVC A,A+PC 执行后:(A)=20H,20H,例3若(A)=08H,(DPTR)=2000H执行:JMP A+

9、DPTR执行后:(PC)=2008H 程序从 ROM 地址 2008H 处开始执行,(6)相对寻址,操作修改PC的值,实现程序的分支转移转移的目的地址目的地址 转移指令下条指令地址(PC的当前值)rel目的地址 转移指令地址 转移指令字节数 rel其中rel带符号的8位二进制数补码形式(128127),等价,等价,在实际编程中,“rel”通常用标号代替,例 已知(PC)=2000H 执行如下指令地址 ORG 2000H 指令码2000H SJMP 200AH 80H 08H2002H NOP 00H 200AH NOP 00H结果:程序转移到200A处开始继续执行,(7)位寻址,操作数:片内

10、RAM 单元中的某一位只给出位地址,而不是字节地址例CLR ACC.0 MOV 30H,C;30H为片内RAM中的位地址可位寻址区为:片内RAM(共16个字节,128个位)字节地址:20H2FH位地址:00H7FH字节地址能被8整除的SFR的相应位地址,可位寻址区回顾:片内RAM,工作寄存器区:字节地址:00H1FH位寻址区:字节地址:20H2FH位地址为:00H7FH数据缓冲区/堆栈区:字节地址:00H7FH一般使用30H7FH,可位寻址区回顾:特殊功能寄存器SFR,占用字节地址:80HFFH位寻址寄存器:其字节地址可被8整除专用寄存器:A、B、PSW、DPTR、SPI/O接口寄存器:P0、

11、P1、P2、P3、SBUF、TMOD、TCON、SCON,位地址的表示方式,4种,直接使用位地址MOV C,0D5HPSW的位5(位地址D5H)的状态送进位标志位 单元地址加位序号的形式MOV C,0D0H.5PSW(单元地址0D0H)的位5(位地址D5H)的状态送进位标志位 特殊功能寄存器符号加位序号的形式MOV C,PSW.5PSW的位5的状态送进位标志位 位名称表示形式MOV C,F0PSW的位5(位地址D5H、位名称为F0)的状态送进位标志位,小结:寻址方式和寻址空间,课本P51表3-1,小结,MCS-51单片机指令分类格式寻址方式作业:P943.3预习MCS51单片机指令系统指令集,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号