見出し画像

【プログラミング】高級と低級?

こんにちは。きゆーです。

今回は、プログラミングにおける用語の説明をしたいと思います。

プログラミング言語には、低級な言語と高級な言語があります。

この「低級」と「高級」という言葉は、

プログラミング初学者には聞き馴染みのないものかもしれません。

低級な言語・・・コンピューターがより理解しやすい言語
高級な言語・・・がより理解しやすい言語

この意味を理解するために、もう少し説明を加えていきます^^


プログラミングは翻訳!?

実はプログラミングという行為は、

私達が普段喋っている言葉をコンピューターにも分かるように
翻訳してるようなもの

なのです。

例えば、普段私達が喋っている言葉の

「こんにちは」

これは日本語ですが、

当然(英語圏の)外国人にわかってもらえないことも多いですよね。

これをわかってもらいたければ、

「Hello」

と英語に翻訳をするでしょう。

プログラミングとは、

これを外国人ではなく、コンピューターに対して行うことなのです。


マシン語(コンピューターの公用語)

コンピューターは、日本語をそのまま理解することはできません。

その代わりコンピューターはマシン語を理解することができます。

マシン語とは「0、1」の2種類の数字のみで構成されます

例えば、

先ほどの「こんにちは」も
コンピューター上では「0111 1010 1110 、、、」

このように翻訳されなければ通じないのです。

日本語→英語
「こんにちは」→「Hello」
日本語→マシン語
「こんにちは」→「0111 1010 1110 … 」


人間の言葉とマシン語の架け橋

コンピューターが理解できる言葉はマシン語だと説明しました。

「そうすると、私たちも0,1だけでコンピューターに情報を伝えなければならないのでは、、、?そんなの絶対に無理!!!!!」

こう思う人も多いでしょう。

安心してください。

そんなことはありません!

人間の言葉とマシン語はあまりにもかけ離れているために、

これを繋ぐ梯子のようなものが考えられました。

それがプログラミング言語です!!

人間の言葉  → 「プログラミング言語」 →  マシン語


低級と高級の意味

このプログラミング言語の種類として、

コンピューター語により近いものを「低級」
日本語や英語などの人の言葉により近いものを「高級」

と言います。

Pythonは、使いやすさのために、
より高級な、人にわかりやすい言語でプログラミングしていきます。

しかし、ここである問題が発生します。

人にわかりやすい分、コンピューターにはわかりずらく、
それゆえに高級な言語を用いたプログラミングには限界があるのです。

例えば、

プログラミングでゲームアプリを開発しようと思ったときに、
より細部までこだわって自由に作ることができないかもしれない

ということです。


MTとAT

これは、車の運転のMTとATの違いみたいなものです。

運転の難しいMT=低級言語
運転しやすいAT=高級言語

ATは、たしかに運転しやすいが、ドリフトのような真似はできない。

実際、ドリフトの技術を必要とするレーサーなどはMTで運転しています。

MTの方が、運転の自由度が高く、機動の限界がないのです。

このように理解すると、

プログラミングにおける低級言語と高級言語の意味がよりわかるのではないでしょうか。

この記事が気に入ったらサポートをしてみませんか?