- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单元2 AT89S52系列的单片机寻址方式及指令系统
单元2 ;;一、AT89S52单片机寻址方式;二、AT89S52单片机指令寻址 ;寻址方式:7种
立即寻址
直接寻址
寄存器寻址
寄存器间接寻址
变址寻址
相对寻址
位寻址;(一)立即寻址
是指操作数在指令操作数域直接给出 ; (二)直接寻址
是指操作数的地址直接在指令操作数域给出;图2.3 直接寻址(MOV A,3CH); 例: MOV A ,30H;机器码为E530H
指令功能是把直接地址30H单元的内容送累加器A,即(30H) →(A)如图所示。;注意:立即数前加“ # ”号,以区别直接地址。
例如: MOV A,#30H ;(A) ← 30H
MOV A, 30H ; (A) ←(30H);(三)寄存器寻址—操作数存放在寄存器中;【例2-6】 MOV A,R1 ;A ←(R1) ;(四)寄存器间接寻址; 例如: MOV A ,@R1 ;机器码 E7H
设(R1)=60H , (60H)=50H , 执行结果
(A)=50H,该指令执行过程如图所示。;(五)变址寻址; MOVC A,@A+DPTR ;A ???((A)+(DPTR))
指令功能为DPTR中的内容与A中的内容相加,其和所指示的单元的数送入累加器A,如图所示。; (六)相对寻址
是以程序计数器PC的当前值为基地址,加上指令中给出的偏移量rel作为转移目的地址。
转移目的地址=下一条指令地址+rel
【例2-9】 JC 80H ;JC rel; 4085H
设rel=85H ;(七)位寻址 bit;(2) 特殊功能寄存器SFR可供位寻址的专用寄存器共11个,实有位地址位83位。位地址有4种表达方式 。
以对程序状态寄存器PSW辅助进位位AC进行操作为例:?
PSW Cy AC F0 RS1 RS0 OV P D0H
D7H D6H D0H;寻址方式;四、AT89S52单片机指令系统简介 ; 指令是指单片机执行某种操作的命令。指令系统(或指令集)是指单片机能够识别和执行的全部指令。用汇编语言编写的程序称为源程序。为完成某项任务,人们按要求编排的指令操作序列称为程序。
【例2.11】 要做“10+20” 的加法,可写成:
汇编语言程序 机器语言程序
MOV A,#0AH 74 0AH
ADD A,#14H 24 14H ;1. 汇编语言指令格式 [标号]:操作码 [目的操作数],[源操作数];[注释]
例如: Loop: ADD A, R0 ;A + (R0) → (A)
2.机器语言指令格式 ;(三)指令系统中使用的常用符号
Rn:当前寄存器工作区中的寄存器,其中,n=0~7;
direct:内部数据存储器地址,可指定一个内部RAM单元(0~127)或一个专用寄存器(128~255);
@Ri:通过R1或R0间接寻址,指定数据存储器RAM中的一个单元(0~255);
#data:在指令中指明8位常数;
#datal6:在指令中指明16位常数;
addrll:11位目的地址,用在ACALL或AJMP指令中,表示调用或转移地址,寻址范围为2KB;
addrl6:16位目的地址,用在LCALL或LJMP指令中,表示调用或转换地址,寻址范围为64KB;
rel:8位偏移量,用补码表示,用在SJMP等转移指令中,寻址范围为-128~+127;
bit:表示位寻址空间中的位地址,8位,寻址范围为0~FFH。;(四)AT89S52指令系统助记符;1. 数据传送类指令(7种助记符,28条指令);;;【例6】 分析程序的执行结果。
设内部RAM中30H单元的内容为80H,试分析执行下面程序后各有关单元的内容。
MOV 60H,#30H
文档评论(0)