这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » c和汇编混编

共2条 1/1 1 跳转至

c和汇编混编

院士
2006-09-17 18:14:16     打赏
c和汇编混编



关键词: 汇编     混编    

院士
2006-12-22 22:43:00     打赏
2楼
问 各位高人,您能告诉我C和汇编是怎样混合编程的吗?比如头文件怎么设置。。。。最好有段程序代码,做个示范,我找了好久,就是没找到,恳请各位大哥不吝赐教,小弟谢过先! 1: 忘说了芯片是MOTO的 2: C和汇编混合编程如果你文件名是.C,就按C写,嵌入单行汇编前面加ASM,多行用{ }括起来,或者把汇编部分建一个新文件.ASM,按汇编格式写,C和汇编之间函数HC08/12是直接调用,DSP56800/E汇编是在程序名、变量名前面加大写"F" 3: c和汇编语言混合汇编必须遵照两者参数传送协议,在程序开始必须作声明。 4: codewarrior 说明里讲过的非三言两语的问题,回去好好看看吧 5: - 6: 这是keilc51 混编的 MOTO的不太清楚,我这有keilc51的:

看了许多keil c51中嵌入汇编的帖子,根据自己的经验在keil7.01环境中总结如下:
1、把"xx.c"加入工程中,右击"xx.c"选择“options for file"xx.c" 选择“Generate Assembler SRC File”和“Assemble SRC File”打上黑勾有效;
2、根据选择的编译模式,把相应的库文件象加"xx.c"一样加入工程中并放在"xx.c"下面,如smail模式下选择"keil\c51\lib\c51s.lib"加入工程中,如果要进行浮点运算把"keil\c51\lib\c51fpl.lib"也加入工程中。
3、在"xx.c"头文件中加入优化:比如#pragma OT(4,speed)
4、在"xx.c"中加入汇编代码#pragma ASM
                         ;Assembler Code Here
                         #pragma ENDASM
5、编译生成xx.hex


注意:没有做第一步会有如下警告:'asm/endasm' requires src-control to be active
      没有做第二步会有如下警告:UNRESOLVED EXTERNAL SYMBOL;
                                REFERENCE MADE TO UNRESOLVED EXTERNAL等
      没有做第三步会有如下警告:UNDEFINED SYMBOL (PASS-2)
    





7: 这里有个示例程序 8: hui可以看看相关书籍
9: 与你使用的开发环境有关!与你使用的开发环境有关! 10: hh哪儿有51汇编的资料阿。。请告诉一声谢了。。

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]