C语言中调用汇编语言详解

编辑: admin 分类: c#语言 发布时间: 2021-12-12 来源:互联网
目录
  • 1.建立新工程
  • 2.改写程序
  • 3.总结

1.建立新工程

首先点击Project里面的 New uVision Project

然后输入文件名,点击保存即可。

在你命名的project中创造一个汇编程序与c程序

c程序

#include<stdio.h>
extern void Init_1(void);
int main()
{
    Init_1();
    return 0;
}

汇编程序

     AREA    My_Function,CODE,READONLY
    EXPORT Init_1
Init_1
    MOV R1,#0
    MOV R2,#0
LOOP
    CMP R1,#10
    BHS LOOP_END
    ADD R2,#1
    ADD R1,#1
    B LOOP
LOOP_END
    NOP
    END

然后进行设置,点击Debug,勾选Use Simulator,将dialog dll下改为DARMSTM.dll ,将parameter下改为-pSTM32F103ve

注意:parameter中的调试型号要与最初选择的芯片一致

2.改写程序

c语言

#include<stdio.h>
extern int Init_1();
int Init_1()
{
    int x=5;
    return x+100;
}

汇编语言

 IMPORT Init_1
    AREA MYCODE, CODE
    EXPORT __main
__main
    BL Init_1
    END
 

解释:这里的IMPORT Init_1 表示汇编程序里面进口或引入C里面的函数Init_1。

结果

3.总结

通过这次实验,我熟悉了keil5下汇编语言和C语言的混用,既能在C语言里面调用汇编程序,也能在汇编程序里面调用C函数,也更加清楚地了解了寄存器的原理。

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注海外IDC网的更多内容!

【原URL http://www.yidunidc.com/kt.html 转载请说明出处】