單片機C51 DATA,XDATA,BDATA,IDATA,CODE存儲資源分配
單片機初學者一般對c51語言里的DATA,XDATA,BDATA,IDATA,CODE,不是很清楚,因為在微機的c語言里根本沒有這些東西,一下子出來難以讓人接受,特別是沒有硬件基本的朋友們.這也是寫程序的時候經常犯錯誤的地方。請看下表
普通51系列單片機存儲空間資源分配情況
空間名稱 | 地址范圍 | 說明 |
DATA | D:00H~7FH | 片內RAM直接尋址區(qū) |
BDATA | D:20H~2FH | 片內RAM位尋址區(qū) |
IDATA | I:00H~FFH | 片內RAM間接尋址區(qū) |
XDATA | X:0000H~FFFFH | 64K片外RAM數據區(qū) |
CODE | C:0000H~FFFFH | 64K片內外ROM代碼區(qū) |
BANK0~BANK31 | B0:0000H~FFFFH : : B31:0000H~FFFFH | 分組代碼區(qū),最大可擴展32X64KB ROM |
單片機學習網http://www.51hei.com給大家整理出了上下這兩個表格,方便大家查詢。有問題可在評論或者論壇中提出。
下表是新型80C51單片機擴展空間的分配情況
空間名稱 | 地址范圍 | 說明 |
DATA | D:00H~7FH | 片內RAM直接尋址區(qū) |
BDATA | D:20H~2FH | 片內RAM位尋址區(qū) |
IDATA | I:00H~FFH | 片內RAM間接尋址區(qū) |
XDATA | X:0000H~FFFFH | 64KB常規(guī)片外RAM數據區(qū) |
HDATA | X:0000H~FFFFFFH | 16MB擴展片外RAM數據區(qū) |
CODE | C:0000H~FFFFH | 64K常規(guī)片內外ROM代碼區(qū) |
HCONST(ECODE) | C:0000H~FFFFFFH | 16MB擴展片外ROM常數區(qū)(對Dallas390可用作代碼區(qū)) |
BANK0~BANK31 | B0:0000H~FFFFH : : B31:0000H~FFFFH | 分組代碼區(qū),最大可擴展32X64KB ROM |
評論