Percobaan - Percobaan
Ada berbagai metoda dalam merancang suatu proglam loop. Cobalah untuk merancang program loop yang digambarkan dalam ilustrasi-ilustrasi berikut ini.
1. Program Loop Dengan Jumlah Loop Lebih Kecil Dari 256
Jika jumlah loop lebih kecil dari 256, register B dianggap sebagai penghitung loop. Pada akhir loop, instruksi DJNZ dapat dipakai untuk mengurangi register B dengan 1. Jika hasilnya tidak sama dengan ‑ nol, loncat ke lokasi yang dLtuniuk dengan mempergunakan metoda jump relative untuk melanjutkan pelaksanaan program. Cobalah untuk menganalisa program berikut ini dan memeriksa fungsinya dengan memasukkannya pada GMS‑I dan menjalankannya.
ORG 1800H
LD HL,1900H
LD B,20H
LOOP LD (HL),A
INC HL
DJNZ LOOP
RST 38H
- Preset register A pada 0 Lalu jalankan program diatas:
Hasilnya :
Isi memori address 1900H – 191FH = 00
Isi memori address 1920H = 00.
- Preset register A pada 55 H lalu jalankan program diatas:
Hasilnya :
Isi memori address 1900H – 191FH = 55
Isi memori address 1920 H = 00.
- Preset register A pada 64H dan gantilah instruksi kedua LD B, 20H dengan instruksi LD B,0. Jalankan programnya lagi.
Hasilnya :
Isi memori address 1900 H – 19F FH = 64
2. Loop Bersarang
Dalam program‑program yang lebih rumit, suatu loop dapat bersarang atau berada di dalam loop yang lain secara total. Berikut ini adalah cara mengubah isi setiap kelompok data dalam bentuk bilangan hexadesimal:
Tabel 10. Kelompok Data Dalam Bentuk Bilangan Hexadesimal
ADDRESS | OBJECT CODE |
1900H – 190FH | 00 |
1910H – 191FH | 01 |
1920H – 192FH | 02 |
1930H – 193FH | 03 |
1940H – 194FH | 04 |
1950H – 195FH | 05 |
1960H – 196FH | 06 |
1970H – 197FH | 07 |
1980H – 198FH | 08 |
1990H – 199FH | 09 |
19A0H – 19AFH | 0A |
19B0H – 19BFH | 0B |
19C0H – 19CFH | 0C |
19D0H – 19DFH | 0D |
19E0H – 19EFH | 0E |
19F0H – 19FFH | 0F |
A. Alat Dan Bahan
1. Adaptor 12 V 1 Buah
2. Trainer Mikroprosessor 1 Buah
3. Modul Mikroprosessor 1 Buah
B. Langkah Percobaan
1. Percobaan 4.1
a. Input program/objek kode program loop
b. Isi register A dengan menekan REG – AF, ubah data yang ada pada register A
c. Eksekusi program : RESET – PC – GO
d. Lihat hasilnya pada memory address 1900H – 191FH dan 1920H
2. Percobaan 4.2
a. Input program/objek kode proglam loop bersarang
b. Isi register A dengan menekan REG – AF, ubah data yang ada pada register A
c. Eksekusi program : RESET – PC – GO
d. Lihat hasilnya pada memory address 1900H – 19FFH dan catat perubahan data yang terjadi.
C. Hasil Percobaan
1. Percobaan 4.1
a. Preset register A pada 0 Lalu jalankan program diatas:
Hasilnya :
Isi memori address 1900 H – 191 FH = 00
Isi memori address 1920 H = 00.
b. Preset register A pada 55 H lalu jalankan program diatas:
Hasilnya :
Isi memori address 1900 H – 191 FH = 55
Isi memori address 1920 H = 00.
c. Preset register A pada 64H dan gantilah instruksi kedua LD B, 20H dengan instruksi LD, B,0. Jalankan programnya lagi.
Hasilnya :
Isi memori address 1900 H – 19F FH = 64
Tidak ada komentar:
Posting Komentar