请问下这道C语言的题目是什么意思?

来源:百度知道 编辑:UC知道 时间:2024/05/22 19:26:51
(16位)~12=____ , 012|40=____ ,012&40=____ ,012^40=____ ,012^0x40=____ .

!12=____ ,012&&40=____ ,012||40=____ ,012||ox40=____.

都怎么做啊?看不懂~~~特别是第一个, 知道什么意思~~~~~~~~!!??

位运算啊

12在16位表示为0000 1100
~表示取反,所以结果为1111 0011
再转换成10进制(如果你需要的话)
第一个1是符号位,其他位取反,最后+1,即-000 1101

即(16位)~12= -13就是答案

这是有关位运算的东西,看看位运算方面的东西你就懂了

~表示取反,|表示逻辑或,&表示逻辑与,^表示异或,!表示非,&&表示与,||表示或

16位)~12=____ , 012|40=____ ,012&40=____ ,012^40=____ ,012^0x40=____

以上都是进行二进制运算,就是把数字转化为二进制再计算.位与(&)、位或(|)、位非(~)、位异或(^).

012是八进制,0x40是16进制,40为十进制.

!12=____ ,012&&40=____ ,012||40=____ ,012||ox40=____.
以上为逻辑运算,非(!),与(&&),或(||)

我只能告诉你这么多了,本来想帮你算一下,可是我嫌麻烦