令和4年度 秋期 応用情報技術者試験 午前 問1
テクノロジ/基礎理論a を正の整数とし,b=a² とする。a を2進数で表現すると n ビットであるとき,b を2進数で表現すると最大で何ビットになるか。
出典:令和4年度 秋期 応用情報技術者試験 午前 問1
- アn+1
- イ2n
- ウn²
- エ2ⁿ
正解:イ
解説
n ビットで表せる最大の整数は a=2ⁿ−1 です。b=a²=(2ⁿ−1)²=2²ⁿ−2ⁿ⁺¹+1 は 2²ⁿ 未満なので,2進数で表現すると最大でも 2n ビットに収まります。例えば n=3 のとき a=7,b=49 で,49 は6ビット(110001)で表せます。
選択肢ごとの解説
- ア誤り。n+1 ビットになるのは a+a=2a のような加算(2倍)の場合です。2乗では桁数が約2倍になります。
- イ正しい。a<2ⁿ より a²<2²ⁿ なので,b は最大でも 2n ビットで表現できます。
- ウ誤り。ビット数が n² になるわけではありません。2乗によって増えるのは値であって,ビット数は約2倍にとどまります。
- エ誤り。2ⁿ は n ビットで表せる値の個数(またはおおよその最大値)であり,b のビット数ではありません。