赋值一个数,结果不等于那个数,毁我三观

2020-01-18 18:47发布

最简单的代码 居然会这样,求解为什么?
编译环境 C51v952

QQ截图20160108190305.png (65.34 KB, 下载次数: 0) 下载附件 2016-1-8 19:03 上传

EEPROM单字节操作例程.rar (23.61 KB, 下载次数: 11) 2016-1-8 19:03 上传 点击文件名下载附件
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
40条回答
glacier1
1楼-- · 2020-01-20 14:14
明显是溢出了啊。
gamalot
2楼-- · 2020-01-20 18:33
 精彩回答 2  元偷偷看……
Squall001
3楼-- · 2020-01-20 21:05
gamalot 发表于 2016-1-8 22:37
很正常的优化啊,最后得出的结果是正确的就行了 ......

明显不正确撒
gamalot
4楼-- · 2020-01-20 23:49
Squall001 发表于 2016-1-8 22:37
明显不正确撒

哪里不正确了?!

gmajvfhpa
5楼-- · 2020-01-21 01:30
编译器很聪明,它知道aa1赋值后会左移8位,所以赋值时,只赋低8位,高8位它根本不管它。软件仿真时,高8位默认值为0,低8位赋了0xE8(1000=0x3E8)
i7gly
6楼-- · 2020-01-21 01:49
楼主,对你好无语啊。这么低级错误不能怪编译器。程序员自己输入的时候都不按套路走。

一周热门 更多>