ROM和RAM容量和位置
本文引用地址:http://www.ex-cimer.com/article/201611/323095.htmMCS-51單片機(jī)的存儲(chǔ)器包括程序存儲(chǔ)器(ROM)和數(shù)據(jù)存儲(chǔ)器(RAM)兩部分,而每一部分的容量又包括片內(nèi)容量和片外容量。一般8x51系列的單片機(jī)的ROM內(nèi)部容量是4KB,外部擴(kuò)展容量最大的是64KB;RAM內(nèi)部容量是128B,外部擴(kuò)展容量最大是64KB。MCS-51單片機(jī)進(jìn)行了擴(kuò)容,其內(nèi)部存儲(chǔ)器的容量大小是256B。
程序存儲(chǔ)器(ROM)的調(diào)用
EA引腳接高電平時(shí),CPU將使用內(nèi)部程序存儲(chǔ)器,若程序超過4KB,將使用外部存儲(chǔ)器存儲(chǔ)超過的部分;
EA引腳接低電平時(shí),CPU將使用外部程序存儲(chǔ)器,而內(nèi)部程序存儲(chǔ)器將形同虛設(shè)。
數(shù)據(jù)存儲(chǔ)器(RAM)的調(diào)用
在匯編語言中,訪問內(nèi)部數(shù)據(jù)存儲(chǔ)器時(shí)用的是MOV,而訪問外部數(shù)據(jù)儲(chǔ)存器時(shí)用的是MOVX。
通常我們把256B的內(nèi)部數(shù)據(jù)存儲(chǔ)器分為0000H~007FH和0080H~00FFH兩部分來分析,兩者各128B,前128B可直接尋址和間接尋址,后128B只能間接尋址,亦稱為特殊功能寄存器。
前128B:
0000H~001FH的32個(gè)B分為四個(gè)寄存器組,每個(gè)寄存器組有8個(gè)B,通過特殊寄存器里的psw的RS0和RS1的組合決定用那個(gè)寄存器組,每個(gè)寄存器組中的8個(gè)B依次可以命名為R0~R7.
0020H~002FH這16個(gè)B是可位尋址區(qū),就是可以指定訪問一個(gè)位。例如,SETB 20H.5,就是將0020H上的第五個(gè)bit置1.
0030H~007FH的80個(gè)B是一般數(shù)據(jù)方位和堆棧區(qū)如果在程序中使用PUSH或者POP,則最好是將堆棧指針移至到該區(qū)。
后128B:特殊功能寄存器,這里不再作詳細(xì)說明。
評(píng)論