作者CaptainH (Cannon)
看板TransCSI
标题Re: [问题] 两题数字系统的问题
时间Tue Aug 21 15:57:56 2012
※ 引述《yunruo ()》之铭言:
: 大家好
: 想请问两题关於数字系统的问题
: 第一题
: 用 n 个 bits 以 1 的补数法表示整数,其范围
: A. -2^(n-1) -> 2^(n-1)
: B. -2^(n-1)-1 -> 2^(n-1)-1
: C. -2^n-1 -> 2^n
: D. -2^(n-1)-1 -> 2^(n-1)
: E. -2^(n-1) -> 2^(n-1)-1
: Ans: A (这题是不是错了呢?
MSB (最高位的 bit) 用来代表正负号, MSB 之後的 n-1 bits 用来表示数值
范围从 10000...0 ~ 011111...1 (二进位)
-[ 2^(n-1)-1 ] ~ 2^(n-1)-1 (十进位)
没有答案
: 第二题
: 一个 10 进位数字有 30 个 digit,则它的二进位表示大约有多少个 digit?
: A. 30
: B. 60
: C. 90
: D. 120
: E. 150
: Ans: C
: 谢谢
假设这数字是 n, 则 10^29 <= n < 10^30
两边同取 log2, 29*log2(10) <= n < 30*log2(10)
96.xxx <= log2(n) < 99.xxx
( log2(10) = 1 / log10(2) ~= 1/0.3010 ~= 3.3xxx )
所以 n 用二进位表示大约要 97~100 bits, 选 C.
或是用估的, 2^10 = 1024 ~= 10^3
所以 10^30 = (10^3)^10 ~= (2^10)^10 = 2^100 ==> 选 C
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 120.126.194.178
※ 编辑: CaptainH 来自: 120.126.194.178 (08/21 16:01)
1F:推 yunruo:1的补数中全为1不是代表0吗? 08/21 16:45
2F:→ yunruo:第二题 需要 97~100bits的话 不是应该选D? 08/21 16:46
97~100应该离90比较近吧
※ 编辑: CaptainH 来自: 120.126.194.178 (08/21 18:00)
3F:推 yunruo:不过选90的话 不就没办法包含所有的可能数字了? 08/21 18:04