位置:51电子网 » 技术资料 » 单 片 机

C51函数名的转换

发布时间:2016/7/14 20:08:30 访问次数:551

   在Keil C51中,编译器对C语言程序中的函数会自动地进行转换,转换规则见表6.5。

   函数名和段属性的命名规则

   利用函数调用进行混合编程时需对Keil编译器的编译过程做些了解。Keil编译器的编译过程是:EPL2014-271MLC首先将项目中的源文件编译为目标代码(.o砀文件),然在再通过连接器产生为最终可执行的hex文件。其中,目标代码将其中的代码、数据、常量放在不同的“段”中,保存程序的段称为“代码段”,保存数据的段称为“数据段”,最终目标代码经过Keil的连接器按照“段”的要求转换为程序和数据地址固定的可执行文件。“段”按定位属性分为:“可重定位段”和“绝对段”。

    

   表65 混合编程函数转换规则

   可重入函数固定存储位置传递参数的函数

   可重定位段:程序和数据在其分别所对应的存储单元(FLAsH和RAM)中的存储地址是浮动的、可重定义的、相对可变的。绝对段:其地址在连接前就已确定不变,连接器据此为它分配地址。

段的命名格式随存储器模式的不同有所变化,其命名规则见表6.6。



   在Keil C51中,编译器对C语言程序中的函数会自动地进行转换,转换规则见表6.5。

   函数名和段属性的命名规则

   利用函数调用进行混合编程时需对Keil编译器的编译过程做些了解。Keil编译器的编译过程是:EPL2014-271MLC首先将项目中的源文件编译为目标代码(.o砀文件),然在再通过连接器产生为最终可执行的hex文件。其中,目标代码将其中的代码、数据、常量放在不同的“段”中,保存程序的段称为“代码段”,保存数据的段称为“数据段”,最终目标代码经过Keil的连接器按照“段”的要求转换为程序和数据地址固定的可执行文件。“段”按定位属性分为:“可重定位段”和“绝对段”。

    

   表65 混合编程函数转换规则

   可重入函数固定存储位置传递参数的函数

   可重定位段:程序和数据在其分别所对应的存储单元(FLAsH和RAM)中的存储地址是浮动的、可重定义的、相对可变的。绝对段:其地址在连接前就已确定不变,连接器据此为它分配地址。

段的命名格式随存储器模式的不同有所变化,其命名规则见表6.6。



热门点击

 

推荐技术资料

硬盘式MP3播放器终级改
    一次偶然的机会我结识了NE0 2511,那是一个远方的... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!