トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

言語プロセッサ の変更点

Top / 言語プロセッサ



概要
言語プロセッサは、あるコンピュータ言語で書かれたデータ(ソースプログラム)を、別の言語やデータ構造(オブジェクトプログラム)に翻訳するソフト。ソースとはsourceでもとになるもの、入力くらいの解釈でよい。反対にオブジェクトプログラムとはobject、目標と直訳する(なお、ここではオブジェクト指向とは意味合いが違う)。つまり資源を元に目標のものを生成する。というくらいの解釈である。
機械語を人間の読解容易なプログラミング言語に変換するもの、もしくはその反対の動作を行うものを指すことが多い。

----
#contents
----

* 目的 [#j990d9e6]
人間のコンピュータの操作性を向上させることである。例えば0と1だけの文章を見るよりは、print文などの方が可読性が高く、一目見て明らかに何をしているのかが分かり易い。
* 簡単な例 [#b96cb571]
コンパイラやインタプリタ等が言語プロセッサの例である。


#ref(image1.png,[[言語プロセッサ]],75%)


* 分類 [#jdef01be]
言語プロセッサの例として、(http://www.it-license.com/Program_language/Language_processor.html)アセンブラ、コンパイラ、インタプリタ、シミュレータ、エミュレータ、ジェネレータ等がある。
言語プロセッサの例として、アセンブラ、コンパイラ、インタプリタ、シミュレータ、エミュレータ、ジェネレータ等がある。
** アセンブラ [#gcefaba5]
アセンブラは、アセンブラ言語で書かれたソースプログラムを機械語のオブジェクトプログラムに翻訳するプロセッサ。
コンパイラとインタプリタ
コンパイラとインタプリタはどちらも高級言語(人間の読みやすい言語)で書かれたソースプログラムを機械語で書かれた(01で書かれた)オブジェクトプログラムに翻訳してくれるソフトである。違いはその翻訳とプログラム実行のタイミングである。コンパイラは一度に全てのプログラムを翻訳し、一度に実行してしまうが、インタプリタは一行翻訳し、一行実行する、という作業を繰り返す。なお、コンパイラがソースプログラムをオブジェクトプログラムに翻訳することをコンパイルという。
** シミュレータ [#y80314ce]
他のOSでのアプリケーションと同じように動作する環境を実現します。例えばゲーム専用機のゲームを通常のパソコンで実現し、利用者はゲーム専用機とパソコンとの区別ができない環境になります。
 パソコン上でゲーム機の機能に相当するパソコンでの命令を生成する一種のコンパイラがシミュレータです。
** エミュレータ [#q4f710b3]
他のコンピュータ用のプログラムを解読し、実行するプログラム。
シミュレータとほぼ同じ目的ですが、シミュレータが外から見た振る舞いを再現するのに対して、エミュレータは中身の動作まで再現します。これを実現するには、コンパイラレベルのものもありますが、ゲーム機のプログラム命令を解読しながら実行するマイクロプログラムを用いる方法があります。
アセンブラは、アセンブラ言語で書かれたソースプログラムを機械語のオブジェクトプログラムに翻訳するプロセッサである。アセンブラ言語とは、C言語よりもマシン語に近い、低水準言語である。

** コンパイラとインタプリタ [#ra16dd16]
コンパイラとインタプリタはどちらも高級言語(人間の読みやすい言語)で書かれたソースプログラムを機械語で書かれた(01で書かれた)オブジェクトプログラムに翻訳してくれるソフトである。違いはその翻訳とプログラム実行のタイミングである。コンパイラは一度に全てのプログラムを翻訳し、一度に実行してしまうが、インタプリタは一行翻訳し、一行実行する、という作業を繰り返す。これは、言語によって使用されるものが異なる。C言語などのコンパイラを使用する言語をコンパイラ言語、Pythonなどのインタプリタを用いる言語をインタプリタ言語という。なお、コンパイラがソースプログラムをオブジェクトプログラムに翻訳することをコンパイルという。

** シミュレータとエミュレータ [#y80314ce]
他のOSでも同じように動作することを確認するため、環境を構築すること。人間が見える部分(インターフェース)を再現することを指すことが多い。エミュレータもシミュレータと目的は同じだが、エミュレータはインターフェースだけではなく内部の動作も再現する。

** ジェネレータ [#u9a90af7]
ソースプログラムを生成(generate)するもの
プログラムの一部をパラメタとして与えることにより,完成したプログラムを出力する方式です。これにはソースプログラムを出力してコンパイルするものと,既に実行可能プログラムがあり最初にパラメタを読み込み,それを用いてデータを読み込み帳票作成などをするようなものがあります。(http://www.kogures.com/hitoshi/webtext/hs-os-honyaku/index.html)
ソースプログラムを生成(generate)するもの。プログラムの一部をパラメータとして指定することで、残りのプログラムを自動的に生成する。

* まとめ [#c7a34e4b]
言語プロセッサはコンピュータと人間の通訳をしてくれている。

** リンク [#a13b5a95]
http://www.kogures.com/hitoshi/webtext/hs-soft-taikei/index.html
http://www.kogures.com/hitoshi/webtext/hs-os-honyaku/index.html
https://www.geekly.co.jp/column/cat-technology/1910_023/
http://www.it-license.com/Program_language/Language_processor.html
https://xtech.nikkei.com/it/members/ITPro/ITBASIC/20021218/1/


~
~
CENTER:【スポンサードリンク】
#htmlinsert(amazon_iphone_book_itil)
~
~
----
#pcomment(reply)