为什么c语言中-10>>2+3的值为-1

日期:2021-05-29 16:08:43 人气:1

为什么c语言中-10>>2+3的值为-1

1、做这个题,首先要知道,整数在计算机中是用补码来存放的。

以一个字节整数为例:

  • -10 的原码为 10001010       第一位是符号位(1表示负数,0表示正数),其余位表示数值

  • -10 的反码为11110101        符号位不动,其余位按位取反

  • -10的补码=反码+1= 1 1110101 +1 = 111101

    A+
热门评论