整数补码的求法

一.什么是补码?

  计算机中的符号数有三种表示方法,即原码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位,三种表示方法各不相同。在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值域统一处理;同时,加法和减法也可以统一处理。此外,补码与原码相互转换,其运算过程是相同的,不需要额外的硬件电路。(摘自百度百科)

二.补码的求法

1.正数:一个正数的补码就是它本身的二进制形式。
2.负数:先将该负数取绝对值,然后将取得的绝对值写成二进制形式,对各二进制位按位取反,最后加1。

下面分别举正数和负数的列子来说明此方法(以8位的补码为例)

①求5的补码

5的补码即为它的二进制形式:00000101

②求-5的补码

1.先将-5取绝对值然后写出其二进制形式

00000101

2.按位取反

11111010

3.加1

11111011

③求-10的补码

1.先将-10取绝对值然后写出其二进制形式

00001010

2.按位取反

11110101

3.加1

11110110




你可能感兴趣的:(C,&&,C++)