- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机的指令系统及汇编语言程序的设计基础
单片机的指令系统及汇编语言程序设计基础
单片机的指令系统及汇编语言程序设计基础
§3-1 MCS-51单片机的指令格式与寻址方式
一、汇编语言程序设计的意义
什么是程序?
完成某项特定任务的指令的集合。
计算机按程序一条一条地依次执行指令,从而完成指定任务。
要让计算机完成各项任务,就应设计各种程序。
程序设计语言:机器语言、汇编语言、高级语言、汇编语言程序的每一条语句都与计算机的某一条指令对应,所以必需熟悉指令系统。
指令 = 操作码 + 操作数
操作码——表示了该指令所能执行的操作功能。
操作数——表示参加操作的数的本身或操作数所在的地址。
MCS-51指令格式:
[标号:] 操作码助记符 [第一操作数][,第二操作数][;注释]
二、MCS-51系列单片机的指令系统
111条指令,共分五大类:
数据传送类;(29条)、算术运算类;(24条)、逻辑运算类;(24条)、控制转移类;(17条)、位操作类。(17条)
指令中操作数的描述符号: Rn —— 工作寄存器R0 ~ R7、 Ri —— 间接寻址寄存器R0、R1、 Direct —— 直接地址,包括内部128B RAM单元地址、26个SFR地址。
#data —— 8位常数 #data 16 —— 16位常数
addr 16 —— 16位目的地址、 addr 11 —— 11位目的地址、 rel —— 8位带符号的偏移地址、
DPTR —— 16位外部数据指针寄存器
bit —— 可直接位寻址的位
A —— 累加器
B —— 寄存器B
C —— 进、借位标志位,或位累加器
@ —— 间接寄存器或基址寄存器的前缀
/ —— 指定位求反
(x)—— x中的内容
((x))—— x中的地址中的内容
$ —— 当前指令存放的地址
三、寻址方式
寻找操作数存放单元的地址的方式,共6种方式。
1、立即数寻址
所要找的操作数是一二进制数或十进制数,出现在指令中,用“#”作前缀
MOV A,#20H
2、寄存器寻址
操作数存放在工作寄存器R0 ~ R7中,或寄存器B中。
MOV A,R2
3、直接寻址
指令中直接给出操作数的地址。
MOV A,30H
MOV 30H,DPH
4、寄存器间接寻址
指令中寄存器的内容作为操作数存放的地址,指令中间接寻址寄存器前用
“@”表示前缀。
举“两个抽屉,两把钥匙”的例子。
MOV R0,#30H
MOV A,@R0
MOV A,#20H
MOV R1,#40H
MOV @R1,A
5、变址寻址
操作数地址 = 变地址 + 基地址
基地址寄存器 DPTR 或 PC
变址寄存器 @A
该寻址方式常用于访问程序存储器,查表。
MOV A,@A + DPTR
6、相对寻址
把指令中给定的地址偏移量与本指令所在单元地址(PC内容)相加得到真正有效的操作数所存放的地址。
举“李同学20岁,张同学比李同学大3岁”的例子。
JC 60H ;设(PC) = 2000H,
则当C = 1时,
转移的目的地址 = (PC)+ 2 + 60H
巩固新课:
1、汇编语言有何种特点?指令格式?
2、MCS—51系列机共有多少条指令?分几类?
3、MCS—51系列汇编语言指令有几种寻址方式?
字号: 大大 中中 小小
51单片机指令(转载)
MCS-51系列单片机指令以A开头的指令有18条,分别为:
ACALL addr11 ADD A,Rn ADD A,direct ADD A,@Ri ADD A,#data ADDC A,Rn
ADDC A,direct ADDC A,@Ri ADDC A,#data AJMP addr11 ANL A,Rn ANL A,direct ANL A,@Ri ANL A,#data ANL direct,A ANL direct,#data ANL C,bit ANL C,/bit
1、ACALL addr1
文档评论(0)