Format instruksi terdiri dari :
- Format instruksi 3 alamat
- Format instruksi 2 alamat
- Format instruksi 1 alamat
- Format instruksi 0 alamat
Pada kesempatan ini operasi yang akan kita gunakan adalah :
- ADD = Penjumlahan (+)
- SUB (SUBTRACT) = Pengurangan (-)
- MPY/MUL (MULTIPLY) = Perkalian (x)
- DIV (DIVIDE) = Pembagian (%)
- MOVE = Memindahkan Data
- LOAD = Memanggil Data
- STORE = Menyimpan Data
Sebagai Contoh Soal:
- Format Instruksi 3 Alamat
Bentuk umum [OP CODE], [AH], [AOP1], [AOP2]
Yang mana AH adalah Alamat Hasil;
AOP1 adalah Alamat Operan 1
AOP2 adalah Alamat Operan 2
Y = (A-B)
...(I) → Y
𑁋𑁋
(C+D*E) ...(II) → T
SUB Y, A, B
Y ← A-B
MUL T, D, E T ← D*E
ADD T, T, C
T ← T+C
DIV Y, Y, T Y ← Y/T
- Format Instruksi 2 Alamat
Yang mana AH adalah Alamat Hasil;
AO adalah Alamat Operan
Y = (A+B) ...(I) → Y
𑁋𑁋
(C+D*E) ...(II) → T
(I) Y = A+B
MOV Y,A Y ← A
ADD Y, B Y ← Y+B
(II) T = C+D*E
MOV T,D T ← D
MUL T,E T ← T*E
ADD T,C T ← T+C
(#) DIV Y,T Y ← Y/T
- Format Instruksi 1 Alamat
Yang mana AO adalah Alamat Operan
Acc adalah Accumulator
Y = (A+B) ...(I)
𑁋𑁋
(C+D*E) ...(II)
(I) LOAD D Acc ← D
MUL E Acc ← Acc*E
ADD C Acc ← Acc+C
STORE Y Y ← Acc
(II) LOAD A Acc ← A
ADD B Acc ← Acc+B
DIV Y Acc ← Acc/Y
(#) STORE Y Y ← Acc
- Format Instruksi 0 Alamat
Y = (A-B) ...(II)
𑁋𑁋
(C+D*E) ...(I)
(I) PUSH A S[top] ← A
PUSH B S[top] ← B
SUB S[top] ← A-B
(II) PUSH E S[top] ← E
PUSH D S[top] ← D
PUSH C S[top] ← C
MUL S[top] ← E*D
ADD S[top] ← S[top]+C
(#) DIV S[top] ← (A-B)/S[top]
POP Y OUT ← S[top]
Komentar
Posting Komentar