低級言語

出典: フリー百科事典『ウィキペディア(Wikipedia)』

低級言語(ていきゅうげんご、低水準言語とも)は、コンピュータ用のプログラミング言語のうち機械語、または機械語に近い言語の総称である。 「低級」とは劣った言語であることを意味するのではなく、高級言語(high-level language)に対してつけられた呼称で、よりハードウェアに近いところを低級(low-level)と呼ぶことによるものである。一般的には機械語アセンブリ言語を指す。低級言語には次のような特徴がある。

  • コンピュータにとってわかりやすい(機械語とのセマンティクスギャップが少ない)
  • プラットフォーム(CPU)に特有の処理が書ける
  • メモリ操作、IO制御等CPUレベルの操作ができる

コンパイラでは、高級言語から低級言語に一度翻訳され、コンパイルされることが多かったために区別されている。また、インタプリタ型のプログラミング言語などでは中間言語も使われることがある。

C言語オペレーティングシステムレベルの操作をかなり行えるので、Javaなどと比較した場合に低級言語と呼ばれることがあるが、C言語のソースコードは機械語と1対1で対応しておらず、CPU固有の処理が記述できないので正しくは低級言語ではない(折半案として中級言語と呼ぶことがある)。IO制御等についても、用意された関数などを利用しておこなわれているものは低級言語に属さない。

アセンブラ言語以外の低級言語の例としては、NECメインフレーム(ACOS-4)で、システム部分を記述するために使用されていた、HPLなどがあげられる。HPLでは、C言語風の記述ができるが、レジスタの指定ができたり、インラインでアセンブラコードを書けるなど、CPU固有の記述ができるのが特徴である。