原码、反码、补码 Posted on 2017-11-23 | Edited on 2018-12-30 | In CS Basics 原码 123#很直观的,以8位表示一个数00000001 # 110000001 # -1 反码 1234#正数数反码=原码#负数反码=符号位(最高位)不变,其余各位取反00000001 # 111111110 # -1 补码 1234#正数补码=原码#负数补码=符号位不变,其余各位取反,然后加100000001 # 111111111 # -1 原理 为了使计算机只有加法运算,所以符号位也要参与运算,就出现了反码。 反码会导致+0,-0, 所以就有了补码,用原来-0的反码来表示-128 表示范围 反码 : [-127, 127] 补码 : [-128, 127]