中易网

C语言中的位运算符是怎么取反的

答案:2  悬赏:30  
解决时间 2021-02-21 21:45
//如果a = 2,那么二进制位 0 000 0010,~ (a)的二进制就是 1 111 1111.结果不该为-3啊,请问这个位运算符是怎么取反的啊。谢谢!
#include
#include
int main (void)
{
int a = ~(2);
printf ("%d\n",a); //为什么结果是-3
system ("pause");
return 0;
}
最佳答案
a为int类型 通常占4个字节
2的原码:0000 0000 0000 0000 0000 0000 0000 0010
取反: 1111 1111 1111 1111 1111 1111 1111 1101
最高位是1所以是负数,求其原始数据,方法是
再次取反加1(符号位不变)
取反: 1000 0000 0000 0000 0000 0000 0000 0010
加1 1000 0000 0000 0000 0000 0000 0000 0011
所以是 -3
全部回答
~1010的反码是0101 
而负数在计算机中的表示是用补码,-11求补码过程:1011取反->0100加1->0101 
即-11等价于~10 
括号中的是0101
补充说明:是这样的,1010在32位计算机中的存储实际上是00001010,取反后是
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
赴美国参加孩子的毕业典礼如何申请签证,有学
亚麻色的染发剂那种好呢?
四年级上册语文课文天空门
what the do students will may in 排列顺序
浮山县计划生协地址有知道的么?有点事想过去
2008年初中使用那种教材?
中华路/北城路(路口)地址有知道的么?有点事
坚贞( )不挠 既能和前两个和后两个组成词语
判断镁铝锌铁铜五种金属的活动性的依据是
姚家村地址在哪,我要去那里办事
对友人的不舍和激励的名言或诗句
在日照市岚山区安东卫汾水镇开二十九元童装店
那一本小说女主姓木关于金木水火土系,小说
电视购物上卖的一万以下的陀飞轮腕表是真的陀
每月5000能买房吗
推荐资讯
谁帮忙把义务教育pep英语小学三上三下四上四
荔湾港式茶餐厅地址有知道的么?有点事想过去
从金华快递东西到宁波要多久?
搜的五笔怎样打五笔
天仙配里面的七仙女是指天上的哪七颗星星?
2016年2月1日k1562次列车为什么停运了
钻石戒指的吊牌和证书的条形码不一样
冬天怎么防止静电,淘宝上的消除静电手环有用
有一篇勋鹿文是超能力鹿晗回来复仇
吉林省梅河口市能办哪个银行的信用卡?
喜家羊肉米线地址在什么地方,想过去办事
阿莲健身会所香江店地址有知道的么?有点事想
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?