Department of Electrical and Computer Engineering
ECED 3403: Computer Architecture
X-Makina Documentation and Software
Last updated: 21 June 2018
X-Makina is a 16-bit Instruction Set Architecture (ISA) design
with the following features:
33 instructions (memory access, arithmetic, logic, and control),
all 16-bits in width.
Many instructions can operate on a byte, a word, or both.
An additional 32 instructions that can be emulated by using existing
instructions, allowing operations such as subroutine return, interrupt
return, and stack push and pull.
A common instruction format, containing an opcode and one or two
operand addresses (for arithmetic and logical instructions) or a
signed 10-bit offset (for jump instructions).
Eight 16-bit registers: four special purpose (program counter,
stack pointer, program status word, and link register) and four
general purpose (for data, addressing, or both).
Four addressing modes (register, register with pre- and post-
auto-increment and auto-decrement, register-relative, and immediate).
A 16-bit data/address bus, allowing up to 64 KiB of random-access
The ISA exhibits many features found in existing commercial load-store
or RISC (reduced instruction set computer) machines.
The following documentation is available for the X-Makina ISA
(as of 25 May 2018):
The X-Makina Assembler
The most recent version of the X-Makina assembler can be downloaded from
If you find problems with the assembler, please send a description of it
and the associated assembler file that caused the error to Dr. Hughes.
The following assembler files (.ASM) can be tested with the X-Makina
The assembler is envoked by dragging-and-dropping an assembler file onto
the assembler icon.
A successful assembly will produce a .LIS and a .XME file.
Reading and understanding the Assembler User's Guide
and the X-Makina ISA document will help explain the various files.