PCはめちゃすごい計算機!?

2022.12.07

皆さんこんにちは!PC修理リペアマスターサンロード青森店です!

以前、5大要素でも説明したのですが、PCは直で我々と同じ言語を出力したり、表示しているわけではありません。

PCは、あくまで、0と1の二つの数字を使って、オンとオフに分けて何をどう命令していくか考えているのです。

今日はそんな、皆さんがPCと同じ気持ちになれるように(?)、機械語がどのように計算されているのかを紹介します!!

論理演算

基本的に上記でも言った通り、PCは2進数で物事を計算し、1をオン0をオフとして捉えます。

もう一つ基礎知識として知っておくべきことは、2進数は一桁だけではありません。一桁だけだったら0と1以外に何も計算できないですからね。

2進数、それも超基本的な8ビットだとして、8桁で表すと、

1  1 1  1     1    1 1    1
128  64 32 16 8 4 2 1

となっており、1桁ごとに2の累乗が増えていきます。
一つ注意点として、一番下の桁は、2ではなく1です。
最下位桁は、2の1乗ではなく、2の”0”乗だからです。

最大で、2の8乗であり、256個の結果を表示することが可能です。

さて、論理演算ということは、8ビットのデータがあったとしても、それ一つだけとは限りません。

11001110と01001111という、データを使って、加算したい、除算したい、乗算したい、などなど様々な計算が必要です。
下4桁ビットを加算したい、上位何桁を〜など計算方法はかなり多彩ですが、今回は、計算が目的ではないので、計算をするにあたってどんな処理をするか確認していきましょう。

上記の2つのデータを使って、例えます。

X:11001110
Y:01001111

この二つのデータを単純に、X=2+4+8+64+128とか、Y=〜〜〜〜〜〜〜〜、X+Y=というように、人間でわかる様に計算してから、2進数に戻す方法もあるのですが、機械は、人間語しゃべれませんし、使えませんので、2進数を使って、そのまま計算します。
1を真、0を偽という判定でPCはとらえます。

☆and(論理積)

計算する桁が、共に1なら、1を表示します
1 1 0 1
1 0  1 1
--------ー
1 0 0 1

☆OR(論理和)

計算する桁のうち、どちらかが1であれば、1を表示します。
1 1 0 0
1 0 1 0
ーーーーーーーーー
1 1 1 0

☆XOR (排他的論理和)

どちらかが1の時だけ、1を表示します
1 1 0 0
1 0 1 0
ーーーーーーーーー
0 1 1 0

☆NOT(否定)

ANDやORに否定をつけると、真が偽に、偽が真になります。
例えばNOTANDですと、
1 1 0 1
1 0  1 1
--------ー
0 1 1 0

となります。

まとめ

いかがだったでしょうか?我々が目で見て感じるもの以上にPCは常に頭を回して、計算しているのです。

そんなスーパーな頭脳を持ったPCを当店では、些細なことから対応します!