151
program dipindahkan ke alamat yang ditunjuk oleh PC dan jika belum terpenuhi maka program akan dijalankan terus.
b. Penggunaan perintah percabangan bersyarat
Dalam penggunaan perintah percabangan bersyarat ini, ada 2 hal yang harus jelas yaitu :
Bagaimana syarat loncat dapat diberikan pada loncatan bersyarat. Jika ternyata ada maka diberikan alamat tujuan loncat pengalamatan.
c. Perintah loncat dengan pengalamatan langsung Mnemonik :
JP adr JP cc, adr
adr = alamat tujuan loncat cc = syarat loncat kode kondisi flag
Operasi
PC CPU diisi oleh alamat tujuan yaitu konstanta 16 bit yang
mengikuti Opcode. CPU akan Bila syarat loncat yang ditunjukkan
oleh ccc terpenuhi, maka PC akan diisi
oleh alamat
tujuan yaitu
152
menjalankan perintah yang ada pada alamat yang ditunjuk oleh
PC. konstanta 16 bit yang mengikuti Op-
code, CPU
akan menjalankan
perintah yang berada pada alamat yang sesuai dengan PC. Bila syarat
tidak terpenuhi maka PC = PC + 1, sehingga CPU akan menjalankan
perintah yang berada pada alamat sesuai dengan PC.
Format :
Adr C
3 Op-code 1
1 c
c c
1 adr + 1
alamat tujuan LSB alamat tujuan LSB
adr + 2 alamat tujuan MSB
alamat tujuan MSB
Sebagai syarat loncat hanya dapat dipakai kondisi flag tertentu, seperti ditunjukkan oleh tabel dibawah ini.
153
Setiap perintah loncat selalu hanya dapat menguji sebuah kondisi flag tertentu yang dihasilkan melalui perintah sebelumnya. Flag Half Carry H dan Flag
Subtract N tidak dapat dipakai sebagai syarat loncat.
Flag : tidak terpengaruh
d. Perintah loncat dengan pengalamatan relatif
Jenis pengalamatan ini, pada Z-80 hanya dipakai untuk perintah loncat.
Mnemonik
JR e JR cc, e
cc = syarat loncat hanya untuk flag carry dan zero e = offset, jarak loncat
Format :
Adr 1
8 Op-code 0
1 c
c adr + 1
Konstanta e Konstanta e
Pengertian masing-masing bit pada konstanta e, jarak adalah sebagai berikut : 7 6 5 4 3 2 1 0
V X X X X X X X
V = 0 : loncat ke depan 0 0 0 0 0 0 0 0 0 sampai + 127 desimal
0 1 1 1 1 1 1 1 V = 1 : loncat ke belakang 1 1 1 1 1 1 1 1
-1 sampai -128 desimal 1 0 0 0 0 0 0 0
154
Operasi
PC CPU diisi oleh alamat tujuan yaitu hasil dari PC saat itu
ditambahdikurangi konstanta
e. CPU akan menjalankan perintah
pada alamat yang ditunjukkan oleh PC.
Bila syarat loncat yang ditunjukkan oleh cc terpenuhi, maka PC akan diisi oleh
hasil penjumlahanpengurangan PC saat itu dengan konstanta e, bila tidak
terpenuhi PC = PC + 1.
Contoh : JR NC, - 4H
30H FCH
Loncat relatif untuk menjalankan perintah yang berada pada alamat PC -4 4 alamat ke
belakang dari alamat yang sedang ditunjuk PC saat itu , bila pada hasil operasi sebelumnya
tidak terjadi carry.
Untuk menghemat pemakaian lokasi memori pada pelaksanaan perintah untuk pembatasan pengulangan dapat dipergunakan.
155
Mnemonik :
DJNZ e yang fungsinya sama dengan :
DEC B JR NZ, e
yaitu mengurangi 1 dan lompat relatif jika Z = 0
Format :
1 Konstanta e
Flag tidak terpengaruhi
Contoh : LD HL, 1800
LD B, 00H LD HL, 00H
INC HL DJNZ - 5H
06 00 36 00
23 10 FB
Mengisi Reg B dengan konstanta 00 Mengisi Reg HL dengan konstanta 00
Menambah -1 isi HL Mengurangi -1 isi B dan loncat 5 lokasi
kebelakang
e. Perintah loncat pengalamatan tidak langsung melalui register