2進数に関するよくある疑問3つを解明する

2020年3月28日

IT関係の業種に就く方は基本情報技術者試験の勉強などを通して2進数の勉強をします。

その際によく疑問とされることを3つあげ、解説しました。深いところまで調査した上で説明していますので、目次の中で知っている項目があったとしても読むことで新しい発見があるでしょう。

そもそもなぜ2進数を使うのか

コンピュータの根本はピンという部品です。コンピュータはピンに電気が流れているか、流れていないかを読み取り、情報として認識します。

ちなみにピンは以下の画像の赤枠で囲われたものです。

この赤枠の中にある銀色の棒一本一本がピンです。他にもこの黒い正方形(ICという部品)の裏にもたくさんのピンがあります。

ピンに電気が流れているか流れていないかの2パターン、これを表すためにぴったりなのが2進数だからコンピュータの世界では2進数が使われるのです。

ピン1つで2進数の一桁、2つで2桁表せることになります。

補数の作り方の謎

マイナス記号を使わずにマイナスの値を表すために存在する補数。その補数の作り方は「2進数で表された各桁の数値を反転させた値に1を足す」です。

例として「0011」の補数を作る流れを載せておきます。
①反転「1100」②1を足す「1101」(完成)

ではなぜこのような手順をさせるのでしょうか?

その答えは「元のプラスの値と足し合わせて桁あふれをさせた上で0を作る」ための数を作るためです。

先ほど例で出した「0011」の場合で考えてみましょう。

「0011」に補数「1101」を足してみます。すると「10000」になりますが、コンピュータは溢れた桁は無視します。つまり5桁目の1は無視されて「0000」になります。足し合わせた結果、値は0になりました。

キーワードは桁あふれ&0です。覚えておきましょう。

論理和や論理積の「論理」って何?

論理の意味を分かりやすくするために、反対を考えてみましょう。論理和や論理積の反対は単純な和と積です。

和と積の場合は算術演算と呼ばれます。算術演算の場合は全ての桁全体を見て演算を行います。その結果桁上がりをあります。

それに対して論理和や論理積は各桁ごとに判断します。そのため桁上がりしません

まとめると、論理とは「桁上がりをする算術演算と区別し、各桁ごとに演算をすることを指している」ということになります。

参考ページ:【5分で覚えるIT基礎の基礎】あなたは論理演算がわかりますか?

まとめ

2進数を知ってどんな意味があるのか?そう思う方は多いかもしれません。しかし簡単な計算処理の中でも2進数を知っていたからこそ解決できた問題がいくつかありました。2進数について深く知っておきましょう。あなたにも思わぬところで役に立つ日が来るはずです。

この記事を書くに当たって参考にした書籍は以下になります。この記事では紹介していない2進数のコンピュータ内での使われ方を知りたい方におすすめです。

この記事を読んだ方におすすめの記事