- 1、本文档共101页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
华东理工AT9C52第3章
信息科学与工程学院自动化系;本章是全书的重点之一, 是汇编语言程序设计的基础。;??本章主要介绍单片机的寻址方式及指令系统,
是必须掌握的内容。
? 一台计算机所有指令的集合,
称为该计算机的指令系统。
? 各种计算机都有专用的指令系统。
;;3.1 指令系统概述;
汇编语言指令格式
机器语言指令格式;;汇编语言指令格式;机器语言指令格式;指令字长有三种:
单字节 RET
双字节 MOV A,#68H
三字节 MOV 30H,46H;3.1.3 指令分类 ;3.2 寻址方式;寄存器寻址——操作数存放在寄存器中; 例如:MOV A , R3 ;机器码为 0EBH
指令功能是把当前R3中的操作数送累加器A。
指令执行示意图如图3-3所示。设(R3)=12H;直接寻址—指令中直接给出操作数的地址; 例: MOV A ,30H;机器码为E530H
指令功能是把??接地址30H单元的内容送累加器A,即(30H) →(A)如图3-1所示。;寄存器间接寻址;例如: MOV A ,@R1 ;机器码 E7H
设(R1)=60H , (60H)=50H , 执行结果(A)=50H,该指令执行过程如图3-4所示。;立即寻址——在指令中直接给出操作数;例: MOV DPTR,#1234h
(DPH)=12H
(DPL)=34H
;变址间接寻址; MOVC A ,@A+PC ;83H
设执行指令之前(A)= 50H
指令功能是把该指令当前地址PC值与A累加器内容相加形成操作码地址3F51H,3F51H中的内容37H送A累加器。 ;相对寻址;JC rel; 4085H
设rel=85H ,Cy=1;位寻址 bit; 2、特殊功能寄存器SFR可供位寻址的专用寄存器共11个,实有位地址位83位。位地址有4种表达方式 。
以对程序状态寄存器PSW辅助进位位AC进行操作为例:?
PSW Cy AC F0 RS1 RS0 OV P D0H
D7H D6H D0H;寻址方式;1、内部数据存储器的寻址方式
1) 00H~1FH 寄存器寻址 4组R0 ~R7 Rn
直接寻址 direct
寄存器间接寻址 @R0,@R1
例:(01H) (02H)
MOV 02H,01H ;源寻址和目的寻址均为直接寻址
MOV R2,01H ;源寻址为直接寻址,目的寻址为寄存器寻址
MOV R0,#01H
MOV 02H,@R0;源寻址为寄存器间接寻址,
目的寻址为直接寻址
;2) 20H ~2FH 可位寻址区的寻址方式
字节寻址方式: 直接寻址 direct
寄存器间接寻址@R0,@R1
位寻址: bit 直接寻址
例: MOV 26H,C ; 位寻址 (26H)1位
MOV 26H,A ;字节寻址(26H)8位 ;3) 30H ~FFH 数据缓冲区的寻址方式
字节寻址方式: 直接寻址 direct (30H ~7FH )
寄存器间接寻址@R0,@R1
例:MOV 56H, A ;字节寻址(56H)8位
MOV R0, #96H
MOV @R0, #56H
可以将用户堆栈设在该区内,堆栈指针SP
;2、SFR 及I/O口的操作——只能直接寻址
例: P1 口 90H
MOV A,90H
MOV A,P1
MOV P1,A
3、关于A累加器有两种寻址方式
文档评论(0)