ARM指令集及混合編程 PPT文檔下載:
免費下載地址在 http://linux.linuxidc.com/
用戶名與密碼都是www.linuxidc.com
具體下載目錄在 /2013年資料/4月/11日/ARM指令集及混合編程
-------------------------------------------------------------------------------
一、ARM指令集
1、跳轉指令:B、BL(帶返回)、BLX、BX(帶狀態)
2、數據傳送:MOV(通用寄存區)、MVN(按位取反)、CMP(比較結果存在CPSR)、TST(按位置位)、ADD、SUB、AND、ORR、BIC、MUL、
3、訪問狀態寄存器:MSR、MRS
二、匯編指令集
1、LDR、STR(B)
2、STR、
3、LDM、STM (批處理)
4、swp
5、LSL、ROR
6、SWI、BKPT
三、偽指令
1、GBLA、GBLL、GBLS、LCLA、LCLL、LCLS 、SETA、SETL、SETS、
2、RLIST
3、DCB (分配存儲單元)
4、SPACE
5、MAP
6、IF、ELSE、ENDIF
7、WHILE、WEND、
8、AREA、CODE、RDONLY、EXPORT、IMPORT
四、C與匯編混合編程
在嵌入式系統開發中,目前使用的主要編程語言是C和匯編,C++已經有相應的編譯器,但是現在使用還是比較少的。在稍大規模的嵌入式軟件中,例如含有OS,大部分的代碼都是用C編寫的,主要是因為C語言的結構比較好,便於人的理解,而且有大量的支持庫。盡管如此,很多地方還是要用到匯編語言,例如開機時硬件系統的初始化,包括CPU狀態的設定,中斷的使能,主頻的設定,以及RAM的控制參數及初始化,一些中斷處理方面也可能涉及匯編。另外一個使用匯編的地方就是一些對性能非常敏感的代碼塊,這是不能依靠C編譯器的生成代碼,而要手工編寫匯編,達到優化的目的。而且,匯編語言是和CPU的指令集緊密相連的,作為涉及底層的嵌入式系統開發,熟練對應匯編語言的使用也是必須的。