コンピュータはどうやってコードを読む?

バイナリ

 コンピュータは、オンとオフのふたつの状態を持つ電気回路を使って、情報を処理するけれど、コンピュータ科学者は、オンとオフの状態を表すのに、数字の1と0を使う。

 この1と0の列は、バイナリまたは機械語というエンコードの一種だ。

 バイナリには、0と1のどちらかの数字しかない、と覚えておけばわかりやすい。

 バイナリでは、数字の1と0が使われることが多いけれど、実は「オン」と「オフ」とか、「○」と「×」で表したってかまわない。

 単語、数値、文字、記号、画像、動画、プログラム、絵文字、音楽は、みんなバイナリで表現できるのだ。

 コンピュータのCPUは、機械語で書かれた命令しか読めない。

 だから、人間がコンピュータにプログラムを入力したあと、コンピュータプログラムは必ず、バイナリ形式の機械語に変換されるのだ。プログラムを機械語に変換する(置き換える)プロセスのことをコンパイルという。

 画面上に「Hello, World!」と出力するのに、どのプログラミング言語を使ったとしても、機械語はまったく同じになる。

数値をバイナリで表現する

 バイナリは、数値を使って数をかぞえたり、数値を表現したりする方法のひとつといえる。バイナリは、0と1の2種類の数字を使うことから、2進法とも呼ばれる。一方、みんながいつも使っている数のかぞえ方は、10種類の数字を使うので、10進法と呼ばれる。10進法の場合、それぞれの桁の値は、そのすぐ右の桁の値よりも、10倍大きくなる。数値が大きくなるたびに、左側に新しい桁を追加していくのだ。

 バイナリの桁の値:それぞれの桁の値は、その右の桁の2倍。

 数値1をバイナリで表すには、1の桁に「1」と書けばいい。

 じゃあ、数値2をバイナリで書くとしたら、どうすればいい?

 バイナリには、「2」という数字はない。だから、1の桁に0と書いて、左へひとつ移動し、2の桁に1と書けばいいのだ。

 1の桁は0なので、桁の値は0×1で0。

 2の桁は1なので、桁の値は1×2で2。

 ふたつの値を足すと、0+2なので、2になる。

 基本的な足し算を使うだけで、バイナリの値が求められる。

 コンピュータみたいに、バイナリを「1」と「0」の代わりに、「オン」と「オフ」で考えてもいい。

文字をバイナリで表現する

 最初、コンピュータは、数学の計算をするためだけに使われていたけれど、その後、文字や記号をバイナリで表現する方法も開発された。

 ASCII(アスキー)とは、一つひとつのアルファベットや記号に、専用のバイナリコードを割り当てたもののこと。

 それぞれの文字に数値を割り当て、それをバイナリへとエンコードしたものだ。

 たとえば、大文字のAには、65という数値が割り当てられている。

 これをバイナリで書くと01000001になるのだ。

暮らしとモノ班 for promotion
「集中できる環境」整っていますか?子どもの勉強、テレワークにも役立つ環境づくりのコツ
次のページ
ビットとバイトとは