首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >新编程-它需要17位来存储5位数字-怎么做?

新编程-它需要17位来存储5位数字-怎么做?
EN

Stack Overflow用户
提问于 2014-08-28 16:46:52
回答 5查看 543关注 0票数 0

我读过这个问题,它说要用17位来存储5位数字,这怎么可能?以下是我的理解:

我使用了跟随计算器并输入了数字99999。

我得到了一个巨大的数字:

11000000111001110000110100111111100001101001111111000011010011111

据我所知,每个01都代表了一点。正如你所看到的,有超过17位!

我是不是理解错了?

此外,还指出:

“现在,第一个允许你适应99999位数的二进制值是131072,”

哈?我以为二进制值只有0和1?我在这里错过了什么?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2014-08-28 16:55:19

99 999的二进制数是11000011010011111,就像你的计算器说的那样。我不知道你输入了什么,但很明显你在某个地方做了一个错误。

17位可以存储最多2^17的数字,因此= 131072,而16位只能存储最多2^16 = 65536。

所以你至少需要17位来存储99 999,而不是更多,也不是更少。

票数 3
EN

Stack Overflow用户

发布于 2014-08-28 16:50:20

2^16 = 65,536,所以要捕获每5位数字,就需要2^17 = 17位。

关于“第一个二元值.”的部分对我来说毫无意义

票数 2
EN

Stack Overflow用户

发布于 2014-08-28 16:51:54

嗯,16位可以存储一个与2^16 - 1 = 65535一样高的数字。这是假设无符号数字(非负),这意味着它不足以表示5位数字的十进制数。

使用17位,您可以得到与2^17 -1 = 131071一样高的无符号数字。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25554001

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档