TEKNIK MIKROPROSESOR 2
Penulis : DJOKO SUGIONO
Editor Materi : WELDAN KHUSUF
Desain & Ilustrasi Buku : PPPPTK BOE MALANG
Hak Cipta © 2013 Kementerian Pendidikan & Kebudayaan
KATA PENGANTAR Puji syukur kami panjatkan kepada Tuhan yang Maha Esa atas tersusunnya buku teks ini, dengan harapan dapat digunakan sebagai buku teks untuk siswa Sekolah Menengah Kejuruan (SMK) Bidang Studi Keahlian Pengelasan Kapal, Program Keahlian Pengelasan Kapal. Penerapan kurikulum 2013 mengacu pada paradigma belajar kurikulum abad 21 menyebabkan terjadinya perubahan, yakni dari pengajaran (teaching) menjadi BELAJAR (learning), dari pembelajaran yang berpusat kepada guru (teacherscentered) menjadi pembelajaran yang berpusat kepada peserta didik (studentcentered), dari pembelajaran pasif (pasive learning) ke cara belajar peserta didik aktif (active learning-CBSA) atau Student Active Learning-SAL. Buku teks “Teknik Mikroprosesor” ini disusun berdasarkan tuntutan paradigma pengajaran dan pembelajaran kurikulum 2013 diselaraskan berdasarkan pendekatan model pembelajaran yang sesuai dengan kebutuhan belajar kurikulum abad 21, yaitu pendekatan model pembelajaran berbasis peningkatan keterampilan proses sains. Penyajian buku teks untuk Mata Pelajaran “Teknik Mikroprosesor” ini disusun dengan tujuan agar supaya peserta didik dapat melakukan proses pencarian pengetahuan berkenaan dengan materi pelajaran melalui berbagai aktivitas proses sains sebagaimana dilakukan oleh para ilmuwan dalam melakukan eksperimen ilmiah (penerapan scientifik), dengan demikian peserta didik diarahkan untuk menemukan sendiri berbagai fakta, membangun konsep, dan nilai-nilai baru secara mandiri. Kementerian Pendidikan dan Kebudayaan, Direktorat Pembinaan Sekolah Menengah Kejuruan, dan Direktorat Jenderal Peningkatan Mutu Pendidik dan Tenaga Kependidikan menyampaikan terima kasih, sekaligus saran kritik demi kesempurnaan buku teks ini dan penghargaan kepada semua pihak yang telah berperan serta dalam membantu terselesaikannya buku teks siswa untuk Mata Pelajaran “Teknik Mikroprosesor” Kelas X / Semester 2 Sekolah Menengah Kejuruan (SMK). Jakarta, 12 Desember 2013 Menteri Pendidikan dan Kebudayaan
Prof. Dr. Mohammad Nuh, DEA
DAFTAR ISI Halaman HALAMAN SAMPUL ............................................................................................................. i HALAMAN JUDUL ................................................................................................................ ii KATA PENGANTAR ………………………………………………………………………. iii DAFTAR ISI ........................................................................................................................... iv DESKRIPSI MATERI PEMBELAJARAN ……………………….……………………….. vi
BAB I. INSTRUKSI MIKROPROSESOR 1.1. Dasar Komponen Mikroprosesor .......................................................................... 2 1.1.1. Instruksi Mengisi dan Menukar ……………………………..…………. 5 1.1.2. Instruksi Transfer Blok ………………………………………………… 6 1.1.3. Instruksi Aritmatika dan Logika …………………….…………………. 7 1.1.4. Instruksi Putar dan Geser ………………………….…………………… 8 1.1.5. Instruksi Manipulasi Bit ………………………..………………………. 9 1.1.6. Instruksi Jump, Call dan Return ………………………………………. 10 1.1.7. Instruksi Input / Output………………………………...……………… 11 1.1.8. Instruksi Kelompok Kontrol CPU ……………………...…………….. 12
1.2. Deskripsi Instruksi Mikroprosesor Z-80 ............................................................. 12 1.2.1. Instruksi Transfer Data Z-80 …………..……...………………….…… 13 1.2.2. Instruksi Aritmatika Z-80 …………………………………………….. 26 1.2.3. Instruksi Bit Z-80 ……………………………………….…………….. 42 1.2.4. Instruksi Geser / Putar Z-80 ………………………….……………….. 50 1.2.5. Instruksi Kontrol Z-80 ……………………………...………………… 63 1.2.6. Instruksi Hardware Z-80 …………………..………………………….. 69 1.2.7. Instruksi Set ………………………………………...………………… 77
1.3. Operasi Instruksi Mikroprosesor Z-80 ………………………………………… 83 1.3.1. Sistem / Cara Pengalamatan …………………….…………………….. 83
1.3.1.1. Pengalamatan Immediate ……………………………………. 84 1.3.1.2. Pengalamatan Langsung (Direct) …………………………… 85 1.3.1.3. Pengalamatan Tidak Langsung (Indirect) …………..……….. 86 1.3.1.4. Pengalamatan Terindeks …………………………………….. 87 1.3.1.5. Latihan ………………………………………………………. 89
1.3.2. Perintah Transfer ……………………………………………………… 90 1.3.2.1. Perintah Transfer Dengan Pengalamatan Immediate………… 91 1.3.2.2. Perintah Transfer Dengan Pengalamatan Langsung ………… 92 1.3.2.3. Perintah Input-Output Dengan Pengalamatan Langsung….....104 1.3.2.4. Perintah Input-Output Dengan Pengalamatan Tidak Langsung ……………………………………………...……. 105 1.3.2.5. Latihan …………………………………………...………… 106
1.3.3. Instruksi Untuk Sistem Kerja Perintah Flag…………………...…….. 108 1.3.3.1. Flag Zero …………………………………………………… 109 1.3.3.2. Flag Carry …………………………….……………………. 110 1.3.3.3. Flag Sign………………………………………….……….... 110 1.3.3.4. Flag Overflow ……………………………………....……… 110 1.3.3.5. Flag Parity ……………………………….…………………. 111 1.3.3.6. Penunjukan Nol pada Perintah Blok ……………………….. 111 1.3.3.7. Penunjukan Dari Pengaktif Flip-Flop Interupsi (IFF2)…….. 111 1.3.3.8. Latihan ………………………………………...…………… 112
1.3.4. Operasi Instruksi Aritmatika ……………………………...…………. 112 1.3.4.1. Operasi Aritmatika Dengan Operasi 8 Bit………………….. 113 1.3.4.2. Operasi Aritmatika Dengan Operasi 16 Bit………………… 116 1.3.4.3. Latihan ………………………………………………...…… 118
1.4. Operasi Perintah Biner …………………………………………….…………. 123 1.4.1. Perintah AND …………………………………………….………….. 123 1.4.2. Perintah OR ………………………………………………………….. 124
1.4.3. Perintah EX-OR ………………………………...…………………… 124
1.5. Operasi Instruksi Putar / Rotasi ………………………………………………. 124 1.5.1. Perintah Putar ………………………………………...……………… 125 1.5.2. Perintah Geser ………………………………………….……………. 127 1.5.3. Latihan ………………………………………………………………. 131
1.6. Operasi Instruksi Bit Pada Z-80 ……………………………………………… 140 1.6.1. Tes Bit b Pada Register r …………………………………………... 140 1.6.2. Reset Bit b Pada Operan r …………………………………………. 141 1.6.3. Set Bit b Pada Operan r ……………………………………………. 141 1.6.4. Latihan ………………………………………………….………….. 142
1.7. Operasi Instruksi Loncat ………………………………………………...……. 148 1.7.1. Perintanh Pencabangan Bersyarat dan Tidak Bersyarat ………..…… 150 1.7.2. Penggunaan Perintah Pencabangan Bersyarat ………………………. 151 1.7.3. Perintah Loncat Dengan Pengalamatan Langsung …………….…….. 151 1.7.4. Perintah Loncat Dengan Pengalamatan Relatif …………...………… 153 1.7.5. Perintah Loncat Dengan Pengalamatan Tidak Langsung Melalui Register ……………………………………….…………….. 155 1.7.6. Latihan ………………………………………………………………. 157
1.8. Operasi Sub Routine ………………………………………………………….. 160 1.8.1. Program Bagian (Sub Routine) ……………………………………… 160 1.8.2. Proses Pemanggilan Sebuah Sub Routine …………………………… 161 1.8.3. Penyimpan Alamat Balik Pada Stack …………….………………….. 162 1.8.4. Perintah Pemanggilan Sub Routine ………………………………..... 163 1.8.5. Perintah Loncat Balik Dari Sub Routine ………….…………………. 167 1.8.6. Pemberian Parameter Pada Sub Routine ………………………...…... 169
BAB II. DASAR PEMROGRAMAN MIKROPROSESOR 2.1. Algoritma Pemrograman Mikroprosesor ......................................................... 172
2.1.1. Pengertian Algoritma……………………………..…………………… 173 2.1.2. Kriteria Algoritma ………………………………..…………………… 174 2.1.3. Struktur Algoritma ……………………………………………………. 175 2.1.4. Penulisan Algoritma ………………….…………….………………… 176 2.1.4.1. Penulisan Algoritma Menggunakan Bahasa Natural………….. 177 2.1.4.2. Diagram Alir (Flow Chart)……………………………………. 177 2.1.4.3. Struktogram …………………………………….…………….. 182 2.1.4.4. Latihan …………………………………………….………….. 198
2.2. Merancang Program Mikrokomputer .............................................................. 199 2.2.1. Analisa Masalah ……………………………..….…………………….. 200 2.2.2. Merancang Program ……………………………...…………………… 201 2.2.3. Penulisan Program …………………………………..………….…….. 202 2.2.4. Program Assembly ……………………………...…………………….. 203 2.2.5. Pengisian Program …………………………………………………..... 206 2.2.6. Latihan ………………………………………...……………………… 207
BAB III. PEMROGRAMAN MIKROPROSESOR 3.1. Pemrograman Mikroprosesor ........................................................................ 209 3.2. Pemrograman Berbasis Masalah ................................................................... 211 3.2.1. Program Transfer Data ………………………..…….……………… 211 3.2.2. Program Aritmatika …………………………………………………. 219 3.2.3. Program Input-Output (Masukan-Keluaran) ………………….....….. 224 3.2.4. Pemrograman ADC-DAC………...……………………….………… 233 3.2.4.1. DAC …………………………………………………...……. 233 3.2.4.2. ADC ………………………………………………………… 236
DAFTAR PUSTAKA ……………………………………………………….…………….. 240