[轉貼]可以使用匯編來寫Symbian程序

 簡單介紹一下。Symbian手機一般跑的都是ARMCPU的,那麼一般的ARM彙編當然也可以使用了。

  NOKIA提供的SYMBIAN開發都是C/C++的例子程序,就封裝了絕大多數的底層操作。不過有些時候,爲了加快運行速度,我們還是可以使用彙編語言來編寫子程序的。當然,使用的是ARM彙編,而不是我們一般學習的80X86彙編

  這裏我舉個簡單的TestArm.S的彙編例子.

  首先,在src目錄下增加一個TestArm.S的文件。然後寫上如下的彙編代碼。
.text
.global MyAdd
MyAdd:
 add r0,r0,r1
 mov pc,lr
完成一個加法的子程序。

  然後,在View類的C++程序中,增加對它使用的代碼:

extern "C"{
 extern int MyAdd(int a,int b);
}
記住,匯編寫出來的都是C語言的函數。

使用直接使用這個函數就OK了。

int c = MyAdd(100,100);


最後,修改MMP文件。

慶幸的是,GCC能夠自己識別彙編還是C/C++文件。所以,直接增加到MMP一行就OK了。

SOURCE                                  TestArm.S

不過最後說一下,這樣只能是在abld build armi urel來編譯。不能在WINDOWS上編譯,更不能在WINDOWS上運行,或者說是80X86上運行。

關於ARM彙編語言的編寫,找一些搞嵌入式開發的資料就可以了。其實Symbian也無法是個嵌入式設備的操作系統。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章