令和2年度 I-2-4

科目: 基礎科目 / 分野: 情報・論理 / 年度: 令和2年度

I-2-4 問題画像

出典:公益社団法人 日本技術士会「技術士第一次試験 過去問題」

6桁の2進数(100110)₂について、2の補数と1の補数をそれぞれ求める問題。補数の定義式(nの補数=nᵏ-X、n-1の補数=(nᵏ-1)-X)を用いた計算が必要。

解説

この問題で問われていること

6桁の2進数(100110)₂について、2の補数(イ)と1の補数(ア)をそれぞれ求める問題。補数の定義式を用いた計算が必要。

解き方

① 1の補数=各ビットを反転、2の補数=1の補数+1
② 100110 を反転 → 011001(1の補数)。+1 → 011010(2の補数)。検算: 38 → 64−38=26=011010、63−38=25=011001
③ ア=011010・イ=011001(②)

正解が正しい理由

(100110)₂を10進数に変換すると32+4+2=38である。2の補数は2⁶-X=64-38=26であり、これを6桁の2進数に変換すると(011010)₂となる。1の補数は(2⁶-1)-X=63-38=25であり、これを6桁の2進数に変換すると(011001)₂となる(1の補数は元のビット列の各ビットを反転させたものと一致することでも確認できる:100110→011001)。したがってア=(011010)₂、イ=(011001)₂の組合せである②が正しい。

各選択肢について

覚えるべきポイント

1の補数はビット列の各ビットを反転させるだけで求められる(100110→011001)。2の補数は1の補数に1を加えることでも求められる(011001+1=011010)。定義式(nᵏ-X、(nᵏ-1)-X)による計算と、ビット反転による簡便な方法の両方を知っておくと、検算や別解として役立つ。

キーワード: 補数表現、2進数、1の補数、情報・論理

出題履歴

類題(同じ論点の別問題)