fjstcmcu 发表于 2023-12-24 09:47:07

BL51LX51效果有什么不一样?

380091044 发表于 2023-12-24 10:40:36

不错

LAOXU 发表于 2023-12-24 11:59:17

fjstcmcu 发表于 2023-12-24 09:47
BL51LX51效果有什么不一样?

BL51 是标准连接器 ,LX51是扩展连接器, 功能更强, 语法描述更严谨, 要求更高.

很多 BL51 能通过的 不是很标准的 C 代码,LX51 通不过.

hualuo1987 发表于 2023-12-24 15:42:21

get新知识!

fjstcmcu 发表于 2023-12-25 14:38:12

LAOXU 发表于 2023-12-24 11:59
BL51 是标准连接器 ,LX51是扩展连接器, 功能更强, 语法描述更严谨, 要求更高.

很多 BL51 能通过的...

我想知道他们编译后的目标文件有哪些不一样?

LAOXU 发表于 2023-12-25 17:05:04

fjstcmcu 发表于 2023-12-25 14:38
我想知道他们编译后的目标文件有哪些不一样?

BL51 和 LX51连接器, 不等同 C编译器, C编译器 的好坏, 优化级别的不同, 生成的代码长度明显差别很大.

连接器 的作用, 仅仅 把C编译器 生成的 obj 文件(半成品), 和 相关 LIB 库文件 , 串联组合起来, 生成可执行文件.

假如 编写的 C 程序 非常正规 , BL51 和LX51 连接 后 白目标执行文件, 无差别 (可能内部 C模块的前后位置略有差异) , 效果一样.

LAOXU 发表于 2023-12-25 17:08:31

但 LX51是扩展连接器, 功能更强,比如 编写的 C 程序 不是很正规 , 里面有 未用到的 C函数(子程序),LX51可通过命令, 移除 未使用的 C函数, 缩减程序代码长度, 而 BL51无此项功能.

wpppmlah 发表于 2023-12-26 14:17:24

学习到了,这就是经验啊。{:4_165:}

pangshijz 发表于 2023-12-26 15:22:20

学习了

zhangzhonghua 发表于 2023-12-26 17:27:10

LAOXU 发表于 2023-12-23 06:14
使用说明:

在任意一个 C文件中开始处, 加入以下两个头文件(注意前后次序), 连接器任意, BL51 和 LX51 都 ...

我project中有多个c文件包含了stc8h.h,按此修改为包含stc8h.h之后再包含stc8hm.h,链接错误,提示有重复定义。怎么解决?
页: 1 [2] 3
查看完整版本: STC8 硬件仿真, 一篮子解决方案, 已更新~~~