第1種情報処理技術者試験 1997年度 = 平成9年度 午前 問3

 負数には2の補数を用いる整数表現において、64ビットで表現できる最大の数は10進数で何けたか。必要ならば、log102=0.301を使ってもよい。

ア 18 イ 19 ウ 20 エ 21

解答



解説

 2の補数表現では、最上位ビットを符号ビットとして用います(0…非負/1…負)。nビットであれば、表現できる値は-2n-1 ~ 2n-1 - 1であり、64ビットでは-263-1263 - 1です。
 263に比べて1は小さいから無視できますから、10進数での最大桁数nは、以下のように求められます。
  10n = 263
  log1010n = long10263
  n = 63 log102 = 63×0.631 = 18.963
 得られた値の小数点以下の部分を切り上げた19が正解となります。


BohYoh.comトップページへ