# Computing - Little Man Computer

> Source: https://ollybritton.com/notes/a-level/computing/topics/lmc/ · Updated: 2020-09-24 · Tags: computing, school, safe-to-post-online

##### What does `INP` mean in LMC??
Input.

##### What does the `INP` instruction do in LMC??
Allow the user to input data.

##### Where is the input from `INP` stored in LMC??
In the accumulator.

##### What does `STA` mean in LMC??
Store address.

##### What is the instruction register for instruction `901` in LMC??
`9`.

##### What is the address register for instruction `901` in LMC??
`01`.

##### What does `STA` do in LMC??
Store the value in the accumulator at the given address.

##### What is the operand for `STA`??
The address.

##### What does `ADD` mean in LMC??
Add.

##### What does the `ADD` instruction do in LMC??
Add what is in the address given to the accumulator.

##### What does `ADD 59` do in LMC??
Add what is in address `59` to the accumulator.

##### What does `SUB` mean in LMC??
Subtract.

##### What does the `SUB` instruction do in LMC??
Subtract what is in the address from the accumulator.

##### What does `SUB 59` do in LMC??
Subtract what is in address `59` from the accumulator.

##### What does `OUT` mean in LMC??
Output.

##### What does `OUT` do in LMC??
Output/print what is in the accumulator.

##### What does `HLT` mean in LMC??
Halt/end.

##### What does `HLT` do in LMC??
Stops the execution of the program.

##### What does `BRZ` mean in LMC??
Branch if zero.

##### What does `BRZ` do in LMC??
If the contents of the accumulator is 0, set the program counter to the given address.

##### What does `BRP` mean in LMC??
Branch if positive/zero.

##### What does `BRP` do in LMC??
If the contents of the accumulator is 0 or positive, set the program counter to the given address.

##### What does `BRA` mean in LMC??
Branch always.

##### What does `BRA` do in LMC??
Set the contents of the accumulator to the given address.

##### What does `DAT` mean in LMC??
Data.

##### What does `DAT` do in LMC??
Instead of storing the instruction in RAM, store the operand given where that operation would be.

##### What is the program counter in LMC??
It holds the address of the next instruction the little man has to carry out.

##### What is direct addressing??
Where an operand is specified as a memory address holding the value to be used.

##### What is immediate addressing??
Where the operand is specified as the actual value explicitly.

##### Why is it called Little Man Computer??
Because it's like a little man running about, grabbing instructions and doing all the operations in a computer.

---
Olly Britton — https://ollybritton.com. Machine-readable index: https://ollybritton.com/llms.txt
