バイトコード

バイトコード(bytecode)は、仮想マシンによる実のために設計された、実可能なプログラムのバイナリ表現である。ソフトウェアによって処理されるため、大抵は機械語より抽象度の高い中間コードになっている。プログラミング言語実装において、特定のハードウェアへの依存度を下げ、またインタプリタ実装を容易にするために用いられる。コンパイラの中間コードとして用いられることもある。

バイトコードという名前は命令コード(オペコード)が1バイトでできていることからくる。オペランドを含む命令データ長までもが1バイトという意味ではない。しかし現実のバイトコードの定義は言語処理系によって様々である。

バイトコードで記述されたプログラムは通常、バイトコードインタプリタによって解釈・実される。バイトコードインタプリタ機械語を解釈・実するCPUとの類似性からバーチャルマシンとも呼ばれる。

バイトコードを用いる方式の利点は移植性の高さである。この利点はバイトコードを用いない単純なインタプリタと共通する。しかしバイトコードのほうが抽象度の低さ、データサイズなどの点で優れており、人の手で読み書きされる用途のソースコードよりコンピュータにとって扱いやすいため、単純なインタプリタよりパフォーマンスは多くの場合で上回る。このパフォーマンス上の利点から、現在の多くのインタプリタ言語は実際にはバイトコードコンパイルされた後、バイトコードインタプリタによって実される。またパフォーマンス以外にも、ソースコードの中身を隠蔽する目的でバイトコードが用いられる場合がある。

バイトコードを使用した初期のコンピュータにはSystem/38があり、ソフトウェアインストール時に機械語に変換された。またJavaのプログラムは標準的にはバイトコードとして配布され、JITコンパイラによって機械語に変換される。

バイトコード」『フリー百科事典 ウィキペディア日本語版』(http://ja.wikipedia.org/)。2009年7月28日15時(日本時間)現在での最新版を取得。

続きを見る

おすすめ情報

高品質・低価格のインターネットプロバイダ
インターネットプロバイダー「ASAHIネット」はADSL, 光回線などのインターネット接続を業界最安値水準でを提供している。日経ビジネス・J.D. Power等のお客様満足度調査でも高い評価を得ており。「推奨度№1」といわれるのも納得だ。


2010年プロバイダー【顧客満足度】NO.1 トリプル受賞  ASAHIネット

入会・お問い合わせダイヤル
0120-030-275
携帯電話/PHS/IP電話などからは
03-3569-3526

10:00~19:00(土日祝~17:00)

書面での申し込みはこちら
資料請求

このページのトップヘ