已知a=13,b=6,!a的十进制数值是多少

如题所述

答案:4

a&b是位操作,a和b转换出2进制的值按位进行与操作 具体如下;

a=13=1101(二进制)

b=6 =0110(二进制)

比较:第一位 a为1,b为0,不同为0

第二位 a为1,b为1,相同为1

【转换】:

(一)二进制数转换成十进制数

由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。 例1105 把二进制数110.11转换成十进制数。

(二)十进制数转换为二进制数

十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-09-30

!a的十进制数值是0。

!在C语言里是非运算,而在C语言中只有当一个数为0时才被认为是假,而a=13,说明a是真,那么!a就是假,也就是!a=0。

!代表值得取反,对于整形变量,只要不为0,使用!取反都是0,0取反就是1,就像bool只有真假一样。



扩展资料

C的运算符有以下几类:

1、算术运算符:*-+/%

2、关系运算符: > < == != >= <=

3、逻辑运算符:! && ||

4、位运算符:<< >> ~ | ^ &

5、赋值运算符:=及扩展赋值运算符

6、条件运算符:?:

7、逗号运算符:,

8、指针运算符:*和&

9、求字节数运算符:sizeof

10、强制类型转换运算符:(类型)

11、分量运算符:. ->

12、下标运算符:[]

13、其他:如函数调用运算符:()

本回答被网友采纳
第2个回答  2010-06-22
在计算机中 ,所有的数都是以补码形式存在,即计算机只认识补码
正数的补码是其本身,负数 为取反+1
a的二进制为 00001101,所以!a = 11110010
这些都是计算机内部处理时候的形式 都是补码
转换为人所认识的形式 即原码:
符号为1 即<0
补码到原码 -1取反
得10001110 (符号位在取反时不变)
即-14本回答被提问者采纳
第3个回答  2010-06-22
a的二进制为 00001101,所以!a = 11110010,换算成十进制就是 -114
第4个回答  2012-06-15
当然是0啦
相似回答