GCSE Functions and Procedures (14-16 years)
- An editable PowerPoint lesson presentation
- Editable revision handouts
- A glossary which covers the key terminologies of the module
- Topic mindmaps for visualising the key concepts
- Printable flashcards to help students engage active recall and confidence-based repetition
- A quiz with accompanying answer key to test knowledge and understanding of the module
A-Level Basic programming constructs (16-18 years)
- An editable PowerPoint lesson presentation
- Editable revision handouts
- A glossary which covers the key terminologies of the module
- Topic mindmaps for visualising the key concepts
- Printable flashcards to help students engage active recall and confidence-based repetition
- A quiz with accompanying answer key to test knowledge and understanding of the module
The LMC Instruction Set (summary table)
Instruction | Mnemonic | ‘Machine Code’ | Further information |
---|---|---|---|
Load | LDA | 5xx | Load the contents of address xx onto the accumulator. Note: the contents of the address are not changed. |
Store | STA | 3xx | Store the contents of the accumulator to address xx. Note: the contents of the accumulator are not changed. |
Add | ADD | 1xx | Add the contents of address xx to the accumulator. Note: the contents of the address are not changed and the total cannot exceed 999. |
Subtract | SUB | 2xx | Subtract the contents address xx from the accumulator. Note: the contents of the address are not changed. Note: If a subtract instruction causes negative results then a negative flag will be set so that BRP can be used properly. |
Input | INP | 901 | Copy the value from the “in box” onto the accumulator. |
Output | OUT | 902 | Copy the value from the accumulator to the “out box”. Note: the contents of the accumulator are not changed. |
End | HLT | 000 | Stop the LMC simulator executing the program. |
Branch always | BRA | 6xx | Set the program counter to address xx. |
Branch if zero | BRZ | 7xx | If the contents of the accumulator are ZERO , set the program counter to address xx. |
Branch if zero or positive | BRP | 8xx | If the contents of the accumulator are ZERO or positive (i.e. the negative flag is not set), set the program counter to address xx. |
Data storage | DAT | Reserve as data the memory address reached when this instruction is compiled. Note: a value N can be stored at the memory address by using DAT N |
NOTE: xx represents a memory address between 0 and 99.