応用情報技術者試験 応用情報技術者試験 令和4年度秋期 午前1: a を正の整数とし,b = a² とする。a を 2 進数で表現すると n ビットであるとき,b を 2 進数で表現すると最大で何ビットになるか。

応用情報技術者試験 令和4年度秋期 午前
Q 11 / 80
a を正の整数とし,b = a² とする。a を 2 進数で表現すると n ビットであるとき,b を 2 進数で表現すると最大で何ビットになるか。
この問の正解率:73.19%(1,328件)

問題本文

a を正の整数とし,b = a² とする。a を 2 進数で表現すると n ビットであるとき,b を 2 進数で表現すると最大で何ビットになるか。

選択肢

  • .n+1
  • .2n
  • .
  • .2ⁿ

正解

. 2n

解説

2進数のビット数と値の大きさの関係を問う問題。n ビットで表せる正の整数 a の最大値は全ビットが1の場合で 2ⁿ−1、最小値は最上位ビットだけが1の 2ⁿ⁻¹ である。a が最大の 2ⁿ−1 のとき b=a² は (2ⁿ−1)² = 2²ⁿ − 2ⁿ⁺¹ + 1 となり、これは 2²ⁿ より小さいので 2n ビットで表せる。一方 a の最小値 2ⁿ⁻¹ では a² = 2²ⁿ⁻² となり 2n−1 ビット必要なので、a² が必要とするビット数は最大で 2n ビットとなり、正解はイである。

選択肢ごとの解説

  • .n+1 は a を2倍した程度(1ビット増加)に相当し、2乗による桁数の増加を大きく過小評価しているので誤り。
  • .正しい。n ビットの数を2乗するとビット数はおおむね2倍になり、最大で 2n ビットになる。
  • .n² はビット数ではなく値の指数を誤って2乗したもの。例えば n=4 なら 2n=8 で済むところを 16 とする過大評価で誤り。
  • .2ⁿ は n ビットで表せる値の規模そのものであり、ビット数の表現としては桁違いに大きく誤り。

応用情報技術者試験 令和4年度秋期 午前過去問一覧へ戻る・問1