This commit is contained in:
krahets
2024-04-03 04:41:27 +08:00
parent 20f79f5f32
commit 8591529021
47 changed files with 136 additions and 135 deletions
@@ -24,7 +24,7 @@ comments: true
<p align="center"> 图 3-4 &nbsp; 原码、反码与补码之间的相互转换 </p>
原码 sign-magnitude虽然最直观,但存在一些局限性。一方面,**负数的原码不能直接用于运算**。例如在原码下计算 $1 + (-2)$ ,得到的结果是 $-3$ ,这显然是不对的。
<u>原码sign-magnitude</u>虽然最直观,但存在一些局限性。一方面,**负数的原码不能直接用于运算**。例如在原码下计算 $1 + (-2)$ ,得到的结果是 $-3$ ,这显然是不对的。
$$
\begin{aligned}
@@ -35,7 +35,7 @@ $$
\end{aligned}
$$
为了解决此问题,计算机引入了反码 1's complement。如果我们先将原码转换为反码,并在反码下计算 $1 + (-2)$ ,最后将结果从反码转换回原码,则可得到正确结果 $-1$ 。
为了解决此问题,计算机引入了<u>反码1's complement</u>。如果我们先将原码转换为反码,并在反码下计算 $1 + (-2)$ ,最后将结果从反码转换回原码,则可得到正确结果 $-1$ 。
$$
\begin{aligned}
@@ -57,7 +57,7 @@ $$
\end{aligned}
$$
与原码一样,反码也存在正负零歧义问题,因此计算机进一步引入了补码 2's complement。我们先来观察一下负零的原码、反码、补码的转换过程:
与原码一样,反码也存在正负零歧义问题,因此计算机进一步引入了<u>补码2's complement</u>。我们先来观察一下负零的原码、反码、补码的转换过程:
$$
\begin{aligned}