コンテンツ
プログラミング言語の目標は、高価なペーパーウェイトコンピュータを便利なデータ処理およびストレージデバイスに変えることです。このタスクを実行するために選択された言語は、効率と使いやすさの間でバランスを取る必要があります。機械語は、両方の要因のスペクトルの終わりを表します。
機械語
機械語は、コンピューターが翻訳者なしで理解できる唯一の命令セットを生成します。コンピュータは、オーディオとビデオの再生、データの処理と保存、インターネットとの通信、その他の特殊なタスクの実行が可能で、1と0のみを認識する一連の命令に応答します。 1と0だけで何百行ものコードを書くことは、CやJavaなどの高水準言語の人気を高める退屈な作業です。
最初の利点
IBMの最初のパーソナルコンピュータには、512 KBのランダムアクセスメモリと360 KBのフロッピーディスクドライブが搭載されていました。オペレーティングシステムがフロッピーディスクからメモリに読み込まれた後、プログラムは残りのメモリ領域に読み込まれ、アクティブなプログラムがデータを処理するためのRAMの小さな領域(通常は100 KB未満)が残されます。その間、プログラマーの主な関心事は、簡潔で効率的なコードを作成することでした。これらのコンピューターで最も使用されたプログラミングツールは機械語でした。これは、BASICまたはCで記述されたバージョンよりもかなり小さい場合があります。また、アセンブリ言語を使用する方が少し簡単でした。
プラットフォーム依存
機械語はコンピューターのハードウェアを直接指し、プログラマーにプログラム実行のあらゆる側面を完全に制御させます。このアプローチの欠点は、プログラマーが効果的なコードを書き込むために、集積回路(チップセット)の各セットのアーキテクチャーを知っている必要があることです。ビデオカードやディスクコントローラーなどのコンポーネントが変更された場合、新しいデバイスを認識して使用するには、コードを更新する必要があります。
高水準言語
機械語の速度と低メモリ使用の利点は、バイナリコードでチップレベルの命令を書くことの難しさを上回ります。ギガバイトのRAMとテラバイトのストレージを利用できるため、最新のパーソナルコンピューターで簡潔で効率的なコードを使用する必要がなくなりました。 CやJavaなどの高水準言語で記述されたプログラムの追加のメモリとストレージの需要は、開発プラットフォームを選択する際の要因ではなくなりました。使いやすさと保守のしやすさは、最新のソフトウェアプロジェクトのほとんどで速度と効率を高めるための推奨要素です。