The HYMN Assembler

HYMN, a HYpothetical MachiNe, is a simple machine for illustrating assembly language concepts. It implements Hennessy and Patterson's DLX assembly language.

HYMN implements a subset of Hennesy and Patterson's DLX assembly language, including the following instructions.

J    JR   JAL  JALR  BEQZ  BNEZ  TRAP
LB   LBU  LHU  LW    SB    SH    SW
ADD  ADDI SUB  SUBI  MULT  DIV   MOD
AND  ANDI OR   ORI   XOR   XORI
SLL  SLLI SRL  SRLI  SRA   SRAI
SEQ  SNE  SLT  SGT   SLE   SGE
SEQI SNEI SLTI SGTI  SLEI  SGEI
It does not include the following instructions.
ADDU    SUBU    MOVI2S  MOVS2I
MOVF    MOVD    MOVFP2I MOVI2FP
BFPT    BFPF    ADDUI   SUBUI
LF      LD      SF      SD
RFE
all floating-point instructions

HYMN is not available in compiled form. But you can download the Java source, which should (!) work on most machines.

Working code:

All code © 1998 by Carl Burch and must not be redistributed.

Note: This application is very much in alpha-testing and is still being modified. Please take the time to tell the author about any errors you find. He will be very grateful.