【问题标题】:The number of bits in a binary representation of a integer整数的二进制表示中的位数
【发布时间】:2015-05-01 04:31:34
【问题描述】:

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

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

【问题讨论】:

    标签: binary


    【解决方案1】:

    您可以通过执行以下操作找到长度:

    长度 = 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。

    【讨论】:

      猜你喜欢
      • 2018-03-17
      • 1970-01-01
      • 2010-10-15
      • 2015-01-21
      • 2019-02-04
      • 1970-01-01
      • 2016-08-22
      • 2021-10-01
      • 1970-01-01
      相关资源
      最近更新 更多