gpt4 book ai didi

algorithm - 如何将分数转换为二进制?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:36:59 24 4
gpt4 key购买 nike

我不知道如何将分数转换为二进制。当我搜索它时,有一个解决方案显示:

    1              1
-- (dec) = ---- (bin)
10 1010


0.000110011...
-------------
1010 | 1.0000000000
1010
------
01100
1010
-----
0010000
1010
-----
01100
1010
-----
0010

我不知道如何以及为什么要这样做。

最佳答案

让我们看一下如何将 0.625 的十进制值转换为二进制。

第 1 步:从小数开始乘以 2。结果的整数部分是小数点右边的第一个二进制数字。

Because .625 x 2 = 1.25, the first binary digit to the right of the point is a 1.
So far, we have .625 = .1??? . . . (base 2) .

第 2 步: 接下来我们忽略先前结果的整数部分(在本例中为 1)并再次乘以 2。这个新结果的整数部分是小点右边的第二个二进制数字。我们将继续这个过程,直到我们得到一个零作为小数部分,或者直到我们识别出一个无限重复的模式。

Because .25 x 2 = 0.50, the second binary digit to the right of the point is a 0.
So far, we have .625 = .10?? . . . (base 2) .

第 3 步:忽略之前结果的整数部分(这个结果是 .50,所以在这种情况下实际上没有整数部分可以忽略),我们再次乘以 2。结果的整数部分现在是该点右侧的下一个二进制数字。

Because .50 x 2 = 1.00, the third binary digit to the right of the point is a 1.
So now we have .625 = .101?? . . . (base 2) .

第 4 步:事实上,我们不需要第 4 步。我们在第 3 步中完成了,因为我们在那里将 0 作为结果的小数部分。

Hence the representation of .625 = .101 (base 2) .

小数的 1/10 转换为无限的二进制小数。
在您的问题中,您说十进制的 1/10 等于二进制的 1/1010.1 (1/10) 十进制实际上等于 0.00011001100110011... 二进制。

关于algorithm - 如何将分数转换为二进制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26813782/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com