最近看视频看到原码、补码和反码的转换,感觉还挺有意思的,下面跟着小编一起来看一下吧:

整数

首先先来看一个例题:
X=0110
[X]原=0 0110
[X]反=0 0110
[X]补=0 0110
[X]移=1 1001

X=-0110
[X]原=1 0110
[X]反=1 1001
[X]补=1 1010
[X]移=0 0101

由题可以看出:

整数类型 原码 反码 补码 移码
正整数 0+本身 0+本身 0+本身 补码各位取反
负整数 1+本身 1+各位取反 反码加1 补码各位取反
小数

例题:
X=0.1011
[X]原=0 1011
[X]反=0 1011
[X]补=0 1011

X=-0.1011
[X]原=1 1011
[X]反=1 0100
[X]补=1 0101

所以:

小数类型 原码 反码 补码
正小数 0+小数位 0+小数位 0+小数位
负小数 1+小数位 1+小数位取反 反码加1