CONTOH 10-3
Bagaimana cara memprogram SAP-1 untuk menyelesaikan persoalan aritmetik ini ?
16 + 20 + 24 – 32
Bilangan ini diberikan dalam bentuk desimal.
JAWABAN
_________________________________________________
Suatu cara penyelesaiannya adalah menggunakan program dari contoh terdahulu, yaitu program menyimpan data (16,20,24,32) pada lokasi memori 9H sampai CH. Dengan bantuan lampiran 1, kita dapat mengubah data desimal kedalam data heksa-desimal untuk mendapatkan versi bahasa asembli :
Alamat Isi
0H LDA 9H
1H ADD AH
2H ADD BH
3H SUB CH
4H OUT
5H HLT
6H XX
7H XX
8H XX
9H 10H
AH 14H
BH 18H
CH 20H
Dalam bahasa mesin data-data ini menjadi :
Alamat Isi
0000 0000 1001
0001 0001 1010
0010 0001 1011
0011 0010 1100
0100 1110 XXXX
0101 1111 XXXX
0110 XXXX XXXX
-
XXXX XXXX
-
0001 0000
1010 0001 0100
-
0001 1000
-
0010 0000
Perhatikan disini bahwa penyimpanan program mendahulu penyimpanan kata-kata data. Program menempati lokasi memori yang lebih rendah dan data menempati lokasi yang lebih tinggi. Hal ini penting dalam SAP-1 karena pencacah program menunjuk ke alamat 0000 untuk instruksi pertama, alamat 0001 untuk instruksi kedua, dan seterusnya.
|