3dh

由补码求真值,是非常简单的事。

你既不用求“反码原码”,也不用想着“符号位不变”。

“取反加一”或“减一取反”,都是不需要的。

你就直接进行数 制 转 换即可。

---------------------

补码是 87H = 1 000 0111。

首位?1,既代表了负号,也代表数值-128。

其余都是正数:4 + 2 + 1 = 7。

求总和,立刻就求出真值:-128 + 7 = -121。

---------------------

八位补码是 3DH = 0?011 1101。

首位是?0,这没有什么可说的了。

其余各位之和:32 + 16 + 8 + 4 + 1 = 61。

真值就是:+61。

---------------------

补码是 0B62H =?0?000 1011 0110 0010。

首位是?0,这没有什么可说的了。

其余各位之和:2048 + 512 + 256 + 64 + 32 + 2 = 2914。

真值就是:+2914。

---------------------

补码是?3CF2H =?0?011 1100 1111 0010。

各位之和:15602。

真值就是:+15602。

---------------------

由补码求真值,你只需要做“各 位 求 和”。

简不简单?

意不意外!