艾旺多語翻譯

};

其餘關頭字就比照管理,小心keil c的const不是flash,此時假如不會看 map 檔,拼命在檢查程式碼,那真會看死人的,所以用 Keil C 就要利用 code 等的關頭字來控制才行,所以此時就要當令的使用 #define 來使程式碼具有可攜性,未來有一天搬到 ARM 甚至是 pc 編成 DLL 檔不時還可以用。

};

mem_1, mem_2

char const * array[] = { // 6bytes in ram????

char code * code array[] = { // 4bytes in ram????

第二個 code 告知 compiler array[] 是放在 rom 內。

前面提到,一個 pointer 需要靠此中的標籤來判斷到底該用那些指令來存取,而這個判定還是由指令構成,若是我們確定 pointer 的指向必然是 " 某種 " 記憶體,這個標籤就可以免卻了,不但少了空間,更削減多餘的指令執行,這對於某些需要在 1~2us 運作終了的程式,是非常主要的手法,此時 c 說話的環節字就不敷用了,要搬出 8051 compiler 獨有的環節字: code翻譯社xdata,idata,data翻譯社bdata 等 ...

1. 32bit CPU 的 "32bit"

2. 64bit ADDRESS BUS 的 "64bit"

3. CISC

4. RISC