基本情報技術者試験 - 令和5年12月修了 - 問1

負数を2の補数で表すとき,8ビットで表現できる整数の範囲は10進数でどれか。
ア0~255
イ-127~127
ウ-127~128
エ-128~127
答え : エ
分野 : テクノロジ系 › 基礎理論 › 基礎理論 › 離散数学
同一問題 : 〔令7修1問1〕〔平27修1問3〕
解説 :
コンピュータが負の数を表現する方法の一つに「2の補数」があります。2の補数を使うと,足し算の回路だけで引き算も実現できるため,多くのコンピュータで採用されています。8ビットで2の補数表現を使う場合,正の数は0から127まで,負の数はマイナス128からマイナス1までを表すことができます。

これは,8ビットで表せる256通りのパターンのうち,先頭のビットが0であれば正の数(0から127),先頭のビットが1であれば負の数として扱われ,負の数の範囲がマイナス128からマイナス1までとなるためです。したがって,全体として表現できる範囲はマイナス128から127までとなり,正解は「エ」です。

「ア」は符号なし整数として扱った場合の範囲であり,負数を表現する2の補数の考え方とは異なります。「イ」と「ウ」はいずれも範囲の対称性を誤って捉えたもので,2の補数表現では正の数と負の数で表現できる個数が1つずれる(負の数の方が1つ多く表現できる)という特徴を正しく反映していません。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる