プログラム言語とマークアップ言語
1.プログラム言語
低水準言語
・コンピュータが理解しやすい機械語、または機械語に近い形式で記述したもの
・機械語:コンピュータが理解できる唯一の言語。1と0で構成される
・アセンブラ言語:機械語を1対1で記号に置き換えた言語
高水準言語
・人間が理解しやすい自然言語に近い形式で記述したもの
・BASIC:初心者向きの会話型言語
・COBOL:事務処理計算に適した言語
・C:システム記述に適した言語
・C++:C言語にオブジェクト指向の概念を取り入れた言語
・Java:オブジェクト指向型言語
・Python:Webアプリや人工知能などの開発に適したスクリプト言語
・JavaScript:動的なWebページの作成に適したスクリプト言語。HTML内に組み込み、Webブラウザ上で実行する。Javaとは別物
JAVA VM(Java 仮想マシン)
Javaで開発されたプログラムを実行するインタプリタ
言語プロセッサ
・人間が理解できるプログラム言語で記述した原始プログラムを、コンピュータが理解できる機械語に翻訳するためのプログラム
・アセンブラ:アセンブラ言語で書かれた原始プログラムを、機械語に翻訳する
・インタプリタ:高水準言語で書かれた原始プログラムを、1命令ずつ解釈しながら実行する
・コンパイラ:高水準言語で書かれた原始プログラムを、目的プログラムに翻訳する
2.プログラムの実行手順
コンパイル
・コンパイラと呼ばれるプログラムで、原始プログラムから目的プログラム(オブジェクトモジュール)を生成すること
・コンパイルの手順
字句解析→構文解析→意味解析→最適化→コード生成
リンク
・リンカ(リンケージエディタ)と呼ばれるプログラムで、複数の目的プログラムなどから、一つのロードモジュール(実行可能プログラム)を生成すること
・動的リンキング:実行中、必要となったモジュールを、OSによって連携する方式
・静的リンキング:アプリケーションの実行に先立って、あらかじめ複数の目的プログラムをリンクしておく方式
ロード
・ローダと呼ばれるプログラムで、実行に先立ってロードモジュールを主記憶にロードすること
3.その他の言語プログラム
・プリコンパイラ
・クロスコンパイラ
・ジェネレータ
・トランスレータ
・エミュレータ
4.開発ツール
統合開発環境(IDE)
アプリケーション開発のためのソフトウェア・支援ツール類をまとめたもの
デバッグツール
・デバッグ:プログラムに潜んでいる誤り(バグ)を発見し、取り除くこと
例)トレーサ、スナップショットダンプ、メモリダンプ、静的解析ツール
BNF記法
・プログラム言語の構文を定義する再帰的な記法
マークアップ言語
・テキスト形式の文章にタグと呼ばれる特別な文字を使って、文章の構造や文字の修飾を記述する言語
SGML
・電子的な文書の管理や交換を容易に行うためのマークアップ言語
HTML
・Webページを作成するためのマークアップ言語
・CSS:文字の大きさ、文字の色、行間などの視覚表現を指定する
XML
・ネットワークを介した情報システム間のデータ交換を容易にするためのマークアップ言語
・利用者独自のタグを定義することができる
Ajax
・XMLとJavaScriptがもつ非同期のHTTP通信機能を使い、動的に画面を再描画する仕組み
本日はここまで。ありがとうございました。
参考文献:
イメージ&クレバー方式でよくわかる 栢木先生の基本情報技術者教室