base-b 到底是什么意思?

what does the mean of base-b exactly?

我知道如何将基数 b 转换为十进制,但我不明白什么是基数 b。我知道如果我们要转换为 bas 10 然后乘以 base-b(base 5)?

为了理解这一点,我们应该了解数字及其表示形式之间的区别。让我们从(自然)数开始。有两个特殊数字:零和一。零是加法的中性元素(即你可以将零加到任何东西而不改变它),一是乘法的中性元素。每隔一个数字都可以由这两个数字导出。从零开始。然后,随后添加一个。

数字的常用表示法是十进制。然而,这纯粹是任意的,也可以使用任何其他系统。数字 12 没有任何内在要求我们将其写成 12。好消息是所有算术规则都是根据数字本身定义的,而不是根据它们的表示形式定义的。五加六永远是十一。不管你怎么代表他们。你可能已经注意到我在谈论数字时使用数字词,如果我谈论表示形式则使用任何其他表示形式。

好的,所以我们有了我们的号码。现在我们需要一种方法来表示它们。假设我们有三个符号 abc。我们可以将前三个数字分配给它们

a (zero)
b (one)
c (two)

但是我们没有符号了。如您所知,位置数字系统通过引入另一个位置来解决这个问题。然后,像以前一样继续。按顺序分配接下来的几个数字

ba (three)
bb (four)
bc (five)
ca (six)
cb (seven)
cc (eight)

您可能想继续第三个位置:

baa (nine)
bab (ten)
bac (eleven)
...

这个系统的基础是三个(或 ba),因为我们有三个符号。我们可以观察到,第二位的数字代表三的倍数的加法(b.代表three + .c.代表two times three + . ...)表示在基数 ba 中,这是:b. = b * ba + .c. = c * ba + .。这继续到所有位置,您可以概括为由数字 dn ... d1 d0 组成的数字可以用众所周知的公式表示:

n = Sum(i) di * base^i

这个公式背后的直觉是,会有 base 个数字是一位数,base^2 个数字是两位数,依此类推。 di * base^i 项会跳过其中的前几个(第一个数字匹配,然后是第二个,依此类推)。

我们可以在 bac 的示例中检查这一点,它应该是十一:

n = b * ba^c + a * ba^a + c * ba^a
  = one * three^two + zero * three^one + two * three^zero
  = nine + zero + two
  = eleven
  = bac

还记得算术规则适用于数字而不是表示吗?因此,由于我们知道数字的定义(上面公式中的第二行),我们可以使用任何其他数字表示形式。例如小数一:

 n = one * three^two + zero * three^one + two * three^zero
   = 1 * 3^2 + 0*3^1 + 2*3^0
   = 9 + 0 + 2
   = 11 (decimal)

但我们也可以使用其他基地,例如base-8:

 n = one * three^two + zero * three^one + two * three^zero
   = 1 * 3^2 + 0*3^1 + 2*3^0
   = 11 + 0 + 2
   = 13 (octal)

所以基本上,这些系统是通过系统地将数字序列分配给后续数字而自然产生的。转换如此简单,因为位置方程适用于数字,而不是表示。

希望这个回答不是太抽象,对你有所帮助。