
8051程式記憶體
8050是一個8位元的單晶片,它有獨立最大64K的程式記憶體,當然,市售的805X族系晶片,程式記憶體大半在4K,8K,16K為主,和個人電腦以G為單位的記憶體相比,8051的記憶體算是很小了。
64K記憶體中,最前面的00—0X3F的記憶體較為特別,0的位址是單晶片冷開機時啟動的位址,一般會放一個LJMP指令,跳躍至真正的開機程式,其他03—0X3F的位址,則是8051發生各種中斷時(如串列埠中斷,計時中斷),程式的執行位址,一般也是以一個LJMP指令,跳躍至中斷程式。
在常見的C51編譯器,為了方便工程師可以只用C程式,來開發整個專案,所以在編譯時候,會在程式碼的最前面,由C51加入一段由C51先寫好的STARTUPCODE,這段程式碼處理一些原本由組合語言的工作,比如設定堆壘(SP),RESET及中斷程式的LJMP程式碼,還可能包括一些清除資料記憶體的動作等等,程式碼約占用60H左右的程式記憶體長度。
#include "at89x52.h"
