调试程序的痛苦莫过于调试汇编语言了~ 实际上对于一个嵌入式软件工程师来说,汇编语言的调试跟C语言的调试如出一辙。当然 ,也有些软件可以用来仿真,例如real view, DS-5等等,但更为普通的情况是啥都没有,接下来,本贴将介绍汇编语言的打印调试。
本帖主要内容有:
1.如何调用C语言的printf() 函数
2.ARM汇编调试案例
一个简单的打印函数,写在c代码当中
test.c :
void my_print(int a)
{
printf("a = %d ", a);
return;
}
调用c函数的汇编代码如下:
my_asm_fun.s:
.text
.align
.thumb
.extern my_print
.global my_asm_fun
.thumb_func
...
mov r0, #1
b my_print // 默认输入参数为r0寄存器,于是可以在标准输出上打印出 a = 1
...
.end