Little Man Computer(peterhigginson.co.uk)
peterhigginson.co.uk
Little Man Computer
http://peterhigginson.co.uk/LMC/
5 comments
> Post Room Computer
Given that your link spells this "Postroom Computer" and is British, I'm guessing it has to do with mail (as in, the post; as in, what there is none of on Sundays) as opposed to any of the work of Emil Post, who formalized computation similarly to, independently of, but less famously than, Turing.
https://en.wikipedia.org/wiki/Emil_Leon_Post
Given that your link spells this "Postroom Computer" and is British, I'm guessing it has to do with mail (as in, the post; as in, what there is none of on Sundays) as opposed to any of the work of Emil Post, who formalized computation similarly to, independently of, but less famously than, Turing.
https://en.wikipedia.org/wiki/Emil_Leon_Post
Yes, correct :).
In the "Post Room Computer" analogy, the little man works in a post (mail) room.
The mailboxes are memory, in/out trays are IO, etc etc.
In the "Post Room Computer" analogy, the little man works in a post (mail) room.
The mailboxes are memory, in/out trays are IO, etc etc.
This is a great simulation.
I've used it with 12 and 13 year olds to help explain how a computer works - https://www.bournetocode.com/projects/8-CS-Computers/pages/6...
Peter is a very helpful guy as well. He sent me his files so I could host the simulation and avoid problems with cross-site scripting. He even made alterations to make it easier to control the LMC using opcodes rather than Assembly.
I've used it with 12 and 13 year olds to help explain how a computer works - https://www.bournetocode.com/projects/8-CS-Computers/pages/6...
Peter is a very helpful guy as well. He sent me his files so I could host the simulation and avoid problems with cross-site scripting. He even made alterations to make it easier to control the LMC using opcodes rather than Assembly.
It's interesting working with this kind of limited instruction set.
I made a thing that fills the memory with the sequence of numbers from LEN to 1 and outputs it.
I made a thing that fills the memory with the sequence of numbers from LEN to 1 and outputs it.
BRA START
DEST DAT 60 // Where to start writing
LEN DAT 40 // Size of the sequence
UNIT DAT 1
START LDA DEST
ADD STOREI
STA STOREI
LOOP LDA LEN
STOREI STA 0 // Self modifying code be here
OUT
SUB UNIT
BRZ END // Halt after writing last number
STA LEN
LDA STOREI
ADD UNIT
STA STOREI
BRA LOOP
END HLT
This is surprisingly fun!great simulator
Could anyone ELI5?
I clicked on SELECT on the bottom to select a program: max.
Then, I clicked RUN.
After the LMC did its work, I wrote a number in the INPUT box and pressed Enter.
After the LMC did its work again, I wrote another number in the INPUT box and pressed Enter again.
After the LMC did its work, the greatest number was displayed in the OUTPUT box.
Just wanted to say thank you for replying!
[deleted]
I made something similar [1], based on the Post Room Computer [2].
Basically it is a two address (operand) modification of the LMC. It was used to as a teaching tool for undergrad students at my local university.
It's a bit more fully featured - It supports absolute and register based address modes, macros, programs spanning multiple files. The computer is accessible via command line or using the in-built Java Swing UI.
If anyone is bored and wanted to run it, heres a sample program:
[1] https://github.com/Richard-Walton/The-Post-Room-Computer
[2] http://eprints.hud.ac.uk/2518/