C语言中整型数-32768补码怎么表示?????

2025-05-23 14:48:46
推荐回答(5个)
回答1:

算补码的方式:正数的补码是器本身;而负数的补码要取反加1,且符号位不变;
-32768的补码算法:我们先算-32768的二进制数是1000 0000 0000 0000(注意这里的最高位是符号位哦,之所以是这个数是因为溢出的原因);取反就是 1111 1111 1111 1111(最高位符号为不变的哦),再加1,得到1000 0000 0000 0000(符号位还是不变的哦),注意了最高位是符号位哦。
好了不知道你懂了没。

回答2:

原因如下:
系统编译器只对语法错误进行检查,如有则报错。
整型数据的取值范围是-32768~32767,但在赋值时可以赋任何大小的值(甚至是实数),只是在赋值过程中会根据数据的二进制情况进行截取,当然得到的结果并不是乱码,而是将原数据的低16位截取赋值给整型变量,进行输出,不属于语法错误,当然不会报错。

回答3:

C语言中整型数-32768补码
16位二进制补码:

1000000000000000
32位二进制补码:
11111111111111111000000000000000

回答4:

负数的补码为对应正数的补码按位取反加1.。。。

回答5:

负数计算机编译的时候自动转换成补码的形式存储不需要人为转换!