目录
二、原汇编语言 Init_1函数的类型改为 int Init_1(init) ,此函数功能修改为 传入一个整型数x,函数运行后返回整型数 x+100
一、在Keil下完成C语言的汇编程序调用
在Keil的项目下创建main.c的C语言程序和Fun.s的汇编程序:
main.c的代码:
Fun.s:
可以看到如下的调试结果:
main函数调用了Init()
成功调用Func.s文件
二、原汇编语言 Init_1函数的类型改为 int Init_1(init) ,此函数功能修改为 传入一个整型数x,函数运行后返回整型数 x+100
首先修改main.c中的内容:
Fun.s中的内容
调试结果:
调用新的Init_1函数
寄存器中出现相应的值
总结:在Init_1中我们传入了一个值为25的参数,在函数中的原值为100,在寄存器R0中出现的7D正是
25+100的16进制的值,这说明成功调用了传入参数的函数。
三、汇编函数中调用一个 C语言写的函数
新建一个test.s文件和fun.c文件:
调试结果:
由于a=100,b=100,c=200,而200的16进制为C8,说明C语言函数被调用成功。