Not a premium member yet? Save 100's of hours on lesson prep with a comprehensive library of GCSE Computer Science resources - including worksheets, tests, and PowerPoint presentations.
Download the complete GCSE Computer Science bundle including all teacher resources and student revision:
- 200+ Computer Science/ICT resources
+ any we release in the future!
- Access to all student revision notes
- OCR, AQA, Edexcel and WJEC compatible
- New 9-1 GCSE spec
The following program will demonstrate the use of LDA and STA, the Load and Save instructions used in the .
Running the program: when prompted, INPUT a set of two numbers. The program should then OUTPUT them in the same order that they were entered.
1 STA 9
3 STA 10
4 LDA 9
6 LDA 10
9 DAT 0
10 DAT 0
- Copy the eleven line program above and paste it into the Program box.
- Click on the “Assemble Program” button.
- After the program is assembled you should see RAM addresses 0 to 8 contain the machine code instructions shown in the image.
- Click on the RUN button.
- If you have difficulty following what is happening, read the explanation below and use STEP instead of RUN so you can follow each step.
first and second are used to label a DAT instruction. DAT identifies the 10th and 11th instructions as data. The labels therefore refer to RAM addresses 9 and 10 respectively (0-indexed counting).
0 INP //the first input value is copied into the accumulator. 1 STA first //the accumulator contents are stored in RAM address 9 (labelled first). 2 INP //the second input value is copied into the accumulator. 3 STA second //the accumulator contents are stored in RAM address 10 (labelled second). 4 LDA first //the contents of memory address 9 (labelled first) are loaded into the accumulator. 5 OUT //the value in the accumulator is sent to the OUTPUT. 6 LDA second //the contents of memory address 10 (labelled second) are loaded into the accumulator. 7 OUT //the value in the accumulator is sent to the OUTPUT. 8 HLT //the program halts.
INPUT= 2, 3
OUTPUT = 2, 3