新聞中心

8051存儲器總結(jié)

作者: 時間:2016-11-10 來源:網(wǎng)絡(luò) 收藏
8051單片機(jī)有4個存儲空間:

1.內(nèi)部數(shù)據(jù)存儲器(片內(nèi)RAM)
共128字節(jié),字節(jié)地址范圍為00H~7FH。
前32個字節(jié)00H~1FH為寄存器區(qū),每8個寄存器形成一個寄存器組,共4個寄存器組。
之后的16個字節(jié)20H~2FH,共128位,為位地址區(qū),位地址范圍為00H~7FH。
最后的80個字節(jié)30H~7FH,為通用RAM區(qū)。

本文引用地址:http://m.butianyuan.cn/article/201611/317494.htm

具體分布如下圖所示:
寄存器0組 00H~07H
寄存器1組 08H~0FH
寄存器2組 10H~17H
寄存器3組 18H~1FH
位地址區(qū) 20H~2FH
通用RAM區(qū) 30H~7FH

2.特殊功能寄存器(片內(nèi)RAM)
共21字節(jié),分布于80H~FFH中,僅有21個有效的字節(jié)地址。
有11個特殊功能寄存器可以進(jìn)行位尋址,位地址范圍也為80H~FFH,但只有83個有效的位地址。
其他無效地址單元是不能被訪問的。

3.程序存儲器(片內(nèi)ROM,可外擴(kuò))
64KB,字節(jié)地址范圍0000H~FFFFH,其中片內(nèi)只有4KB的程序存儲器(0000H~0FFFH),如果不能滿足要求,可以擴(kuò)展60KB的片外程序存儲器。
程序存儲器中的某些地址被固定地用于特定程序的入口地址:
0000H 復(fù)位操作后的程序入口
0003H 外部中斷0(INT0)服務(wù)程序入口
000BH 定時器0中斷(T0)服務(wù)程序入口
0013H 外部中斷1(INT1)服務(wù)程序入口
001BH 定時器1中斷(T1)服務(wù)程序入口
0023H 串行I/O中斷(RI/TI)服務(wù)程序入口
通常在這些入口地址開始的二、三個字節(jié)的地址單元中存放一條轉(zhuǎn)移指令,用于跳轉(zhuǎn)到中斷服務(wù)程序,如果中斷服務(wù)程序足夠短,或者不會占用到下一個特定程序的入口(比如從001BH開始連續(xù)存放,不會占用到0023H地址單元),則不需要用轉(zhuǎn)移指令,直接在入口地址處寫中斷服務(wù)程序。

4.外部數(shù)據(jù)存儲器(片外,通過接口電路與單片機(jī)相連)
最大容量可達(dá)64KB。
片外RAM與片內(nèi)RAM的區(qū)別:片外RAM不能進(jìn)行堆棧操作;片內(nèi)RAM操作時無讀寫信號產(chǎn)生,片外RAM讀寫操作時有讀寫信號(RD*,WR*)產(chǎn)生。

內(nèi)部數(shù)據(jù)存儲器和特殊功能寄存器統(tǒng)一編址,程序存儲器和外部數(shù)據(jù)存儲器均單獨(dú)編址,因此89C51存儲器具有三套獨(dú)立編址的存儲空間。

89C51的堆棧位于片內(nèi)RAM中,最大空間為128B,向地址增大的方向增長,操作步驟為先加后壓、先彈后減。



關(guān)鍵詞: 8051存儲

評論


技術(shù)專區(qū)

關(guān)閉