首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >整数的二进制表示形式中的位数

问整数的二进制表示形式中的位数
EN

Stack Overflow用户
提问于 2015-05-01 03:53:15
回答 1查看 1.2K关注 0票数 0

问:正整数n的二进制表示的长度(位数)是多少?

我知道一个正整数可以用以2为底的和用二进制表示,但我不确定如何找到任何正整数n的二进制表示的长度

EN

回答 1

Stack Overflow用户

发布于 2015-05-01 04:22:20

您可以通过执行以下操作来确定长度:

长度= ceil(log(N + 1)/log(2));

这就是长度是N的以2为底的对数的上限,因为我记不住以2为底的对数函数名,所以我做了上面的等价物。你需要N+1才能正确地说明N是2的直接幂,因此需要额外的一位来表示它。示例N=8= 1000,以二进制表示。8的对数底2是3,3的上限是3,但9的对数底2是3.16993,3.16993的上限是4。

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

https://stackoverflow.com/questions/29976635

复制
相关文章

相似问题

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