低水準言語と高水準言語
プログラミング言語
プログラミング言語には機械に近い言語と人間に近い言語があるよ!まずはその全体像をつかもう!
低水準言語と高水準言語
簡単にいうと
プログラミング言語には機械に近い言語と人間に近い言語があるよ!まずはその全体像をつかもう!
① 機械語(マシン語)
コンピュータのCPUが直接理解し実行できる唯一の言語が機械語です。すべての命令は0と1のビット列で構成されており、たとえば「00101011」のような数値の羅列がそのまま処理命令になります。人間にとっては極めて読み書きが困難ですが、CPUにとっては翻訳なしで即座に実行できるため、処理速度は最も高速です。
② アセンブラ言語
機械語の各命令を、人間が読みやすい英語的な記号(ニーモニック)に1対1で対応させた言語がアセンブラ言語(アセンブリ言語)です。たとえば「ADD」は加算、「MOV」はデータの移動を意味します。機械語と命令が1対1に対応しているため、ハードウェアを直接細かく制御できる利点があります。組込みシステムやデバイスドライバの開発など、ハードウェアに密接した制御が求められる場面で現在も使われています。アセンブラ言語を機械語に変換するソフトウェアをアセンブラと呼びます。
③ 高水準言語(高級言語)
人間が理解しやすい英語に近い構文で記述できる言語を高水準言語と総称します。機械語やアセンブラ言語が「低水準言語」と呼ばれるのに対し、高水準言語はハードウェアの細部を意識せずにプログラムを書けるのが最大の特長です。ただし、CPUが直接理解できるのは機械語だけですから、高水準言語で書かれたプログラムは必ず機械語への翻訳(変換)が必要です。この翻訳を行うソフトウェアがコンパイラやインタプリタであり、Theme 4で詳しく解説します。
④ 代表的な高水準言語の分類
高水準言語は、処理の書き方の違いによって大きく手続き型言語と非手続き型言語に分けられます。
| 分類 | 言語 | 特徴・用途 |
|---|---|---|
| 手続き型言語 | FORTRAN | 科学技術計算向け。1957年登場の最古の高水準言語の一つ |
| COBOL | 事務処理・金融業務向け。英文に近い構文で帳票処理に強い | |
| C言語 | UNIX OSの開発に使われた汎用言語。ハードウェア制御も可能 | |
| C++ | C言語にオブジェクト指向機能を追加した拡張言語 | |
| 非手続き型言語 | Java | インターネットアプリケーション向け。JVM(Java仮想マシン)上で動作するためOS非依存 |
手続き型言語は「何をどの順番で処理するか」を逐一記述するスタイルです。一方、Javaはオブジェクト指向の考え方を全面的に採用しており、「データとその操作をひとまとめにしたオブジェクト」を中心にプログラムを構築します。
Javaの最大の特徴はJVM(Java Virtual Machine)の存在です。Javaで書いたプログラムは、まずバイトコードという中間形式にコンパイルされ、各OS上のJVMがそのバイトコードを解釈・実行します。このため、Windows・Mac・Linuxなど異なるOSでも同じプログラムをそのまま動かせる「Write Once, Run Anywhere」(一度書けばどこでも動く)を実現しています。
具体例
低水準言語と高水準言語の違いを、「外国語でのコミュニケーション」に例えてみましょう。
機械語は、相手の母国語(たとえばスワヒリ語)で直接話すようなものです。相手はすぐに理解できますが、あなたにとっては習得も発話も非常に大変です。
アセンブラ言語は、スワヒリ語の各単語にカタカナのふりがなを振ったようなもの。少しは読みやすくなりますが、スワヒリ語の文法そのものを理解する必要があります。
高水準言語は、日本語で話してプロの通訳(コンパイラ)にスワヒリ語へ翻訳してもらうイメージです。あなたは日本語で考えるだけでよく、細かい文法は通訳が処理してくれます。
そしてJavaはさらに特殊で、「エスペラント語」のような共通中間言語(バイトコード)にまず翻訳し、各国に配置された現地通訳(JVM)がその場で最終翻訳する仕組みです。だから世界中どの国(OS)に行っても同じ話(プログラム)が通じるのです。
試験のポイント
- ・要は「低水準=機械語・アセンブラ(人間に難しい)、高水準=C・Java等(人間に易しい)
- ・Java=JVMでOS非依存」
- ・FORTRAN=科学技術、COBOL=事務処理、C=UNIX、C++=オブジェクト指向拡張の対応も頻出
- ・アセンブラ言語は機械語と1対1対応であることを覚える
独学で診断士合格を目指すなら
過去問演習・AI添削・テキストPDFまで
すべて揃ったプレミアムプランで合格を掴む!
予備校代の1/10以下で、独学の不安をまるごと解決
- 📝1次試験 過去問演習(全7科目・年度別)無制限プレミアム限定
- 🤖2次試験 AI添削(事例I〜IV・無制限)最適なフィードバックで実力アッププレミアム限定
- 📄科目別テキストPDFダウンロード。印刷して好きな使い方で学習できるプレミアム限定
- 🔖ブックマーク機能で苦手分野・何度も確認したい部分を管理プレミアム限定
- 📊学習記録・成績管理で自分の進捗を可視化プレミアム限定
プレミアムプラン
¥9,800(税込)
自動更新なし / 1年間有効
決済は Stripe(PCI-DSS準拠)で安全に処理されます。カード情報は当サービスに保存されません。