LAPORAN PRAKTIKUM MIKROPROSESSORSTOP WATCH
NAMA : INAWATINPM : 3332101037REKAN : GUNTUR
FAUZANTGL PRAKTIKUM : 10 NOVEMBER 2012ASISTEN : HASROHUDIN
LABORATORIUM ELEKTRONIKA & PENGUKURAN TEKNIK ELEKTROUNIVERSITAS SULTAN AGENG TIRTAYASA
2012
KATA PENGANTAR
Assalamu’alaikum Wa rahmatullahi Wa barakatuh.
Puji dan syukur kami panjatkan atas kehadirat Allah Subhanahu Wata’ala
atas segala limpahan, berkat dan rahmat-Nya sehingga penulis dapat
menyelesaikan praktikum dan dapat menyusun laporan praktikum EL-IV ini.
Shalawat serta Salam semoga selalu tercurah kepada Baginda Rasulullah
Muhammad Shalallahu ‘alaihi wa salam, karena berkat perjuangan Beliau lah
umat manusia dapat terbebas dari masa Jahiliyyah yang kelam.
Laporan ini disusun sebagai bentuk tindak lanjut dari praktikum EL-IV
yang meliputi Elektronika Daya, Mikroprosessor, dan Teknik Tenaga Listrik 2
yang mana mata kuliah tersebut terdapat pada semester V ini.
Penulis ucapkan terima kasih kepada semua pihak yang telah membantu
dalam proses penyusunan laporan praktikum ini. Penulis dengan senang hati
menerima saran dan kritik dari segenap pembaca demi perbaikan dan
penyempurnaan Laporan Praktikum ini. Semoga dapat bermanfaat bagi penulis
pada khususnya, serta dunia ilmu pengetahuan di bidang elektro pada umumnya.
Wassalamu’alaikum wa rahmatullahi wa barakatuh.
Cilegon, 20 Oktober 2012
Penulis
ii
DAFTAR ISI
COVER PRAKTIKUM ……...……………………………………........................i
KATA PENGANTAR……………………………………………………...….....ii
DAFTAR ISI……………………………….……………………………...….....iii
BAB I PENDAHULUAN……………..………………………………...1
1.1. DASAR TEORI...........……….………………………….........1
1.2. TUJUAN...........................………..……………………............8
1.3 ALAT-ALAT PRAKTIKUM………………...……..................8
1.4 PROSEDUR PERCOBAAN.......................................................8
BAB II TUGAS DAN PERTANYAAN…....………………………........10
BAB III ANALISA DAN FLOWCHART..........……………………..…...13
BAB IV KESIMPULAN…………………………………………..….….25
DAFTAR PUSTAKA
LAMPIRAN
iii
BAB IPENDAHULUAN
1.1 Tujuan Percobaan
1. Untuk membiasakan pemakai dengan intruksioperasi logika dan
perhitungan
2. Untuk memahami aamat memori
3. Untuk memahami arti dari register flag
4. Untuk melatih mengatur data untuk register CPU dan bagian memory
1.2 Teori Dasar
1.2.1. Operasi Aritmatika
Pada dasarnya hanya ada 5 macam operasi yag dapat dilaksanankan
oleh mikroprosesor Z80. Operasi aritmatika tersebut adalah penjumlaham,
pengurangan, tambah satu, kurang satu, dan membandingkan.
Operasi penjumlahan itu ada dua macam yaitu ADD dan ADC
(penjumlahan dengan carrynya). Selain itu dapat dibedakan operasi 8 bit
dengan operasi 8bit salah satunya data harus berada pada register A
(Akumulator)
1.2.2. Opeasi Logika
Operasi logika terdiri dari AND, OR, NOT, XOR
Tabel kebenaran dari operasi logika
1.2.3. Modus Penglamatan Tak Langsung Register ( Register Indirect)
Pada modus pengalamatan ini alamat lokasi data tersimpan pada
suatu pasangan register. Sebagai contoj perhatikan perintah berikut ini:
LD HL 2005H
LD B(HL)
Perhatikan bahwa perintah pertama meminta agar pasangan register
HL diisi dengan 2005H perintah kedua menyatakan isi lokasi memori yang
ditunjuk HL yaitu 2005H agar disalinb ke register B. Tanda kurung pada
(HL) menyatakan alamat lokasi memori yang ditunjuk oleh isi pasangan
register HL. Disini dikatakan bahwa register HLberfungsi sebagai
penunjuk (pointer) memori.
1.2.4.Modus Pengalamatan Terindeks
Pada mikroprosesor Z-80 terdapat dua register indeks yaitu register
X dan register Y masing masing besarnya 16 bit. Keduanya digunakan
untuk menunjukan lokasi memori. Letak lokasi memori yang ditunjuk
dinyatakan dengan suatu offset 8 bit (bilangan dari 0 hingga FFH = 256)
terhadap isi register indeks.
Sebagai contoh, andaikan register indeks IX berisi 2000H (atau IX
= 2000H) maka perintah
LD (IX + 06 H) 02H
Akan berisi istilah lokasi memori (LX + 06H) = 2000H + 06 = 2006H
debgan bilangan 02H. Dengan notasi alih register pernyataan diatas dapat
dituliskan sebagai
(LX + 06) ← 02H
yang berarti isikan bilangan 02H pada lokasi memori yang ditunjuk oleh
(LX + 06H).
lokasi isi keterangan mnemonic
(heksa) (heksa)
1800 DD byte pertama sandi operasi
1801 36 byte kedua sandi operasi LD(IX-6).2
1802 06 perpindahan
1803 02 data
Setelah perintah ini dilaksanakan maka lokasi 2006H akan berisi bilangan 02H.
BAB II
PERTANYAAN DAN TUGAS
2.1 Jawaban Pertanyaan
MNEMONIC OPERAND KOMENTAR OUTPUT
ORG 1800H Mulai address prog. 3E05
LD A,05H
LD B,A Kutip isi reg A ke reg B 47
LD C,FFH Kutip isi reg FFH ke reg C 0EFF
LD E,C Kutip isi reg C ke reg E 59
LD H,E Kutip isi reg E ke reg H 63
RST 38H Kembali ke display FF
1. Terjemahkan program di atas ke dalam kode mesin pada lembar percobaan
yang diberikan oleh asisten sesuatu kolom- kolom yang tersedia.
Jawab :
LD A,05 H
N
Huruf “N” di atas di sebut variabel , karena “N” tersebut hanya
mengenal angka 00, 01, 02, 03, 04, 05, 06, 07, 08, 09, AA, BB, CC, DD, EE, FF.
Selain dari angka- angka tersebut maka tidak dapat di konversi menjadi huruf
“N”, maka dibaca LD A,N dan jika di cari di tabel Z80-CPU INSTRUCTIONS
SORTED BY MNEMONIC hasilnya ialah 3E20. Karena pada data awal sudah
terdapat variabel 05, maka pada bahasa mesin (OP-CODE) hasilnya ialah 3E 05.
LD B,A
Jika di cari di tabel Z80-CPU INSTRUCTIONS SORTED BY
MNEMONIC hasil bahasa mesinnya ialah 47.
LD C,FFH
N
Huruf “N” di atas di sebut variabel , karena “N” tersebut hanya mengenal
angka 00, 01, 02, 03, 04, 05, 06, 07, 08, 09, AA, BB, CC, DD, EE, FF. Selain dari
angka- angka tersebut maka tidak dapat di konversi menjadi huruf “N”, maka
dibaca LD C,N dan jika di cari di tabel Z80-CPU INSTRUCTIONS SORTED BY
MNEMONIC hasilnya ialah 0E20. Karena pada data awal sudah terdapat variabel
FF, maka pada bahasa mesin (OP-CODE) hasilnya ialah 3E FF.
LD E,C
Jika di cari di tabel Z80-CPU INSTRUCTIONS SORTED BY
MNEMONIC hasil bahasa mesinnya ialah 59.
LD H,E
Jika di cari di tabel Z80-CPU INSTRUCTIONS SORTED BY
MNEMONIC hasil bahasa mesinnya ialah 63.
RST 38H
RST tersebut berarti mereset data kembali keawal.
BAB III
ANALISA DAN FLOWCHART
4.1. Percobaan 1-1
Setelah melakukan percobaan tentang Modus Pengalamatan di dapat data-
data sebagat berikut:
Address Mnemonic OP-Code
1800 LD A, 05H 3E05
1802 LD B, A 47
1803 LD C, FFH 0EFF
1804 LD E, C 59
1805 LD H, E 63
1806 RST 38H FF
Register A B C E H
Data 05 05 FF FF FF
Dari data di atas dapat di analisa sebagai berikut:
Untuk LD A,05 H
N
Huruf “N” di atas di sebut variabel , karena “N” tersebut hanya
mengenal angka 00, 01, 02, 03, 04, 05, 06, 07, 08, 09, AA, BB, CC, DD, EE, FF.
Selain dari angka- angka tersebut maka tidak dapat di konversi menjadi huruf
“N”, maka dibaca LD A,N dan jika di cari di tabel Z80-CPU INSTRUCTIONS
SORTED BY MNEMONIC hasilnya ialah 3E20. Karena pada data awal sudah
terdapat variabel 05, maka pada bahasa mesin (OP-CODE) hasilnya ialah 3E 05.
Karena OP-CODE tersebut memiliki 2 variabel, maka Address 1800 ialah alamat
untuk variabel 3E sedangkan untuk variabel 05 memiliki Address 1801.
Untuk LD B,A
Jika di cari di tabel Z80-CPU INSTRUCTIONS SORTED BY
MNEMONIC hasil bahasa mesinnya ialah 47. Karena hasilnya hanya terdapat 1
variabel yaitu 47, maka pada LD B,A memiliki Address 1802
Untuk LD C,FFH
N
Huruf “N” di atas di sebut variabel , karena “N” tersebut hanya mengenal angka
00, 01, 02, 03, 04, 05, 06, 07, 08, 09, AA, BB, CC, DD, EE, FF. Selain dari
angka- angka tersebut maka tidak dapat di konversi menjadi huruf “N”, maka
dibaca LD C,N dan jika di cari di tabel Z80-CPU INSTRUCTIONS SORTED BY
MNEMONIC hasilnya ialah 0E20. Karena pada data awal sudah terdapat variabel
FF, maka pada bahasa mesin (OP-CODE) hasilnya ialah 3E FF. Karena pada data
awal sudah terdapat variabel FF, maka pada bahasa mesin (OP-CODE) hasilnya
ialah 3E FF. Karena OP-CODE tersebut memiliki 2 variabel, maka Address 1803
ialah alamat untuk variabel 3E sedangkan untuk variabel FF memiliki Address
1804.
Untuk LD E,C
Jika di cari di tabel Z80-CPU INSTRUCTIONS SORTED BY
MNEMONIC hasil bahasa mesinnya ialah 59. Karena hasilnya hanya terdapat 1
variabel yaitu 47, maka pada LD B,A memiliki Address 1805
Untuk LD H,E
Jika di cari di tabel Z80-CPU INSTRUCTIONS SORTED BY
MNEMONIC hasil bahasa mesinnya ialah 63. Karena hasilnya hanya terdapat 1
variabel yaitu 63, maka pada LD B,A memiliki Address 1806
Untuk RST 38H
RST tersebut berarti mereset data kembali keawal. Karena hasilnya hanya
terdapat 1 variabel yaitu 38, maka pada RST 38H memiliki Address 1807.
Untuk register didapat data seperti berikut:
A : 05
Karena pada mnemonik LD A, 05H berarti variabel 05 untuk variabel A.
B : 05
Karena pada mnemonik LD B,A berarti variabel 05 untuk variabel B.
C : FF
Karena pada mnemonik LD C, FFH berarti variabel FF untuk variabel C.
D : FF
Karena pada mnemonik LD A, H, E berarti variabel FF untuk variabel E.
E : FF
Karena pada mnemonik LD A, 38H berarti variabel FF untuk variabel H.
3.2 Percobaan 1-2
Address Mnemonic Code
1800 LD A, 0 3E0
1802 LD B, 1 0601
1804 LD C, 2 0E02
1806 LD D, 3 1603
1808 LD E, 4 1E04
180A LD H, 5 2605
180C LD L, 6 2E06
180E RST 38H FF
Register A B C D E H L
Data 00 01 02 03 04 05 06
3.2 Flowchart Program
3.2.1. Flowchart Program LED menyala gerakan flip-flop 2-2
Gambar 2. Flowchart program utama
START
Nyalakan LEDp0.0, p0.1, p0.4, p0.5
Call delay
Nyalakan LEDP0.2, p0.3, p0.6, p0.7
Call delay
END
START
tidak
tidak ya
tidak
Gambar 3. flowchart sub-rutin DELAY
18
3.2.2. Flowchart Program kombinasi LED dengan gerakan dari P 1.0 s/d P 1.7
START
Isi register 0 dengan 2x ulang
(R0 < - # 2H)
Isi register 1 dengan 255x
ulang (R1 < - # 0FFh)
Isi register 2 dengan 256 x
ulang (R2 < - # 0)
Turunkan isi register 2
(R2 < - R2-1)
Apakah isi register 2 =
0
END
Apakah isi register 0 =
0
Turunkan isi register 0
(R0 < - R0-1)
Apakah isi register 1 =
0
Turunkan isi register 1
(R1 < - R1-1)
Gambar 4. Flowchart program utama
19
END
P0 A
A
Call delay
RL A
ya
tidak
tidak
ya
ya
tidak
Gambar 5. flowchart sub-rutin DELAY
20
START
Isi register 0 dengan 8x ulang
(R0 < - # 8H)
Isi register 1 dengan 255x
ulang (R1 < - # 0FFh)
Isi register 2 dengan 256 x
ulang (R2 < - # 0)
Turunkan isi register 2
(R2 < - R2-1)
Turunkan isi register 1
(R1 < - R1-1)
Apakah isi register 1 =
0
Apakah isi register 2 =
0
Turunkan isi register 0
(R0 < - R0-1)
Apakah isi register 1 =
0
END
3.2.3. Flowchart Program kombinasi LED dengan gerakan ping-pong
ya
tidak
tidak
ya
Gambar 6. Flowchart Program kombinasi LED dengan gerakan ping-pong
BAB IV
MULAI/ END
Kirim data ke port 1
Panggil delay
RL A
ApakahA= 01111111B
MULAI1 Kirim data ke port 1
Panggil delay
RR A
ApakahA= 01111111B
KESIMPULAN
Setelah melakukan percoban tentang Modus Pengalamatan dapat di tarik
kesimpulan sebagai berikut:
Terdapat 4 Modus Pengalamatan yaitu:
1. Modus Penglamatan Tersirat
Pada modus pengalamatan ini alamat data tidak perlu karena sudah
tersirat di dalam perintah itu sendiri. Sebagai contoh adalah perintah
mnemonic CPL, yang akan mengkomplemen isi rigister. A (Akumulator).
Untuk perintah ini lokasi data tidak disebutkan dalam perintah, karena
sudah tersirat bahwa data yang dimaksud ada di register A (Akumulator).
Contoh lain adalah perintah mnemonic NEG yang berarti mengubah isi
register A (Akumulator) agar menjadi negatif.
2. Modus Pengalamatan Dekat
Pada modus pengalamatan ini nilai data disebutkan dalam perintah
itu sendiri. Sebagai contoh:
LD A,05H : Isikan bilangan 05H ke register A
LD HL,2005H : Isikan bilangan 2005H (2 byte) ke dalam
pasangan register HL.
Pada kode mesin untuk perintah ini, letak data dalam memori
berada pada alamat berikutnya setelah sandi operasi perintah yang
bersangkutan. Contohnya:
LD A,05H : Misalnya sandi LD A = 3EH berada di lokasi 1800 H. Maka
data yang digunakan (05H) akan berada pada lokasi 1801H atau
Lokasi Isi
1800H : 3EH
1801H : 05H
3. Modus Penglamatan Tak Langsung Register ( Register Indirect)
Pada modus pengalamatan ini alamat lokasi data tersimpan pada
suatu pasangan register. Sebagai contoj perhatikan perintah berikut ini:
LD HL 2005H
LD B(HL)
Perhatikan bahwa perintah pertama meminta agar pasangan register
HL diisi dengan 2005H perintah kedua menyatakan isi lokasi memori yang
ditunjuk HL yaitu 2005H agar disalinb ke register B. Tanda kurung pada
(HL) menyatakan alamat lokasi memori yang ditunjuk oleh isi pasangan
register HL. Disini dikatakan bahwa register HLberfungsi sebagai
penunjuk (pointer) memori.
4.Modus Pengalamatan Terindeks
Pada mikroprosesor Z-80 terdapat dua register indeks yaitu register
X dan register Y masing masing besarnya 16 bit. Keduanya digunakan
untuk menunjukan lokasi memori. Letak lokasi memori yang ditunjuk
dinyatakan dengan suatu offset 8 bit (bilangan dari 0 hingga FFH = 256)
terhadap isi register indeks.
Sebagai contoh, andaikan register indeks IX berisi 2000H (atau IX
= 2000H) maka perintah
LD (IX + 06 H) 02H
Akan berisi istilah lokasi memori (LX + 06H) = 2000H + 06 = 2006H
debgan bilangan 02H. Dengan notasi alih register pernyataan diatas dapat
dituliskan sebagai
(LX + 06) ← 02H
yang berarti isikan bilangan 02H pada lokasi memori yang ditunjuk oleh
(LX + 06H).
Terdapat 4 konversi data pada Modus Pengalamatan yaitu:
1. REGISTER TO REGISTER
Contoh : LD A,D
2. MEMORI TO REGISTER
Contoh : LD A,HL
3. MEMORI TO MEMORI
Contoh : LDD
5. REGISTER INTERMEDIA TO REGISTER
Contoh : A,05H
DAFTAR PUSTAKA
Modul Praktikum Mikroprosessor. 2007. Laboratorium Elektronika dan
Pengukuran Jurusan Elektro. Cilegon : FT UNTIRTA.
BLANKO
Top Related