C语言按位与怎么运算?

2024-11-29 10:59:02
推荐回答(4个)
回答1:

计算两个数x,y相与的结果。
代码写作x&y
先将x与y分别写成二进制bit形式~~
例如计算10&30
10二进制为1010
30为11110
然后从低位开始,每个bit分别作与运算~~
其中bit的与运算,除了1&1=1外,其余组合结果均为0
故10&30=01010,即1010。。。

回答2:

| //按位或 有1得1 二元/二目
& //按位与 有0得0 二元/二目
^ //按位异或 相同得零 二元/二目
~ //按位求反 一元/一目

回答3:

因为你赋值a是0开头, 他是八进制数,而a1 是十进制数
所以你要把八进制数0110101 (==十进制数36929)变成 二进制数 00001001000001000001
把 a1 变成 11110110110100111001, 然后再进行运算
左右移要是不懂就百度 ’左移运算符’

回答4:

注意a的初始化是八进制数,十进制表示是36929,同理a1是十进制数
两个数看起来是二进制,但是都必须重新转换为二进制进行位运算