ビジネス/エンタープライズ ›  インテル用語集 ›  プログラミング › 
バイト・コード
【byte code】

 

1 byte 単位で可変長となっている命令コード・セット体系。特に命令コード部分のサイズが 1 byte の固定長であることから、こう呼ばれます。Java 仮想マシンにおける中間的な命令コード・セットや、初期の Pascal 言語処理系における中間コードなどとして使用されています。
インタープリター型の言語処理系では、実行速度を向上させたり、コード・サイズをコンパクトにしたりするために、元のソース・プログラムを仮想的なコンピューターの命令コードに変換してから実行することがほとんどです。また、コンパイル型の言語処理系でも、ターゲットとなるマシン・アーキテクチャーに依存しないようにして開発の手間を削減するために、やはり仮想的なコンピューターを想定することがあります。このとき使われるマシン・アーキテクチャーや命令コード・セットとしては、命令コード長が短くてコード効率がよく、実際に実行するマシンのアーキテクチャーに依存せず、元のプログラムの実行を高度に支援できるようなものが望まれます。バイト・コードでは、基本的な命令コード長を 1 byte に限定することによってコード・サイズを抑えています (オペランド部は必要に応じて 1 byte 単位で付加される) 。またメモリーやオブジェクトの管理などを行うために高度な命令を備え、さらに、命令コード・サイズを抑えるためにスタック・アーキテクチャーを採っていることがほとんどです。スタック・アークテクチャのマシンでは、命令のオペランドは常にスタックの最上位に置かれていることが前提になるため、命令コード中にオペランド指定のためのフィールドを用意する必要がなくなるからです。
バイト・コードはインタープリターで実行するのが一般的ですが、高速化のために、バイト・コードを対象マシンのネイティブなマシン語に変換して実行したり (JIT によるバイト・コード・コンパイルなど)、バイト・コードを直接実行したりするプロセッサーの開発なども行われています。

 
 
 
キーワード検索
 

 
索引
 

 
カテゴリー別
 



先頭へ戻る