求C语言中如何插入一段汇编程序

求C语言中如何插入一段汇编程序,第1张

如果在51 KEIL 中
方法是这样的
#pragma ASM
; Assembler Code Here
#pragma ENDASM
不过你还得在 Project 窗口中包含汇编代码的 C 文件右键,选择“Options for ”,点击右边的“Generate Assembler SRC File”
和“Assemble SRC File”,使检查框由灰色变成黑色(有效)状态;

第一题
直接嵌入汇编代码的方法:
1、在 C 文件中要嵌入汇编代码片以如下方式加入汇编代码:
#pragma ASM
; Assembler Code Here
#pragma ENDASM
2、在 Project 窗口中包含汇编代码的 C 文件上右键,选择“Options for ”,点击右边的“Generate Assembler SRC File”和“Assemble SRC File”,使检查框由灰色变成黑色(有效)状态;
3、根据选择的编译模式,把相应的库文件(如 Small 模式时,是 Keil\C51\Lib\C51SLib)加入工程中, 该文件必须作为工程的最后文件;
void main(void)
{
P2=1;
#pragma asm
MOV R7,#10
DEL:MOV R6,#20
DJNZ R6,$
DJNZ R7,DEL
#pragma endasm
P2=0;
}
第二题
可以直接用绝对地址跳转,一般直接跳到标签处,不用自己算地址。这样不小心程序会跑飞。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12605530.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存