keil C语言与汇编语言混合编程
时间:11-09
来源:互联网
点击:
直接相加得来。
由于在C语言的环境下,局部变量的寻址必须通过SP寄存器实现,在混合编程的时候,为了使汇编语言不影响堆栈寄存器SP,通常的方式是在汇编环境中使用DP方式寻址,这样可以使二者互不干扰。编程中只要注意对CPL位正确设置即可
1 .word 的意思就相当与C语言里的int,char等定义一个变两的宽度
2. 编译错误原因有2:
a.如果在汇编里面定义.global(全局符号),那么在C语言里面应该用extern声明,以引用该符号。
b.在汇编里面声明的时候,符号前应加下划线,如 FIQ_Addr: .word EXTint_FIQ 应为: FIQ_Addr: .word _EXTint_FIQ 在C语言里面应用extern声明。另外,一中方法是,用.ref 代替.global 来声明符号,这样就不用在C源程序里面用extern声明了。两种方法结果相同。 我讲的是用C和汇编混编程用法,至于C++变量如何翻译成汇编符号可以用仿真器,自己去看,原则类似.
keilC语言汇编语言混合编 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)