LC-3 Simulator
Initializing the LC-3. Please wait…

Memory

Whoops! That memory address is invalid. Hexadecimal addresses must begin with the letter x. All other addresses must be decimal. If you're entering a label, make sure your capitalization is correct.
Whoops! The memory address you've entered is out of bounds. Memory addresses must be within x0000 and xFFFF, inclusive.
0x Label Hex Instruction

Status

Registers

Privilege mode exception! An RTI instruction was executed while in user mode. The machine has been halted.
Illegal opcode exception! The reserved instruction was executed. The machine has been halted.

Console


      

Manage labels

The following labels, including system labels, are currently set:

Label nameAddressDelete
  • Name cannot be empty
  • Label name already exists
  • Label name invalid
  • Invalid address
  • Address already has label

Upload files

Upload object files (.obj) and symbol files (.sym) by dragging them onto the box below. You can upload multiple files at once.

You must convert any ASCII binary (.bin) or hexadecimal (.hex) files, and assemble any assembly language (.asm) programs, before uploading.

Drop files here
Hold on! The following couldn't be recognized and won't be processed:
The following ready to be processed:

Assemble

Paste your assembly code below, or drop a file on the textbox. Click the Assemble button to assemble your code.

Drop file to load contents
Oh no! You've got in your assembly code:
Awesome! Your code was assembled successfully. You can load your program directly into the simulator, or download the output object file and symbol table.

Write raw hex or binary

Paste your hex or binary code below, or drop a file on the textbox. Click the Process button to process your instructions so that you can download an OBJ file or load them directly into the interpreter.

Drop file to load contents
Oh no!
Awesome! Your code was processed successfully. You can load your program directly into the simulator, or download the output object file.