您的位置 首页 测评

C言语程序履行的第一条指令,并不在 main 函数中

C语言程序执行的第一条指令,并不在main函数中。当我们生成一个C程序的可执行文件时,编译器总是在我们的代码前加一段固定的代码——crt0.o…

C言语程序履行第一条指令,并不在main函数中。当咱们生成一个C程序的可履行文件时,编译器总是在咱们的代码前加一段固定的代码——crt0.o,它是编译器自带的一个文件。此段代码设置C程序的仓库等,然后调用main函数。很可惜,在咱们的裸板上,这段代码无法履行,所以咱们得自己写一个。这段代码很简单,只要3条指令。crt0.s代码:

1 .text

2 .global _start

3 _start:

4ldrsp,=1024*4@设置仓库,留意:不能大于4k(栈区是向下增加的)

@nand flash中的代码在复位后会主动

@移到内部RAM(stepping stone)中,它只要4k

5blmain@调用C程序中的main函数

6 halt_loop:

7bhalt_loop

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ceping/275383.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部