diff --git a/published/20221026.0 ⭐️⭐️⭐️ Doing 64-bit math on a 16-bit system.md b/published/20221026.0 ⭐️⭐️⭐️ Doing 64-bit math on a 16-bit system.md index e7597b2165..4630edf724 100644 --- a/published/20221026.0 ⭐️⭐️⭐️ Doing 64-bit math on a 16-bit system.md +++ b/published/20221026.0 ⭐️⭐️⭐️ Doing 64-bit math on a 16-bit system.md @@ -42,7 +42,7 @@ 第一种是无符号unsigned整型,其使用了所有的位来表达一个正数。无符号整型的值域为从 `0` 到 $2^{位长} - 1$。例如,8 位数可以是 `0` 到 `255` 之间的任意值,而 16 位数则在 `0` 到 `65535` 之间,以此类推。 -有符号整型也很类似。不同之处在于数字的最高位代表了这个数是一个正数(`0`)还是一个负数 (`1`)。有符号整型的值域前半部分为正数,正数值域是从 `0` 到 $2^{(字长 - 1)} - 1$。整型值域的后半部分为负数,负数值域则从 $0 - (2^{位长 - 1})$ 到 `-1`。 +有符号整型也很类似。不同之处在于数字的最高位代表了这个数是一个正数(`0`)还是一个负数 (`1`)。有符号整型的值域前半部分为正数,正数值域是从 `0` 到 $2^{(位长 - 1)} - 1$。整型值域的后半部分为负数,负数值域则从 $0 - (2^{位长 - 1})$ 到 `-1`。 比如说,一个 8 位数代表着 `0` 到 `127` 之间的任意正数,以及 `-128` 到 `-1` 之间的任意负数。为了能更好的理解这一点,想象 **字节** 为一列数组 `[0...127,-128...-1]`。因为 `-128` 在数组内紧跟着 `127`,`127` 加 `1` 等于 `-128`。当然这可能看起来有点奇怪甚至反常,但这其实让这个层级的基本数学运算变简单了。