最近、開発された量子コンピュータとは異なり、通常のコンピュータは、0と1の2進数でしか命令やデータを理解できません。
そこから、16進数での「マシン語」。
これを理解する人は、今はほとんどいません。
次に、マシン語を、ある規則に基づいて変換し直す作業を経て開発された「アセンブリ」が生まれました。
これで、人がやっと理解できる言語が出来たのですが、一般には普及しませんでした。
一般人がソフトウェアを開発するなんて、当時はなかったので、現在、大手のゲーム会社は、この頃に設立してボロもうけした企業が母体となっています。
それも、そのはず、今でも高速化のために利用されるくらいで、あまりメリットはありません。
上に行けば行くほど、つまり、コンピュータが理解しやすい程、「低級言語」と表します。
そして、文法や構文などの規則に則って記述して、人が理解しやすい言語が「高級言語」と表します。
低級=悪いではなく、高級=良いという意味でもありません。
つまり、何かしらのプログラミング言語によって、開発を行おうとするのに向いているのは、高級言語ということになります。
低級言語は、コンピュータに直接命令できて、高速化を図ることが可能なのですが、メンテナンスするのに向いておらず、バグや不具合が起きても、どの箇所で起きているのか、全体を見渡さないといけません。これには極めて高度な技術が要求されます。
その点、高級言語は、他者との共同開発が可能であり、システム開発などの大規模プロジェクトには欠かせません。
今回の記事は、非常に抽象的なものになってしまいました。