要从自然数(如20)中获得二进制表示,我们将该数字除以2,依此类推,直到不能再除以2。为了从十进制数字(如0.4512)获得二进制表示,我们将该数字乘以2次重复。
为什么用这两个系统得到二进制表示法的逻辑解释是什么?
谢谢
答案 0 :(得分:0)
它基于数字以二进制编码的事实。
如果数字A是整数,则将A重写为A = ∑ i = 0 n-1 a i ×2 i = a n-1 ×2 n-1 + a n-2 ×2 n-2 + ... + a 1 ×2 + a 0
其中a i = 0或1。
很容易看到A是偶数,a 0 = 0,如果它是奇数,则a 0 = 1。因此,我们已经有了最低有效位a 0 。
现在,如果将A除以2,则 0 消失了, A / 2 = a n-1 ×2 n-2 + a n-2 ×2 n-3 + ... + a 2 ×2 + a 1
我们可以根据A / 2的奇偶性来确定a 1 。然后继续,我们得到了A的所有位。
分数根据2的负幂表示。如果A = 0.a -1 a -2 ... a -n ,A = a -1 / 2 + a -2 / 4 + ... + a -n / 2 ^ n
如果将其乘以2,则2×A = a -1 + a -2 / 2 + ... + a -n / 2 ^ n-1 。如果2×A≥1,则必须具有a-1 = 1,否则a-1 = 0。并且我们可以通过连续乘以2来确定其他位是类似的方式。