keil 软件的不足
来源:百度文库 编辑:神马文学网 时间:2024/04/28 08:08:37
一、
<<= 和 >>= 是C语言表准中的运算符,可是在keil中貌似就不是那么回事了。我用
a = 0x23;
low = a & 0x0f; //取低四位
a >>= 4; //高位移到低位
high = a & 0x0f; //去移到低位的高四位
结果 low 等于4,但high却莫名其妙地等于0,我很不解,<<= 和 >>= 可都是C语言的运算符啊!
为什么结果不是预料的呢?也许在头文件 intrins.h 中 _cror_( ) _irol_( ) 等会给我们答案,这些是循环左移或循环右移函数,既然keil c51的头文件有他们,就说明有他们的必要。我不知道为什么上面的方法不行,但我知道下面的方法可以
a = 0x23;
low = a & 0x0f;
a = _cror_(a,4);
high = a & 0x0f;
我用这种方法得到了a的高四位和低四位,我对它的解释是keil 不支持第一种方法,因为这是keil ,它是给MCU编程的。
二、
65 + 3 和 'A' +3 有区别吗?在keil里面貌似有,但要分情况,大多数是没有区别的。但当你把ASCII作为整型的一个子集参与算术运算时,结果莫名其妙,你就要考虑把'A'换成65了。
三、
P2^0 = 1; 这语句有错误吗?我是想给单片机的P2.0口赋1,让它为高电平,但你知道Keil怎么说吗?它说systax error
当我用了C51的关键字sbit 后,顺利通过了编译,这时,我才知道为什么有关键字sbit了。
四、
变量的定义,最好不要放在主函数里,我的建议是不要放在主函数里。程序小,编译不会报错;程序大了,编译就会报错。如果你写了一个比较大的程序,而在主函数里又进行了变量定义,这时,你应该考虑把变量定义放在主函数外。变量定义放在主函数外和内,就程序效率和占用内存资源角度来看,他们是没有区别的。所以,我强烈建议把变量定义放在主函数之外。
<<= 和 >>= 是C语言表准中的运算符,可是在keil中貌似就不是那么回事了。我用
a = 0x23;
low = a & 0x0f; //取低四位
a >>= 4; //高位移到低位
high = a & 0x0f; //去移到低位的高四位
结果 low 等于4,但high却莫名其妙地等于0,我很不解,<<= 和 >>= 可都是C语言的运算符啊!
为什么结果不是预料的呢?也许在头文件 intrins.h 中 _cror_( ) _irol_( ) 等会给我们答案,这些是循环左移或循环右移函数,既然keil c51的头文件有他们,就说明有他们的必要。我不知道为什么上面的方法不行,但我知道下面的方法可以
a = 0x23;
low = a & 0x0f;
a = _cror_(a,4);
high = a & 0x0f;
我用这种方法得到了a的高四位和低四位,我对它的解释是keil 不支持第一种方法,因为这是keil ,它是给MCU编程的。
二、
65 + 3 和 'A' +3 有区别吗?在keil里面貌似有,但要分情况,大多数是没有区别的。但当你把ASCII作为整型的一个子集参与算术运算时,结果莫名其妙,你就要考虑把'A'换成65了。
三、
P2^0 = 1; 这语句有错误吗?我是想给单片机的P2.0口赋1,让它为高电平,但你知道Keil怎么说吗?它说systax error
当我用了C51的关键字sbit 后,顺利通过了编译,这时,我才知道为什么有关键字sbit了。
四、
变量的定义,最好不要放在主函数里,我的建议是不要放在主函数里。程序小,编译不会报错;程序大了,编译就会报错。如果你写了一个比较大的程序,而在主函数里又进行了变量定义,这时,你应该考虑把变量定义放在主函数外。变量定义放在主函数外和内,就程序效率和占用内存资源角度来看,他们是没有区别的。所以,我强烈建议把变量定义放在主函数之外。
keil 软件的不足
Keil软件仿真的串口调试技巧
【转帖】Keil的标题“礦ision3”------KEIL的设置 - 资料共享 - 通信...
【转帖】Keil的标题“礦ision3”------KEIL的设置 - 资料共享
Keil C51编写的192x64液晶片驱动程序例子
Multisim.protel.keil c和proteus的区别
转帖:KEIL C编译器常见警告与错误信息的解决办法
Keil C 编译器常见警告与错误信息的解决方法
Keil C51汉字显示的bug问题 - willhu2008的专栏 - CSDN博客
keil c编译器错误与解决方法 - babylon_0049的专栏 - CSDN博客
keil教程1
虚拟内存不足的设置
TeX的不足
脑供血不足的治疗
脑供血不足的食疗
TeX的不足
脑供血不足的治疗
气血不足的调理
脑供血不足的介绍
中国军事的不足
台媒:上海世博不够人性化 软件服务不足
最新keil 8.02完整版信息
最新keil 8.02完整版信息
idata(keil编译器瑕疵)