x=(unsigned int)(a[0]&0x20) 这句为什么是代表对32求余的意思?

[复制链接]
4049|14
 楼主| 鸟鸟 发表于 2007-7-22 22:02 | 显示全部楼层 |阅读模式
xwj 发表于 2007-7-22 22:11 | 显示全部楼层

肯定错了

其中没有“对32求余的意思”
HotPower 发表于 2007-7-22 23:59 | 显示全部楼层

不解~~~

ayb_ice 发表于 2007-7-23 07:33 | 显示全部楼层

是老外告诉你"代表对32求余的意思?"...

jimoom 发表于 2007-7-23 09:23 | 显示全部楼层

这样才是求余吧?

这样才是求余吧?
x = (unsigned int)((a[0] >> 3) % 0x20);
古道热肠 发表于 2007-7-23 09:36 | 显示全部楼层

这样才是求余吧?

 x=(unsigned int)(a[0]&0x1F),鸟鸟你别给大伙放“鸽子”。
 楼主| 鸟鸟 发表于 2007-7-23 09:48 | 显示全部楼层

x=(unsigned int)(a[0]&0x1F)

古道热肠 发表于 2007-7-23 09:52 | 显示全部楼层

为什么,地球人都知道。

hqgboy 发表于 2007-7-23 10:00 | 显示全部楼层

x = (unsigned int)((a[0] >> 3) % 0x20);

到底是a[0]对32求余还是a[0]>>3对32求余?
computer00 发表于 2007-7-23 10:33 | 显示全部楼层

倒塌...这回对了.

原帖是x=(unsigned int)(a[0]&0x20)...................

对32取余,其实就是保留最低5位......
ayb_ice 发表于 2007-7-23 10:48 | 显示全部楼层

只要2**N的都可以用这种方法...

不过在KEIL C51中用&或%其实是一样的,编译很聪明的...
古道热肠 发表于 2007-7-23 10:58 | 显示全部楼层

哪种写法效率高呢?

 abc_ice还研究过?
 楼主| 鸟鸟 发表于 2007-7-23 12:51 | 显示全部楼层

我有意写错的,被古版发现了

古版,这是你日积月累的经验,还是强烈的数字感告诉你的?
古道热肠 发表于 2007-7-23 13:05 | 显示全部楼层

调试程序调多了就会有感觉的

  写的代码到机器里跑一跑,看看现象,看看代码就能明白错在哪儿了。这种感觉高手都有,就你找不到,还来忽悠大伙。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

54

主题

1581

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部