n是一个整型变量,如果以二进制表示的n从右面数第四位是1 ,那么int ds=(n&8)/8;

[复制链接]
查看11 | 回复1 | 2012-4-20 18:19:30 | 显示全部楼层 |阅读模式
1、先说int ds = (n & 8) / 8这个n从右面数第四位是1,二进制也就是xxxx1000这种形式,n&8,就是xxxx1000 & 00001000这样得到的是00001000(除了1所在的第四位其他位都变成0了),即n & 8的得到的就是8,8 / 8结果是1。2、再说int sd = (n & (1 > 3(n & (1 > 3 跟(n & 8) / 8完全等价,结果还是1,因为1<<3就是把二进制1向左移3位,得到的是1000(十进制是8),同上n & 8得到的还是8,最后再将8的二进制向右移3位,即1000向右移3位得到0001,结果就是1。不论是什么进制的数,其实在计算机中...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行