くまちゃんのiOS/Androidゲームプログラミング

マイペースでゲームつくってます。

プログラミング言語のはなし3

プログラミング言語のはなし3】
プログラミング言語の正体とは、コンピュータの頭脳であるCPUの命令へ変換する道具です。

では、CPUの命令とはいったいどんなものなのか?CPUが理解することのできるプログラムの真の姿を見てみましょう。

3E 01 32 00 80 C3 00 00

...。

わけわかりませんね。

一応解説しますと、メモリ8000番地に1を入れる、というプログラム(のごく一部)になっとります。

これはZ80という80年代に爆発的に普及したCPUのプログラムでして、最初の3Eは数値を代入する命令、次が数値の1、次の32がメモリに入れる命令というように、ひとつひとつがCPUへの命令になっています。

で、だいたい想像がつくかと思いますが、

「これはやってられん」

と誰しも思いますよね。

コンピュータ創成期にプログラムを書くためには、そのコンピュータの仕様書とCPUの命令セット表を取り寄せ、それにかぶりつきで文字通りひとつひとつ命令を積み重ねていく必要があるのでした。人類が偉大なる計算力というパワーを得るためにまず最初に必要なスキルは「忍耐」だったのです。ヨーダもオビ・ワンもジェダイには「Patience」が必要と言ってました。

そして、厳しい鍛錬の末にマスターともなれば、Z80の命令セットを暗唱できるようになり、まさに自由自在にCPUを操ることができ、計算力という強大なチカラを得る存在となったのです。

人々はその境地に到達したプログラマーを、畏敬の念を込めてこう呼びました。

「Wizard」(ウィザード=魔法使い)

と...。

(注:最後はちょっと盛ってますが、実際にコンピュータの世界でウィザードと言うのはそういうノリからです。皆さんもWindowsの初期設定で見たことあるのではないでしょうか)