
機械語への変換:オブジェクトコード解説
私たちが日々触れている携帯電話や卓上型計算機といった機器は、様々な応用処理を使って動いています。これらの応用処理は、命令を組み合わせた手順書のようなもの、つまり計画表のようなもので成り立っています。この計画表を作るために使われるのが、計画作成言語と呼ばれる特別な言葉です。しかし、計算機はこれらの計画作成言語を直接理解することはできません。計算機が理解できるのは、機械言語と呼ばれる言葉です。機械言語は、0と1の組み合わせだけで表現され、いわば計算機にとっての母国語のようなものです。
そのため、計画作成言語で書かれた計画表は、計算機が理解できる機械言語に翻訳する必要があります。この翻訳作業を担うのが、翻訳機のような役割を果たす特別な処理です。この翻訳機によって、計画作成言語で書かれた計画表は、機械語で書かれた実行計画書に変換されます。この実行計画書に相当するのが、目的符号と呼ばれるものです。目的符号は、計算機がそのまま実行できる形式になっています。
私たちが応用処理を意識せずに使えるのは、この目的符号のおかげです。例えば、絵を描く応用処理の場合を考えてみましょう。私たちは画面に線を描きたい時、画面上で指を動かすだけで線が表示されます。この時、裏側では、指の動きを感知する命令、線の太さや色を決定する命令、そして実際に画面に線を描く命令など、様々な命令が実行されています。これらの命令はすべて、目的符号として計算機に伝えられています。
このように、目的符号は、私たちが応用処理を快適に利用するための重要な役割を担っているのです。複雑な翻訳作業を自動で行うことで、私たちは計算機の仕組みを深く理解していなくても、様々な応用処理を簡単に使うことができます。まるで、外国語を知らなくても、自動翻訳機を使えば外国の人と会話ができるようなものです。目的符号は、まさに計算機と私たちの間を取り持つ、見えない翻訳機と言えるでしょう。