An assembler for the Little Man Computer (LMC), a very basic computer used for teaching.
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
README
lmc-assembler.py

README

LMC-assembler - Version 0.5

LMC-assembler is a two pass assembler for the Little Man Computer (LMC). The
LMC is a very basic computer used for teaching the Von Neuman architecture,
assembly, etc.

usage: LMC-assembler input.asm

LMC overview:
    -All values (instructions, memory locations, register size) are 3 digits.
        Those are decimal digits.
    -There are 100 memory locations numbered 0-99. These are called "mailboxes"
    -There are very few instructions. They are add, subtract, load, store,
       branch, read input, print output, and halt.
    -There are two registers, the program counter (the "Counter") and a general
        purpose register (the "Calculator").
    -Instructions take one argument, a mailbox number. Some instructions use
        the contents of the Calculator as a second operand.
    -User input can be read and placed in the Calculator, or output can be
        displayed form the calculator.

For more information:
http://en.wikipedia.org/wiki/Little_man_computer

Version History:
0.5 - works on valid input, hasn't been extensively tested

Roadmap:
write unit tests
do syntax checking
output to file