Keil c51的编译器为什么变得这么慢?

以前点translate-build-rebuild只需要一秒钟完成编译,现在需要十秒甚至更长的时间才完成编译,是怎么回事?

这问题我之前也遇到过,估计是你的keil c的版本问题,现在的keil c9.0应该没有这个问题了,你可以试一下。 另外,估计跟你的软件代码的长短也有问题,如果软件代码很大的话,那编译起来也是需要点时间的喔,希望能帮到你!
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-10-30
10秒 - -! 电脑的问题吧

Keil c51的编译器为什么变得这么慢?
这问题我之前也遇到过,估计是你的keil c的版本问题,现在的keil c9.0应该没有这个问题了,你可以试一下。 另外,估计跟你的软件代码的长短也有问题,如果软件代码很大的话,那编译起来也是需要点时间的喔,希望能帮到你!

“Keil C51”下如何让编译器优先使用片内“RAM”?
另一方面,C51编译器能够识别程序中使用频率最高的变量,在可能的情况下,即使程序中并未将该变量定义为寄存器变量,编译器也会自动将其作为寄存器变量处理。被定义的变量是否真正能成为寄存器变量,最终是由编译器决定的。\\x0d\\x0a\\x0d\\x0a5内存访问杂谈\\x0d\\x0a 1指钟\\x0d\\x0a指钟本身是一个变量,其中存...

gcc编译器和嵌入式keil的C51编译器有什么不
前者是通用的C语言编译器,后者相当于是个定制版。C51中定义了一些原先C语言中没有的类型以及寄存器定义、同时鉴于单片机通常只有几KB的内存空间进行了代码生成量优化,专门用于单片机的开发,这些都是在GCC这样标准的ANSI C编译器中所没有的。

keil c51用汇编语言编程用法一样么
C编译的时候。会多出一些东西来是正常的。因为 编译器 不是针对某一个MCU来做的。所以,它在编译的时候往往会参考INTEL的芯片结构来做。你可以找一些C语言编译优化等资料来看看。写程序的时候,把运算的代码尽可能的分行来写,特别是IF等语句不要执行带运算的判断。少一个跳转的情况。尽量的少使用乘...

keil c51问题,那程序前面没有绿色的代表没有执行吧,为什么调试不执行...
可能是优化导致程序的运行过程与你的源代码并不能严格对应。你可以查看生成的汇编,应当是符合你的预期流程的,只不过编译器自动将一些可以合并的代码段合并了。例如你每个函数中都有完全相同的代码块,这正是优化大显身手的机会。代码级的调试应当以看汇编为主、源码为辅。

为什么keil软件在编译程序时出现 MODULE: D:软件安装KEIL软件C51LIBC51S...
你的KEIL是未注册版本,所以code最大限制是2K,也就是0800H,去找个注册机注册一下就可以了。至于C51LIBC51S出现,只不过是因为它的代码正好横跨在2K这个门槛上,比较倒霉罢了。

keil c51软件的作用是什么?
编译程序,是单片机C语言的主要编译工具

keil c51 sbit为什么放到主函数外面
就是为了给寄存器(位或字节)取个别名,是在函数没有编译之前必须完成的,放在主函数中就是编译中要处理的内容了,对于那些符号地址,C编译器不认识,有的名字也不允许(如P1.1),必须在编译之前进行替代,就是sbit声明,替代的内容为相应单片机寄存器的头文件里边定义的,如REG51.H ...

在Keil C51软件用汇编时,编辑的程序出现“UNDEFINED SYMBOL”的错误...
可能原因:你没有选好芯片(即目标设备),编译器会根据你选的芯片,进行编译连接。P0,P1口都是在一个预定义文件里定义过的。也有可能是你的这个预定义文件丢失了。造成编译时,不认识P0,P1。

keil4 c51 能够直接处理4字节变量吗
编译器支持对 signed\/unsigned long 型数据的处理。付出的代价是编译时会向程序中加入相应的库,有时候会让编译后的程序变得臃肿无比……

相似回答