Javaバイトコードとアセンブラ


Javaのプログラムというのは、普通、Javaのソースコードを書き、コンパイルして作ります。Javaというプログラミング言語を使わなければJavaのプログラムは作れません。――これが、今までの常識でした。が、時代は変わってきます。この常識は、今では通用しなくなっているのです。

Javaのプログラムは、一般に「バイトコード」と呼ばれます。これは、Javaの実行環境であるJava仮想マシンで実行可能なコードが記述されたファイルですね。例えば、普通のパソコンだと、そのマシンのCPUやOSに用意されているAPIを実行するバイナリコードが書かれたEXEファイルなどを作り、実行します。このバイナリコードは、C言語でも作れますし、BASICやC#などさまざまな言語で作れます。ということは、バイトコードさえ作れるなら、他の言語であってもいいはずですね?

この「Jasmin」は、そうした疑問への一つの答えかも知れません。Jasminは、Javaのバイトコードを生成する、アセンブラなのです。テキストファイルでアセンブラのソースコードを記述し、Jasminでコンパイルすれば、Javaのバイトコードが作成できます。Javaというプログラミング言語で書かずに、Java仮想マシンで動くプログラムができてしまうのです。

Jasminの歴史は意外に古く、1995年にJavaが発表となり、996年に史書のバージョンがリリースされたのとほぼ同時に、Jasminのリリースが開始されています。ある意味、Java言語と一緒になって進化してきたアセンブラなのです。

Jasminを入手する


Jasminは、オープンソースのソフトウェアであり、誰でも自由に使うことがあります。現在、いかにJasminのサイトがあります。

http://jasmin.sourceforge.net/
Jasminのサイト。「Download」のリンクをクリックし、ダウンロードをする。

このページの「Download Jasmin from SourceForge」というところにあるdownloadのリンクをクリックし、移動先のSourceForge.netからファイルをダウンロードしましょう。ここでは、「jasmin-2.3」というものをダウンロードして使ってみます。

インストールは非常に簡単です。ダウンロードした圧縮ファイルを展開し、そのフォルダを適当な場所に配置するだけです。といっても、実をいえばフォルダの中にはJasminのソースコードからビルドのためのファイルからサンプルからさまざまなものが入っており、すべてが必要なわけではありません。Jasminは、フォルダ名にある「jasmin.jar」というファイルがプログラム本体です。このファイル1つだけあれば、Jasminは使うことができます。ですから、このファイルだけをコピーし、どこか適当なところにおいて利用するとよいでしょう。