C语言基础题:d1=~a和d5=~c的答案请问是什么?请详细解释一下,谢谢!

 我来答
M丶小民子
2015-12-20 · TA获得超过185个赞
知道小有建树答主
回答量:122
采纳率:0%
帮助的人:99.2万
展开全部
同学,首先要弄清楚"!"跟"~"的区别:!是非,比如!5=0,!0=1;而~是按位取反,假设系统是8位的,八进制的0123对应二进制01010011,取反后是10101100,再转成十进制输出是-84。同理,0按位取反后变成11111111,转成十进制就是-1。
所以d1=-84,d5=-1。
更多追问追答
追问
取反后不得+1么?
追答
你说的取反后+1是原码和补码的相互转换,你弄混了。~是按位取反,就是按位把0变成1,1变成0,不需要再+1的。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式