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 SGEIIt 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.