中間言語
中間言語の最新ニュースをまとめて検索!
中間言語(ちゅうかんげんご)とはプログラミング言語と言語学において指す内容が異なる。詳細は以下を参照。
目次 |
[編集] コンピュータのプログラムにおける中間言語
中間言語は、コンピュータのプログラムにおいて、高級言語のソースコードと機械語の中間状態のこと。
人間が読むことのできる状態から、一度コンピュータ内部のデータ形式(中間表現)に置き換えられているが、そのままCPUが解釈して実行することはできない。BASICなどのインタプリタで実行速度の高速化のためによく利用される。また、コンパイラ言語でも高度な最適化を施すために、一旦中間言語に変換する場合がある。
BASICの中間言語はバイトコードのような機械語的なコードではなく、字句解析のみを行い、予約語などを数値に変換しただけの状態。実行時の字句解析が不要になるが、ソースコードに戻して表示、編集することもできる。
Javaなどの中間言語(バイトコード)は、仮想CPUを想定し、そのCPUの機械語という形を取っている。バイトコードは、それを実行できるプログラムを用意することで単一のコードを複数種類のCPUで動作させることができる。
なお中間言語からは、比較的簡単にソースコードを復元、推定することが出来るものが多い。そのため、ソースコード保護の観点から、中間言語からソースコードを推定しにくい変換を行うツールなどが用いられることがある。
[編集] 機械翻訳における中間言語
中間言語(en:Pivot language)は、機械翻訳の、ピボット翻訳という手法で使われる言語である。
[編集] 言語学における中間言語
中間言語とは第二言語(外国語)の学習者が、その言語を学んでゆく過程で発する、目標言語とは様々な点で違った体系を持つ学習者に特徴的な言語のこと。すべての言語において、その個別の学習者には中間言語が存在する。この中間言語は当然、学習者の習得レベルや学習内容、母語などに影響を受ける。
たとえば日本語のみを母語とする者が話す英語は、英語を母語とする人たちのそれとは違っているのが普通である。それは文法や発音が少し違っていたり、特定の表現が多く用いられたり、またその反対にほとんど用いられなかったりと、個人によって異なる。そのようにある一定の規則を持ちながらも、目標言語とは異なっている学習者の言語を中間言語という。
この中間言語という概念はラリー・セリンカー(Larry Selinker)によって1972年に提唱された。中間言語という概念が登場するまで、第二言語習得研究における主な手法は、学習者の誤用から、目標言語と学習者の母語との違いを研究する、いわゆる誤用分析が中心であった。しかし学習者が発した誤りを研究するだけでは、回避(例えば、日本語の母語話者は英語におけるwhatやthatのような関係節をなるべく使わないように話そうとする)など誤用以外の問題点を扱えないことから、「学習者言語の自律性」を重んじる中間言語分析が注目されるようになった。
[編集] 関連項目
最終更新 2009年10月28日 (水) 10:54 (日時は個人設定で未設定ならばUTC)。
【中間言語】変更履歴

