在十六进制系统中,n 位数字可以表示多少个值?
How Many Values Can Be Represented With n Digits in Hexadecimal Systems?
我有n = 7
。在十六进制系统中使用 7 位数字可以表示多少个不同的值?
我是这样处理的:
我将 7
的每一位设置为等于 1
。因此,我得到的最大数字是 111 1111 = 16^0 + 16^1 + 16^2 + 16^3 + 16^4 + 16^5 + 16^6
,等于 17895697
。我也认为零是答案的一部分,所以我的范围是 0 to 17895697
,因此,我得到 17895698
个不同的值。但是,我知道在二进制中你会做 2^7 = 128
。它也适用于十六进制吗?如果我这样做,我得到的 16^7 = 268435456
不等于我之前得到的。
我的回答是否正确?如果不是,有人可以解释一下做这道题的正确方法是什么吗?
16^7 是正确答案。为什么?因为对于您添加的每个字符,都有 16 倍于之前的可能性。所以对于 7 个字符,它是 16^7.
考虑二进制 - 2^1,你得到 0 和 1,2 个可能的值。 2^2,你得到 0 到 3 (00,01,10,11),4 个可能的值。
使用十六进制,它有 16^7 个可能的值,即 268,435,456 个可能的值。
这可能是您期望的更简单的解释,但这并不意味着它行不通。
一个十六进制数字可以表示 16 个值之一(0x0 到 0xF,或者 0 到 15,如果您愿意的话),所以 16^7 = 268,435,456 这就是如果您使用所有位可以实现的不同值的数量。
0000 0000 0000 0000 0000 0000 0000
到 1111 1111 1111 1111 1111 1111 1111
.
通式为位数*基^位之和
考虑十进制数。你能用 3 位小数表示的最大数字是多少?最大可能的数字是 9。因此最大数字是:
9*10^2 + 9*10^1 + 9*10^0 = 9*100 + 9*10 + 9*1 = 999
下一个最大的数字是 1*10^3 = 1000
另一种计算小数三位数最大值的方法是取最小的四位数减1。
最小的 4 位小数是 1000 或
1*10^3 + 0*10^2 + 0*10^1 + 0*10^0 = 1000
现在减去 1
1000 - 1 = 999
十六进制数的可能数字是 0..F(值 0..15)
对于 7 位数字,位数范围从 6 到 0。
因此,最大可能的数字是:
15*16^6 + 15*16^5 .... 15*16^0
或者最小的8位十六进制数是#10000000
1*16^7 + 0*16^6 ... + 0*16^0 = 1*16^7
所以 7 位十六进制数的最大可能数是
1*16^7 -1
我有n = 7
。在十六进制系统中使用 7 位数字可以表示多少个不同的值?
我是这样处理的:
我将 7
的每一位设置为等于 1
。因此,我得到的最大数字是 111 1111 = 16^0 + 16^1 + 16^2 + 16^3 + 16^4 + 16^5 + 16^6
,等于 17895697
。我也认为零是答案的一部分,所以我的范围是 0 to 17895697
,因此,我得到 17895698
个不同的值。但是,我知道在二进制中你会做 2^7 = 128
。它也适用于十六进制吗?如果我这样做,我得到的 16^7 = 268435456
不等于我之前得到的。
我的回答是否正确?如果不是,有人可以解释一下做这道题的正确方法是什么吗?
16^7 是正确答案。为什么?因为对于您添加的每个字符,都有 16 倍于之前的可能性。所以对于 7 个字符,它是 16^7.
考虑二进制 - 2^1,你得到 0 和 1,2 个可能的值。 2^2,你得到 0 到 3 (00,01,10,11),4 个可能的值。
使用十六进制,它有 16^7 个可能的值,即 268,435,456 个可能的值。
这可能是您期望的更简单的解释,但这并不意味着它行不通。
一个十六进制数字可以表示 16 个值之一(0x0 到 0xF,或者 0 到 15,如果您愿意的话),所以 16^7 = 268,435,456 这就是如果您使用所有位可以实现的不同值的数量。
0000 0000 0000 0000 0000 0000 0000
到 1111 1111 1111 1111 1111 1111 1111
.
通式为位数*基^位之和
考虑十进制数。你能用 3 位小数表示的最大数字是多少?最大可能的数字是 9。因此最大数字是: 9*10^2 + 9*10^1 + 9*10^0 = 9*100 + 9*10 + 9*1 = 999 下一个最大的数字是 1*10^3 = 1000
另一种计算小数三位数最大值的方法是取最小的四位数减1。 最小的 4 位小数是 1000 或 1*10^3 + 0*10^2 + 0*10^1 + 0*10^0 = 1000 现在减去 1 1000 - 1 = 999
十六进制数的可能数字是 0..F(值 0..15) 对于 7 位数字,位数范围从 6 到 0。
因此,最大可能的数字是: 15*16^6 + 15*16^5 .... 15*16^0
或者最小的8位十六进制数是#10000000 1*16^7 + 0*16^6 ... + 0*16^0 = 1*16^7 所以 7 位十六进制数的最大可能数是 1*16^7 -1