首 页 | 新 闻 | Symbian | Android| Windows Mobile | J2ME | 下载中心 | 游戏策划招聘与求职 | 购书指南 | 视频教程
您现在的位置: 开发视界 >> Symbian >> Symbian开发 >> 正文
在Symbian程序中使用汇编代码
作者:唐良    文章来源:转载    更新时间:2007-7-3 10:32:55
简单介绍一下。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也无法是个嵌入式设备的操作系统。
相关文章:
Symbian OS v9上信息摘要算法的实现(MD5/SHA1)
symbian学习的开始
Symbian 应用软件开发、测试与S60 平台安全常见问题问答
Symbian 认证启用新 CA 颁发的认证证书常见问题问答
小试Python for Symbian
Symbian开发环境设置(Microsoft Visual Studio.Net 2003工具)已测试通过
Symbian OS Internals——Symbian OS模拟器
symbian应用引擎开发
 

站点地图 | 加入收藏 | 联系站长 | 广告服务 |
QQ:280529124  Tel:0592-8271361 辽ICP备05021703号