- 1、本文档共41页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MCS单片机储存器结构
2.2.2 MCS—51单片机的存储器结构;存储器;存储器配置;物理上分4个存储器空间
内部程序存储器
外部程序存储器
内部数据存储器
外部数据存储器
逻辑上分3个存储器空间
片内外统一的64KB程序存储器
256B(含SFR块)片内数据存储器
64KB片外数据存储器;64k程序存储器地址空间,片内外统一编址0000h~FFFFh
256B片内数据存储器地址空间
;64KB RAM(I/O);2.3.1 程序存储器地址空间;存储单元;中断源; 数据存储器地址空间;用户RAM区(堆栈、数据缓冲);;片内 RAM(20H-2FH)中的位寻址区结构图;位寻址区内的地址是位地址。共有00-7FH(共128个位);
要区分字节地址和位地址这两个不同的地址概念:
①从物理的角度:每一个字节地址内包含了8个位,既:
D7,D6,D5,D4,D3,D2,D1,D0
(我们提到的RAM地址一般都是指字节地址)。
②从逻辑的角度:字节地址和位??址是靠不同类型的指令来
区分的。如,
MOV A, 20H ;将RAM的20单元内容送累加器A;
MOV C ,20H ;将RAM位寻址区中20H位送CY中。
在这二个例子中,第一条指令为字节传送指令,既20H为字节地址;第二个例子中的指令为位操作指令,20H为位地址。有关详细内容将在后续章节中描述。;特殊功能寄存器:
共22个(3个只属52子系列),PC在物理上是独立的,其余21个分布在SFR区,共占26个字节(5个双字节寄存器)。
这21个中,有11个寄存器具有位寻址功能,即寄存器中的每位都具有位地址,它们的特点是字节地址正好能被8整除。;;;;特殊功能寄存器简介; 程序状态字(或标志寄存器)PSW
8位,存放运算结果的一些状态信息,各位含义如下:
;CY(PSW.7):进位标志位。在进行加法(或减法)运算时,若运算结果最高位有进位或借位,则CY自动置“1”,否则CY置“0”,在进行布尔操作运算时,CY(简称C)作为布尔处理器。
AC:辅助进位标志位。当进行加法或减法时,若低4位向高4位有进位(或借位)时,AC被置“1”,否则AC被置“0”。在十进制调整指令中AC还作为十进制调整的判别位。
F0:用户标志位。用户可用软件对F0位置“1”或清“0”以决定程序的流向。
;OV:溢出标志位,当运算结果溢出时OV为“1”,否则为“0”,此标志位反映了带符号数运算结果是否溢出。OV的结果可以用一个算法来表示:
OV=CP⊕CS 其中:CP为A7的进位;CS为A6的进位。
PSW.1:未定义位。
P(PSW.0):奇偶标志位。当累加器A中“1”的个数为奇数时,P置“1”,否则P置“0”。此位反映累加器A中内容“1”的奇偶性,它常常用于单片机间通信。
RS1、RS0:工作寄存器区选择位。用来选择当前工作的寄存器区。用户通过改变RS1 、RS0的内容来选择当前工作寄存器区。RS1、RS0的内容与工作寄存器区的对应关系如表2-1所示。
;;数据指针DPTR
是一16位专用寄存器,其高字节寄存器用DPH表示,低字节寄存器用DPL表示。既可作为16位寄存器(DPTR)使用,又可作为两个独立的8位寄存器(DPH、DPL)来使用。DPTR主要用来保持16位地址,当对64KB外部数据存储器RAM(或I/O口)空间寻址时,作间址寄存器用,指向外部数据存储器地址。
;堆栈指针SP
它是一个8位寄存器,用来存放栈顶地址。
MCS-51堆栈设在内部RAM中,是一个按“先进后出”顺序,受SP管理的存储区域。在程序中断,子程序调用等情况下,用于存放一些特殊信息(亦可作数据传送的中转站)。当数据压入堆栈时,SP就自动加“1”;当数据从堆栈中弹出时,SP就自动减“1”。因而SP指针始终指向栈顶。
MCS-51堆栈最大深度为128个字节,系统复位时硬件使SP=07H。 指令系统中的栈操作指令是:PUSH,POP。 ;(a)系统复位后,未改变SP初值时的堆栈操作(设(A)=0ABH);(b)系统复位后,改变SP初值为60H时的堆栈操作
堆栈操作示例; 用户使用的角度上看,8051存储空间分为三类:
? 片内、片外统一编址0000H~0FFFFH的64K字节的程序存储器地址空间;
? 256字节数据存储器地址空间;
? 64K字节片外数据存储器/I/O口地址空间,地址也从0000H~0FFFFH。
上述三个空间地址是重叠的,即
?程序存
文档评论(0)