Jonathan Meyer, Oct 2004
Daniel Reynaud, Dec 2005


Jasmin is an assembler for the Java Virtual Machine. It takes ASCII descriptions of Java classes, written in a simple assembler-like syntax using the Java Virtual Machine instruction set. It converts them into binary Java class files, suitable for loading by a Java runtime system.

Jasmin was originally created as a companion to the book "Java Virtual Machine", written by Jon Meyer and Troy Downing and published by O'Reilly Associates. Since then, it has become the de-facto standard assembly format for Java. It is used in dozens of compiler classes throughout the world, and has been ported and cloned multiple times. For better or worse, Jasmin remains the oldest and the original Java assembler.

The O'Reilly JVM book is now out of print. Jasmin continues to survive as a SourceForge Open Source project.

Download Jasmin from SourceForge

Jasmin is available for download from Sourceforge: Download


Jasmin Home Page
this file (on SourceForge.net).

NEW : JasminXT Syntax (since 2.0)
This document describes the additions to the Jasmin language since version 1.1. JasminXT is an extension of the Jasmin language, so if you are new to Jasmin you should first read the user guide.

Jasmin User Guide
a brief user guide for using Jasmin.

Jasmin Instructions
the syntax of JVM instructions in Jasmin.

About Jasmin
describes the background to Jasmin, who might find it interesting, etc. Includes an example piece of Jasmin assembler to look at.


Jon Meyer - Original Author
Daniel Reynaud - Defined the JasminXT language
Iouri Kharon - Impressive list of enhancements between 2.0 and 2.1

Copyright (c) Jonathan Meyer, 2004

Jasmin Home | Jon Meyer's Home