- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片微结构-存储器结构
单片机内部结构及最小系统; 专用寄存器组
专用寄存器组主要用来指示当前要执行指令的内存地址、存放操作数和指示指令执行后的状态等。
专用寄存器组主要包括以下专用寄存器:
1)程序计数器PC(Program Counter)
PC是二进制16位的程序地址寄存器,用来存放下一条需要执行指令的地址,能自动加1。
单片机复位后PC内容为0000H
2)累加器ACC(Accumulator)
二进制8位寄存器,专门用来存放操作数或运算结果。
MOV A, #03H ; A?3
ADD A, #05H ; A?A+05H;3)通用寄存器B(General Purpose Register)
二进制8位寄存器,专用于乘法和除法,乘除运算前,用于存放乘数或除数,运算后用于存入乘积的高八位或除法的余数。
MOV A, #05H ; A?5
MOV B, #03H ; B?3
MUL A,B ; BA?AxB=5*3
;4)程序状态字PSW(Program Status Word)
PSW用来存放指令执行后的有关状态
(1)Cy:进位标志位,表示加减运算过程中最高位A7(ACC最高位)有无进位或借位。
(2)AC:辅助进位位,用于表示加减运算过程中低4位有无向高4位(即A4)进位或借位。
(3)F0:用户标志位,由用户确定。
(4)RS1和RS0:工作寄存器组(R0-R7)选择,用户通过改变RS1和RS0的状态来决定工作寄存器的实际物理地址。
主要用于保护R0-R7中的数据,多用于中断服务程序。;(5)OV:溢出标志,指示运算过程中是否发生了溢出。
(6)P:奇偶标志位,用于指示运算结果中1的个数
例:F0=0,RS1=0,RS0=0,执行下面指令后,PSW=?
MOV A, #0FH ;
ADD A,#0F8H ;
OV确定方法:OV=OV=CP?CS=1?1=0
PSW=C1H ;5)堆栈指针SP(stack pointer)
8位寄存器,能自动加1或减1,专门用于存放堆栈的栈顶地址。
堆栈是一种能按“先进后出”或“后进先出”规律存取数据的RAM区域(P16),主要用于子程序和中断服务程序中保护现场。
例:下面指令设定了栈底地址70H
MOV SP, #70H
;6)数据指针DPTR
16位寄存器,可以用来存入片内ROM的地址,也可以用来存放片外RAM或片外ROM的地址.
例:设片外RAM的2000H单元中有一个数x,若要把它取入累加器A中。
MOV DPTR ,#2000H ;DPTR?2000H
MOVX A,@DPTR ; A?x
;五、 MCS—51单片机存储器及存???空间;2 MCS51单片机的存储空间
64KB的外部ROM地址空间
64KB的外部RAM地址空间
4KB的片内ROM(8051)
128B片内RAM
特殊功能寄存器
;MCS—51单片机存储器空间结构图
(a) 程序存储器; (b) 内部数据存储器; (c) 外部数据存储器;3 程序存储器
1. 程序存储器的编址
计算机的工作是按照事先编制好的程序命令一条条循序执行的, 程序存储器就是用来存放这些已编好的程序和表格常数, 它由只读存储器ROM或EPROM组成。
2. 程序运行的入口地址
实际应用时, 程序存储器的容量由用户根据需要扩展, 而程序地址空间原则上也可由用户任意安排。 但程序最初运行的入口地址, MCS—51单片机是固定的, 用户不能更改。 程序存储器中有复位和中断源共7个固定的入口地址。;MCS—51单片机复位、 中断入口地址
;单片机复位后程序计数器PC的内容为0000H, 故必须从0000H单元开始取指令来执行程序。 0000H单元是系统的起始地址, 一般在该单元存放一条无条件转移指令, 用户设计的程序是从转移后的地址开始存放执行的。
可以用MOVC指令访问程序存储器(ROM),使用PSEN信号选通片外ROM。
单片机EA引脚接地,从片内ROM取指,接+5V,则从片内ROM取指。
访问程序存储器一定用16位地址。;4 内部数据存储器?
1. 内部数据存储器的编址
MCS—51系列单片机的内部数据存储器由读写存储器RAM组成, 用于存储数据。 它由RAM块和特殊功能寄存器(SFR)块组成。
2. 内部数据存储器RAM块
内部数据存储器RAM块共分为工作寄存器区、 位寻址区和数据缓冲区3个部分。
1) 工作寄存器区
内部RAM块的00H~1FH
文档评论(0)