gpt4 book ai didi

decimal - 计算存储十进制数所需的位数

转载 作者:行者123 更新时间:2023-12-02 06:23:10 25 4
gpt4 key购买 nike

Consider unsigned integer representation. How many bits will berequired to store a decimal number containing:

i) 3 digits ii) 4 digits iii) 6 digits iv) n digits

我知道无符号整数的范围是 0 到 2^n,但我不明白表示数字所需的位数如何取决于它。

最佳答案

那么,您只需计算每种情况的范围并找到高于该范围的 2 的最低幂即可。

例如,在 i) 中,3 位十进制数字 -> 10^3 = 1000 个可能的数字,因此您必须找到高于 1000 的 2 的最低幂,在本例中为 2^10 = 1024 (10位)。

编辑:基本上,您需要找到可能的数字与您拥有的位数,然后找到位数(在其他基数中,在本例中为基数 2,二进制)至少具有与十进制数相同的可能数字。

计算给定位数的可能性数量:possibilities=base^ndigits

因此,如果您有 3 位十进制数字(以 10 为基数),则您有 10^3=1000的可能性。然后你必须找到二进制数(位,基数为 2),使得可能性的数量至少为 1000,在本例中为 2^10=1024 (9 位数字不够,因为 2^9=512 小于 1000)。

如果你概括这一点,你有:2^nbits=possibilities <=> nbits=log2(possibilities)

应用于 i) 给出:log2(1000)=9.97由于位数必须是整数,因此必须将其四舍五入为 10。

关于decimal - 计算存储十进制数所需的位数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7150035/

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