为什么c语言中-10>>2+3的值为-1
为什么c语言中-10>>2+3的值为-1
日期:2021-05-29 16:08:43 人气:1
1、做这个题,首先要知道,整数在计算机中是用补码来存放的。
以一个字节整数为例:
-10 的原码为 10001010 第一位是符号位(1表示负数,0表示正数),其余位表示数值
-10 的反码为11110101 符号位不动,其余位按位取反
-10的补码=反码+1= 1 1110101 +1 = 111101
为什么c语言中-10>>2+3的值为-1
1、做这个题,首先要知道,整数在计算机中是用补码来存放的。
以一个字节整数为例:
-10 的原码为 10001010 第一位是符号位(1表示负数,0表示正数),其余位表示数值
-10 的反码为11110101 符号位不动,其余位按位取反
-10的补码=反码+1= 1 1110101 +1 = 111101