MCS-51單片機內部RAM可分為幾個區(qū)?以及作用?
00H-1FH為工作寄存器區(qū),里面就是通用寄存器組R0-R7,每八個分一組,如第一組為R0-R7,地址位00-07H;假設第一組叫1(R0-R7),那么08-0FH為第二組,就叫2(R0-R7),依次類推共有4組。這個區(qū)域是最常用的數據區(qū),數據的操作大部分在這里進行。通用寄存器分組的好處是:當程序切換(特別是被中斷或搶占的時候)只需要切換一組寄存器就可以獲得一組新的寄存器,而不必擔心和別的程序沖突,也可以盡量少的進行入棧和出棧操作,提高運行效率。作用?當然是放數據,只不過這個地方最好用。
20H-2FH為可位尋址區(qū),這里和通用寄存器組一樣可以進行位尋址,也就是說可以比較方便的進行位操作,個人認為它和通用寄存器組的區(qū)別是,沒有逐個的命名和分組。使用頻率較高的數據,或需要位操作的數據會放在這里。
30H-7FH是字節(jié)尋址區(qū),很普通的數據緩存區(qū),用來建立堆棧,還有放一些不太常用的數據。
以下需要注意,有兩個80-FFH的數據區(qū)。
其一:80-FFH,特殊功能寄存器組區(qū),支持直接尋址,各種各樣的特殊功能寄存器都在這里。
其二:80-FFH,間接尋址區(qū),著里只支持間接尋址,使用間接尋址指令避免和特殊功能寄存器區(qū)沖突。用來放一些不常用(相對不常用)的數據,由于使用R0或R1作指針尋址,用來建立數組數組是非常好的。
編輯:admin 最后修改時間:2018-05-19