Symbian

Symbian手机开发BLOG

My Links

存档

Blog Stats

在Symbian程序中使用汇编代码

单介绍一下。Symbian手机一般跑的都是ARM的CPU的,那么一般的ARM汇编当然也可以使用了。

NOKIA提供的SYMBIAN开发都是C/C++的例子程序,就封装了绝大多数的底层操作。不过有些时候,为了加快运行速度,我们还是可以使用汇编语言来编写子程序的。当然,使用的是ARM汇编,而不是我们一般学习的80X86汇编

这里我举个简单的TestArm.S的汇编例子.
首先,在src目录下增加一个TestArm.S的文件。然后写上如下的汇编代码。

 
CODE:
.text
.global MyAdd
MyAdd:
add r0,r0,r1
mov pc,lr

完成一个加法的子程序。
然后,在View类的C++程序中,增加对它使用的代码:

 
CODE:
extern "C"{
extern int MyAdd(int a,int b);
}

记住,汇编写出来的都是C语言的函数。
使用直接使用这个函数就OK了。

 
CODE:
int c = MyAdd(100,100);

最后,修改MMP文件。

庆幸的是,GCC能够自己识别汇编还是C/C++文件。所以,直接增加到MMP一行就OK了。
 
CODE:
SOURCE                                  TestArm.S

不过最后说一下,这样只能是在abld build armi urel来编译。不能在WINDOWS上编译,更不能在WINDOWS上运行,或者说是80X86上运行。

关于ARM汇编语言的编写,找一些搞嵌入式开发的资料就可以了。其实Symbian也无法是个嵌入式设备的操作系统。

 

posted on Monday, June 1, 2009 10:35 AM

Feedback

No comments posted yet.
Title  
Name  
Url
Comments   
Protected by Clearscreen.SharpHIPEnter the code you see: