这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » 请帮助解释由C编译器增加的部分程序的用途?

共2条 1/1 1 跳转至

请帮助解释由C编译器增加的部分程序的用途?

院士
2006-09-17 18:14:16     打赏
请帮助解释由C编译器增加的部分程序的用途?



关键词: 帮助     解释     编译器     增加     部分     程序     用途    

院士
2006-12-22 22:43:00     打赏
2楼
问 采用430F122,C语言编程,在C-SPY中发现,复位后装入PC的地址并不是F000H,而是FA5A,经察看可能是由编译器增加的一段代码,其中调用了_low_level_init,memset,memcpy等几个子程序,请帮忙解释一下他们的功能。

可否通过设置编译选项,屏蔽掉这些代码,使复位后真正从main()开始执行? 1: 它主要是对C语言环境变量初始化,包括清RAM,在C语言中,这个程序是一定有的. 当然可以通过设置它使它什么也不做,但我觉得是没有必要的. 2: 那样的话不就多占FLASH空间了吗? 3: 发现这段程序被称为“CSTARTUP module”,是可以通过自己改写cstartup.s43来实现自己想要的功能或直接有其跳转到main()函数的。
谢谢楼上两位的讨论。

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]