原码和补码

我不想介绍什么原码和补码的概念,只是为了自己重拾编程的一点小积累。

原码:原码表示法在数值前面增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小。

正数的原码为其本身,负数的原码是取绝对值后将最高位变1;

如何计算补码呢?

正数的补码为其本身;负数的补码,符号位不变,数值位各位取反,最后末位加1;

如何用补码计算原码?

正数的原码、补码都为其本身当然不需要进行计算。

负数知道补码之后可以利用补码的补码就是原码来进行计算;

另外我之前通过补码计算原码时一般是适用将补码最后一位减一,然后除符号位之外各位取反,这个方法用过很多次都能得出正确的结果,但是实际对不对还是有请各位大神来进行指正,进攻讨论。

原文地址:https://www.cnblogs.com/JSD1207ZX/p/9386300.html