基本情報技術者試験 2003年度 = 平成15年度・秋期 午前 問3

 n ビットのすべてが1である2進数“1111…11”が表す数値又はその数式はどれか。ここで、負数は2の補数で表す。

 ア -(2n -1 - 1)  イ -1   ウ 0   エ 2n - 1

解答

 イ

解説

 2の補数は、すべてのビットを反転(0を1にして、1を0にする)して得られる1の補数に1を加えることによって得られます。
 この表現では、何ビットであっても、すべてのビットが1である数は-1です。8ビットを例にとって、確認してみましょう。

   ┌─┬─┬─┬─┬─┬─┬─┬─┐    │0│0│0│0│0│0│0│1│  +1  (正の数)    └─┴─┴─┴─┴─┴─┴─┴─┘         ↓ 全ビットを反転    ┌─┬─┬─┬─┬─┬─┬─┬─┐    │1│1│1│1│1│1│1│0│  -2  (1の補数では-1)    └─┴─┴─┴─┴─┴─┴─┴─┘         ↓ 1を加える    ┌─┬─┬─┬─┬─┬─┬─┬─┐    │1│1│1│1│1│1│1│1│  -1    └─┴─┴─┴─┴─┴─┴─┴─┘



BohYoh.comトップページへ