C语言按位与怎么运算?

如题所述

计算两个数x,y相与的结果。
代码写作x&y
先将x与y分别写成二进制bit形式~~
例如计算10&30
10二进制为1010
30为11110
然后从低位开始,每个bit分别作与运算~~
其中bit的与运算,除了1&1=1外,其余组合结果均为0
故10&30=01010,即1010。。。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-01-16
| //按位或 有1得1 二元/二目
& //按位与 有0得0 二元/二目
^ //按位异或 相同得零 二元/二目
~ //按位求反 一元/一目
第2个回答  2018-01-13
因为你赋值a是0开头, 他是八进制数,而a1 是十进制数
所以你要把八进制数0110101 (==十进制数36929)变成 二进制数 00001001000001000001
把 a1 变成 11110110110100111001, 然后再进行运算
左右移要是不懂就百度 ’左移运算符’
第3个回答  2018-01-13
注意a的初始化是八进制数,十进制表示是36929,同理a1是十进制数
两个数看起来是二进制,但是都必须重新转换为二进制进行位运算

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网