HalamanJudul. Diktat MK Mikroprosesor dan Antarmuka. Disusun oleh : Raditiana Patmasari Inung Wijayanto Ramdhan Nugraha

Ukuran: px
Mulai penontonan dengan halaman:

Download "HalamanJudul. Diktat MK Mikroprosesor dan Antarmuka. Disusun oleh : Raditiana Patmasari Inung Wijayanto Ramdhan Nugraha"

Transkripsi

1 HalamanJudul Diktat MK Mikroprosesor dan Antarmuka Disusun oleh : Raditiana Patmasari Inung Wijayanto Ramdhan Nugraha Fakultas Teknik Elektro Universitas Telkom Bandung 2014

2

3 Halaman Pengesahan Diktat Mata Kuliah Mikroprosesor dan Antarmuka Diktat Mata Kuliah Mikroprosesor dan Antarmuka telah selesai disusun dan telah disahkan untuk segera dapat digunakan Bandung, Oktober 2014

4 Prakata Mata kuliah Mikroprosesor dan Antarmuka adalah mata kuliah wajib pada Fakultas Teknik Elektro, yang ditempuh mahasiswa pada semester 4. Pada Kurikulum 2012 tergolong pada kelompok mata kuliah MKB ( Matakuliah Keahlian berkarya ), yang merupakan kelompok bahan kajian dan pelajaran yang bertujuan menghasilkan tenaga ahli dengan kekaryaan berdasarkan dasar ilmu dan ketrampilan yang dikuasai. Berdasarkan silabus yang telah disusun, kompetensi yang ingin dicapai dari matakuliah ini adalah mahasiswa mengetahui proses yang terjadi didalam mikroprosesor bila suatu instruksi dijalankan, baik aliran data antara mikroprosesor, memori dan I/O, perpindahan data antar register, proses aritmatik dan logika. Mahasiswa mampu merancang sistem mikroprosesor untuk keperluan sederhana, baik perangkat lunak maupun perangkat kerasnya, pemilihan antarmuka yang sesuai serta interkoneksinya. Mahasiswa mempunyai wawasan mengenai perkembangan mikroprosesor dan sistemnya sampai saat ini serta aplikasinya. Susunan materi pada diktat ini meliputi review konsep bilangan, pengenalan mikroprosesor, arsitektur Mikroprosesor 8088, struktur memori, set instruksi pada Mikroprosesor 8088, komponen penunjang antarmuka Mikroprosesor 8088, antarmuka denga memori, antarmuka dengan perangkat I/O, dan interrupt. Diharapkan melalui Diktat Ajar Mikroprosesor dan Antarmuka, mahasiswa dapat terbantu dalam memahami dan mempelajari matakuliah ini sesuai dengan silabus dan kompetensi yang telah ditetapkan. Tentunya masih banyak kekurangan dalam penyusunan diktat, kami mohon maaf sebesar-besarnya dan semoga dapat memberikan manfaat untuk perkuliahan Mikroprosesor dan Antarmuka. Bandung, Oktober 2014 Tim Penyusun

5 Daftar Isi HalamanJudul... 1 Halaman Pengesahan... 3 Prakata... 4 Daftar Isi... 5 Bab I... 9 Sistem Bilangan Sistem Bilangan Puluhan Bilangan Biner, Oktal dan Heksadesimal Bilangan Biner Bilangan Oktal Bilangan Heksadesimal Konversi Bilangan Konversi Desimal Biner Konversi Biner Oktal dan Heksadesimal Konversi Desimal Oktal dan Heksadesimal Bab II Pengenalan Mikroprosesor Organisasi Komputer Sistem Mikroprosesor Sistem Memori Sistem Input Output Sistem bus Interaksi Mikroprosesor dan Memori Proses Kerja Instruksi Bab III Mikroprosesor Intel Model Arsitektur Mikroprosesor 8088/ EU ( Execution Unit ) BIU ( Bus Interface Unit ) Register... 30

6 Bab IV Struktur Memori Peta Memori dan Pengalamatannya Segmentasi Alamat Fisik Bab V Pengenalan Instruksi Proses Kerja (Bagaimana up8088 mengerjakan instruksi) Jenis Instruksi Transfer Data Aritmatika Manipulasi bit Instruksi String Transfer Program Kontrol Prosesor Mode Pengalamatan Instruksi MOV Instruksi PUSH & POP Stack /8088 Instruction Set Summary Data Transfer Arithmetic Logic Control Transfer Encoding Instruksi Mesin Bab VI Komponen Penunjang Antarmuka Decoder Three State Buffer Bab VII Interface 8088 dan Memori Pengenalan Hubungan Mikroprosesor 8088 dan Memori... 65

7 1.1. Hubungan Pin Memori ROM Memori RAM Memori Interfacing memori pada Mikroprosesor Timing Diagram Bab VIII Interface 8088 dan I/O Pengenalan Perangkat IO Interface Input Utama Interface Output Utama Handshaking Jenis-jenis Pemetaan Perangkat IO Berdasarkan port / nomor port yang digunakan Berdasarkan peta alamatnya Memory-mapped I/O PPI Blok Diagram dan Port-Port pada PPI Antarmuka PPI 8255 dan I/O (Switch,LED, 7 seg) Antarmuka Masukan Dasar Antarmuka Keluaran Dasar Pemrograman pada PPI Bab IX Interupsi Jenis-jenis Interupsi Interrupt Vector Interrupt Service Routine Emulator 8086 : Eksekusi program Interrupt Interupsi BIOS dan DOS Sistem DOS Pengaturan Memori Pengaturan I/O dan Perangkat Pemrograman DOS

8 5.5. Program-program DOS DaftarPustaka

9 Bab I Sistem Bilangan Bilangan dalam kamus besar bahasa indonesia diartikan sebagai satuan dalam sistem matematis yang abstrak dan dapat diunitkan, ditambah atau dikalikan. Sistem bilangan adalah sebuah cara yang digunakan untuk mewakili besaran dari sebuah item fisik. Banyak sistem bilangan yang biasa digunakan dalam perhitungan matematis, beberapa diantaranya sudah jarang dipakai bahkan tidak dipakai lagi sama sekali dan ada pula sistem bilangan yang hanya dipakai pada hal-hal tertentu saja. Seperti bilangan limaan (quinary) dahulu dipergunakan oleh orang Eskimo dan orang Indian di Amerika Utara. Sistem bilangan Romawi yang dahulu sangat umum dipakai, kini hanya terbatas pada pemberian nomor urut seperti I untuk pertama, II untuk kedua, dst. Sistem bilangan yang banyak dipergunakan oleh manusia adalah sistem bilangan desimal, yaitu sistem bilangan yang menggunakan sepuluh macam simbol untuk mewakili suatu besaran. Sistem ini banyak digunakan karena manusia mempunyai sepuluh jari untuk dapat membantu perhitungan. Lain halnya dengan komputer, komputer menggunakan komponen-komponen digital yang bersifat saklar (switch). Logika di komputer diwakili oleh dua bentuk keadaan, yaitu tidak ada arus (off) dan ada arus (on). Melihat sifat tersebut, sistem bilangan yang sesuai adalah sistem bilangan biner. Kesederhanaan perubahan nilai bilangan biner ke bilangan oktal atau heksadesimal membuat bilangan oktal dan heksadesimal juga sering digunakan di dalam dunia komputer. 1. Sistem Bilangan Puluhan Sistem bilangan puluhan atau sering disebut sistem bilangan desimal adalah sistem bilangan yang biasa digunakan oleh manusia sehari hari. Sistem bilangan ini tersusun oleh sepuluh buah simbol yang mempunyai nilai berbeda satu sama lain yaitu: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Dasar/basis/akar (base, radix) dari sistem bilangan ini adalah 10. Nilai yang terkandung di dalam setiap simbil disebut nilai mutlak (absolute value). Bentuk nilai ini dapat berupa integer, desimal atau pecahan. Nilai yang terkandung oleh setiap angka di dalam suatu bilangan ditentukan oleh peletakan angka tersebut didalam deretan disamping oleh nilai mutlaknya (positional value system). Angka yang berada paling kanan dari suatu bilangan bulat tanpa

10 bagian pecahan disebut berada pada letak ke 0 dan yang di sebelah kirinya adalah letak ke 1, ke 2 dan seterusnya sampai dengan (n-1). Nilai letak dari kedudukan ke 0 adalah terkecil, yaitu 10 0 = 1, nilai letak kedudukan ke = 10; 10 2 = 100 dan seterusnya sampai dengan letak kedudukan n 1 adalah 10 n 1. Untuk bilangan yang mengandung bagian pecahan, bagian bulat dan pecahannya dipisahkan oleh tanda koma (tanda titik di Inggris, Amerika, dll). Angka di kanan tanda koma puluhan (decimal point) disebut pada kedudukan negatif, yaitu letak kedudukan ke -1, ke -2 dan seterusnya dan nilai letaknya adalah 10 1, 10 2,, 10 m, untuk kedudukan ke ( m) di kanan koma puluhan Nilai yang diberikan oleh suatu angka pada suatu bilangan adalah hasil kali dari pada nilai mutlak dan nilai letaknya. Jadi, nilai yang diberikan oleh angka 3 pada bilangan 1234,567adalah = 30 dan yang diberikan oleh angka 6 adalah = 0.06 Secara umum, suatu bilangan puluhan yang terdiri atas n angka di kiri tanda koma dan m angka di kanan tanda koma dapat dinyatakan kedalam bentuk: N a a... a a a, a a 2... a n 1 n m (1.1) Bentuk umum penentuan harga dari bilangan puluhan dapat dinyatakan dalam bentuk: Contoh: N a n 1 10 n 1 a a 1 n Bilangan 1234 dapat diartikan: n 2 a... a 10 2 Absolute Value a Operasi a 10 0 m 10 0 m a Position Value/Place Value... Hasil 1 x x x x Jumlah 1234 (1.2) Absolute value merupakan nilai untuk masing-masing digit bilangan. Position value adalah merupakan penimbang atau bobot dari masing-masing digit tergantung dari letak posisinya, yaitu nernilai basis dipangkatkan dengan urutan posisinya. Untuk bilangan pecahan desimal dapat dilihat dari contoh berikut:

11 Contoh: Bilangan 1234,567 dapat diartikan: Absolute Value Operasi Position Value/Place Value Hasil 1 x x x x x ,5 6 x ,06 7 x ,007 Jumlah 1234, Bilangan Biner, Oktal dan Heksadesimal Semua sistem digital bekerja dengan menggunakan sistem bilangan biner. Sehingga dengan kata lain sistem bilangan biner merupakan sistem bilangan yang paling penting dalam sistem digital. Selain sistem bilangan biner, sistem yang sering dipakai dalam pengkodean instruksi oleh sistem digital adalah sistem bilangan oktal dan heksadesimal. Harga dalam puluhan (desimal) yang dinyatakan oleh suatu bilangan biner, oktal, heksadesimal atau yang lainnya yang bukan desimal dapat dihitung dengan menggunakan: a a... a a a a... a a R a R... a R a R a R... a n 1 n m n 1 n m n 1 n m (1.3) a n 1 = Angka paling kiri R R n m = Angka Dasar dari sistem bilangan = Cacah angka yang menunjukan bilangan bulat = Cacah angka yang menunjukan bilangan pecahan 2.1. Bilangan Biner Sistem bilangan biner mempunyai hanya dua buah simbol angka, yaitu 0 dan 1. Dasar dari sistem bilangan ini adalah dua. Harga yang ditunjukkan oleh bilangan biner dalam puluhan dapat dihitung dengan menggunakan persamaan 1.2 di atas dengan memasukkan R=2 ke dalamnya Harga bilangan biner 110,10 adalah , 5

12 Untuk membedakan penggunaan suatu bilangan kita harus mencantumkan dasar bilangan yang digunakan.sebagai contoh, untuk penulisan bilangan biner dapat dilakukan dengan menambahakn angka 2 di belakang deretan bilangan. ( 110) 2 atau Operasi Aritmatika pada Bilangan Biner a. Penjumlahan Dasar penjumlahan bilangan biner adalah: Tabel 1 tabel penjumlahan bilangan biner Penjumlahan Biner Hasil Keterangan Terdapat carry of 1 Pada penjumlahan terdapat carry of sebesar 1. Jika di dalam bilangan desimal, 1+1=2, karena di dalam bilangan biner, nilai terbesarnya adalah 1, maka harus dikurangi dengan 2 (basis). Contoh: b. Pengurangan 111 Carry of Pengurangan bilangan biner dilakukan dengan cara yang sama dengan pengurangan bilangan desimal. Dasar pengurangan untuk masing-masing digit bilangan biner adalah: Tabel 2 tabel pengurangan bilangan biner Pengurangan Biner Hasil Keterangan Dengan borrow of 1

13 Contoh: c. Perkalian 11 Borrow of Perkalian bilangan biner dilakukan dengan cara yang sama dengan cara perkalian pada bilangandesimal. Dasar perkalian untuk bilangan biner adalah: Contoh: d. Pembagian x Tabel 3 tabel perkalian bilangan biner Perkalian Biner Hasil 0 x x x x 1 1 Pembagian bilangan biner dilakukan dengan cara yang sama dengan bilangan desimal. Pembagian biner 0 tidak mampunyai arti. Dasar pembagian untuk bilangan biner adalah Contoh: Tabel 4 tabel pembagian bilangan biner Pembagian Biner Hasil

14 2.2. Bilangan Oktal Dasar dari bilangan oktal adalah delapan, oleh karena itu bilangan oktal mempunyai delapan simbol angka yaitu: 0, 1, 2, 3, 4, 5, 6, 7. Harga desimal yang dinyatakan oleh sebuah bilangan oktal diperoleh dengan memasukan R=8 kedalam persamaan 1.3. ( 123,4) (83,125) Operasi Aritmatika pada Bilangan Oktal a. Penjumlahan Langkah-langkah penjumlahan octal : - Tambahkan masing-masing kolom seperti penjumlahan secara desimal. - Yang perlu diingat adalah nilai maksimal bilangan oktal adalah 7. - Jika hasil penjumlahan lebih dari 7 maka akan menghasilkan carry of untuk Contoh: b. Pengurangan penjumlahan kolom selanjutnya. 11 Carry of Pengurangan bilanganoktal dapat dilaukan secara sama dengan pengurangan bilangan desimal. Contoh: Borrow of c. Perkalian Langkah langkah perkalian bilangan oktal: - kalikan masing-masing kolom secara desimal - rubah dari hasil desimal ke octal

15 - tuliskan hasil dari digit paling kanan dari hasil octal - kalau hasil perkalian tiap kolol terdiri dari 2 digit, maka digit paling kiri merupakan carry of untuk ditambahkan pada hasil perkalian kolom selanjutnya. Contoh: 1 10 x6 10 =6 10 = x1 10 =1 10 = x x6 10 =24 10 = x1 10 x3 10 =7 10 =7 8 d. Pembagian Pembagian bilangan oktal dapat dilakukan dengan prinsip yang sama dengan pembagian bilangan desimal Contoh: Bilangan Heksadesimal Sistem bilangan desimal menggunakan 16 macam simbol bilangan berbasis 16 digit angka yaitu: 0,1,2,3,4,5,6,7,8,9, A, B, C, D, E, F dimana A=10, B=11, C=12, D=13, E=14 dan F=15. Position value system bilangan desimal adalah perpangkatan dari nilai 16. Contoh: C 7 ( 16)... (10) C Jadi hasilnya adalah 199(10) Operasi Aritmatika Pada Bilangan Heksadesimal a. Penjumlahan Penjumlahan bilangan heksadesimal dapat dilakukan secara sama dengan penjumlahan bilangan octal, dengan langkah-langkah sebagai berikut :

16 Langkah-langkah penjumlahan heksadesimal : tambahkan masing-masing kolom secara desimal rubah dari hasil desimal ke heksadesimal tuliskan hasil dari digit paling kanan dari hasil heksadesimal kalau hasil penjumlahan tiap-tiap kolom terdiri dari dua digit, maka digit paling kiri merupakan carry of untuk penjumlahan kolom selanjutnya. Contoh: BAD FDE D = =E 16 A = =D 16 B = =F 16 b. Pengurangan Pengurangan bilangan heksadesimal dapat dilakukan secara sama dengan pengurangan bilangan desimal. Contoh: 12E CBA (pinjam) = = A (dipinjam) = =B (pinjam) = = C (dipinjam) 0 10 = 0 16 c. Perkalian Langkah langkah : kalikan masing-masing kolom secara desimal rubah dari hasil desimal ke octal tuliskan hasil dari digit paling kanan dari hasil octal kalau hasil perkalian tiap kolol terdiri dari 2 digit, maka digit paling kiri merupakan carry of untuk ditambahkan pada hasil perkalian kolom selanjutnya. Contoh:

17 AC 1B x 764 C 16 x1 16 =12 10 x1 10 =12 10 =C 16 AC + A 16 x1 16 =10 10 x1 10 =10 10 =A C 16 xb 16 =12 10 x11 10 =84 16 A 16 xb =10 10 x =76 16 d. Pembagian Pembagian bilangan heksadesimal dapat dilakukan dengan prinsip yang sama dengan pembagian bilangan desimal Contoh: AC 1B E - 1B 16 xa 16 = x10 10 = = 10E B 16 x C 16 = x = = Konversi Bilangan Konversi bilangan desimal ke sistem biner diperlukan dalam menerjemahkan keinginan manusia kedalam kode-kode yang dikenal oleh sistem digital, terutama komputer digital. Konversi dari biner ke desimal diperlukan untuk menterjemahkan kode hasil pengolahan sistem digital ke informasi yang dikenal oleh manusia. Pengubahan (konversi) dari biner ke oktal dan heksadesimal dan sebaliknya merupakan pengantara konversi dari/ke biner ke/dari desimal. Konversi ini banyak dilakukan karena disamping cacah angka biner yang disebut juga "bit", singkatan dari "binary digit", jauh lebih besar dibandingkan dengan angka-angka pada sistem oktal dan heksadesimal, juga karena konversi itu sangat mudah. Konversi sebaliknya akan diterangkan dalam sub-sub bab berikut ini Konversi Desimal Biner Kalau kita perhatikan konversi dari biner ke desimal dengan memakai pers.(1.3), maka dapat dilihat bahwa untuk bagian bulat (di kiri tanda koma) kita peroleh dengan melakukan perkalian dengan 2 setiap kita bergerak ke kiri. Untuk bagian pecahan, kita melakukan pembagian dengan

18 2 setiap kita bergerak ke kanan. Untuk melakukan konversi dari desimal ke biner kita melakukan sebaliknya, yaitu untuk bagian bulat bilangan desimal kita bagi dengan 2 secara berturut-turut dan sisa pembagian pertama sampai yang terakhir merupakan angka-angka biner paling kanan ke paling kiri. Untuk bagian pecahan, bilangan desimal dikalikan 2 secara berturut-turut dan angka di kiri koma desimal hasil setiap perkalian merupakan angka biner yang dicari, berturut-turut dari kiri ke kanan. Contoh 1: Tentukanlah bilangan biner yang berharga sama dengan bilangan desimal 118. Solusi: Pembagian secara berturut-turut akan menghasilkan: 118 : 2 = 59 sisa 0 7 : 2 = 3 sisa 1 59 : 2 = 29 sisa 1 29 : 2 = 14 sisa 1 14 : 2 = 7 sisa 0 3 : 2 = 1 sisa 1 1 : 2 = 0 sisa 1 0 : 2 = 0 sisa 0 Jadi 118(10)= (2) Perhatikan bahwa walaupun pembagian diteruskan, hasil berikutnya akantetap 0 dan sisanya juga tetap 0. Ini benar karena penambahan angka 0 di kiri bilangantidakmengubahharganya. Contoh 2. Tentukanlah bilangan biner yang berharga sama dengan bilangan desimal 0,8125. Solusi Pengalian secara berturut-turut akan menghasilkan : x 2 = 1,625 0,500 x 2 = 1,000 0,625 x 2 = 1,250 0,000 x 2 = 0,000 0,250 x 2 = 0,500 Jadi, 0,8125(10) = 0,11010(2) Perhatikan bahwa angka-angka biner yang dicari adalah angka yang di kiri tanda koma, dan yang paling kiri dalam bilangan biner adalah angka di kiri koma hasil perkalian pertama. Juga

19 perhatikan bahwa walaupun pengalian diteruskan hasil perkalian akan tetap 0 dan ini benar karena penambahan angka 0 ke kanan tidak akan mengubah harganya. Contoh 3. Ubahlah bilangan desimal 457,65 ke bilangan biner. Solusi Untuk melakukan konversi ini, dilakukan pembagian untuk bagian bulatnya dan pengalian untuk bagian pecahannya seperti yang dilakukan pada kedua contoh sebelumnya, dengan hasil sebagai berikut ini: 457 : 2 sisa 1 0,65 x 2 = 1,3 228 : 2 sisa 0 0,30 x 2 = 0,6 114 : 2 sisa 0 0,60 x 2 = 1,2 57 : 2 sisa 1 0,20 x 2 = 0,4 28 : 2 sisa 0 0,40 x 2 = 0,8 14 : 2 sisa 0 0,80 x 2 = 1,6 7 : 2 sisa 1 0,60 x 2 = 1,2 3 : 2 sisa 1 0,20 x 2 = 0,4 1 : 2 sisa 1 0,40 x 2 = 0,8 0,80 x 2 = 1,6 Jadi 457,65(10)= , (2) Dari contoh terakhir ini dapat dilihat bahwa untuk bagian pecahan, pengalian dengan 2 akan berulang-ulang menghasilkan deretan 1,6; 1,2; 0,4; 0,8 yang berarti bahwa deretan angka biner akan berulang terus. Ini berarti bahwa ada bilangan pecahan puluhan yang tak dapat disajikan dalam biner dengan ketelitian 100 %. Kesalahan atau ralat konversi itu semakin kecil bila cacah angka biner (bit) yang dipergunakan lebih besar. Bagaimanapun juga, cacah bit dalam setiap sistem digital sudah tertentu 3.2. Konversi Biner Oktal dan Heksadesimal Kemudahan konversi biner-oktal-heksadesimal secara timbal balik terletak pada kenyataan bahwa 3 bit tepat dapat menyatakan angka terbesar dalam oktal, yaitu 7, dan 4 bit tepat dapat menyatakan angka terbesar dalam heksadesimal, yaitu F=15(10). Ini berarti bahwa untuk

20 mengubah bilangan biner ke oktal, bilangan biner dapat dikelompokkan atas 3 bit setiap kelompok dan untuk mengubah biner ke heksadesimal, bilangan biner dikelompokkan atas 4 bit setiap kelompok. Pengelompokan harus dimulai dari kanan bergerak ke kiri. Sebagai contoh, untuk memperoleh setara dalam oktal dan heksadesimal, bilangan biner dapat dikelompokkan sebagai berikut: Desimal Oktal Desimal 2 C F Heksadesimal Konversi sebaliknya, dari oktal dan heksadesimal ke biner juga dapat dilakukan dengan mudah dengan menggantikan setiap angka dalam oktal dan heksadesimal dengan setaranya dalam biner. Contoh (8)= (2) 72E(16)= (2) Dari contoh ini dapat dilihat bahwa konversi dari oktal ke heksadesimal dan sebaliknya akan lebih mudah dilakukan dengan mengubahnya terlebih dahulu ke biner. Contoh (8) = (2) (2) = 6AF(16) Perhatikan bahwa bilangan biner dalam konversi oktal biner dan konversi biner-heksadesimal hanyalah berbeda dalam pengelompokannya saja Konversi Desimal Oktal dan Heksadesimal. Konversi desimal ke oktal dan desimal ke heksadesimal dapat dilakukan dengan melakukan pembagian berulang-ulang untuk bagian bulat dan perkalianberulang-ulang untuk bagian pecahan seperti yang dilakukan pada konversi desimal-binerdi bagian depan. Sebenarnya cara ini berlaku untuk semua dasarsistem bilangan. Contoh

21 Konversi untuk 205,05(10) Oktal Heksadesimal 205 : 8 = 25 sisa : 16 = 12 sisa 13 = D 25 : 8 = 3 sisa 1 12 : 16 = 12 sisa 12 = C 3 : 8 = 0 sisa 3 0,05 x 8 = 0,4 0,05 x 16 = 0,8 0,40 x 8 = 3,2 0,80 x 16 = 12,8 = C 0,20 x 8 = 1,6 0,80 x 16 = 12,8 = C 0,60 x 8 = 4,8 0,80 x 8 = 6,4 0,40 x 8 = 3,2 0,20 x 8 = 1,6 Jadi 205,05(10) = 315, (8) = CD,0CCCC (10)

22 Bab II Pengenalan Mikroprosesor Pada bab ini akan dikenalkan tentang dasar mikroprosesor yang meliputi penjelasan mengenai organisasi komputer, arsitektur dasar mikroprosesor beserta fungsinya, interaksi mikroprosesor dengan memori, dan proses kerja eksekusi instruksi oleh mikroprosesor. Untuk menjelaskan beberapa hal tersebut akan dilengkapi dengan gambar blok-blok diagram mikroprosesor. 1. Organisasi Komputer Sistem komputer telah banyak mengalami perubahan. Semula mesin dengan area yang luas telah diubah menjadi sistem komputer desktop kecil karena mikroprosesor. Gambar dibawah ini menunjukkan struktur sistem komputer berbasis mikroprosesor. Sistem dibawah ini juga berlaku untuk sistem komputer dari generasi awal sampai ke generasi terbaru. Buses Memory system microprocessor I/O system Dynamic RAM (DRAM) Static RAM (SRAM) Cache Read-Only (ROM) Flash memory EEPROM Pentium Pentium Pro Printer Serial communications Floppy disk drive Hard disk drive Mouse CD-ROM drive Plotter Keyboard Monitor Tape backup Scanner Gambar 1 Struktur Sistem Komputer Pribadi berbasis Mikroprosesor Blok diagram diatas terdiri dari 3 komponen yaitu mikroprosesor, memori dan sistem perangkat input output, yang saling terkoneksi dengan jalur-jalur bus ( sebuah bus terdiri dari

23 beberapa koneksi yang membawa satu jenis informasi, misalnya address bus yang berisi 20 atau lebih koneksi untuk membawa alamat ke memori ) Sistem Mikroprosesor Sistem mikroprosesor adalah sistem mikroelektronika yang menggunakan mikroprosesor sebagai unit pemroses sentralnya. Sedangkan mikroprosesor adalah suatu komponen LSI (Large Scale Integration) yang melaksanakan hampir semua fungsi sebuah prosesor tradisional (fungsi pemrosesan) pada sebuah serpih, layaknya prosesor atau yang sering disebut dengan istilah CPU (Central Processing Unit) pada komputer-komputer generasi sekarang. Fungsi dasar CPU atau prosesor, yaitu : 1. Dapat mengenali lokasi memori tempat instruksi atau data berada 2. Melakukan proses pengambilan instruksi atau data 3. Dapat menyimpan sementara instruksi atau data sampai instruksi dan data tersbut dieksekusi 4. Mengenali, mengerti, dan dapat menterjemahkan setiap instruksi 5. Dapat mengeksekusi instruksi 6. Dapat mengkoordinasikan semua proses sehingga dilakukan dalam urutan langkah yang benar 7. Mengulangi semua urutan proses selama masih ada instruksi yang harus dieksekusi. Untuk melakukan beberapa buah fungsi dasar tersebut, sebuah prosesor dibangung dengan komponen-komponen dasar, yaitu ALU (Arithmetic Logic Unit), sistem bus internal, Control Unit (CU), dan beberapa buah register internal Sistem Memori Ada 2 jenis memori, yaitu : 1. Memori internal prosesor, adalah jenis memori yang terdapat di dalam prosesor yang merupakan sekumpulan register berkecepatan tinggi berfungsi sebagai tempat penyimpanan sementara dari instruksi dan data selama proses didalam prosesor 2. Memori utama atau memori primer, merupakan jenis memori dengan kecepatan relatif tinggi untuk menyimpan instruksi dan data selama operaso komputer. Pada memori utama ini instruksi dan data akan disimpan dalam suatu lokasi dengan

24 alamat tertentu yang dapat dikenali dan dapat diakses secara langsung dan cepat oleh set instruksi dari prosesor Sistem Input Output Merupakan suatu unit perantara yang memungkinkan suatu sistem mikroprosesor dapat berkomunikasi atau saling mengirim informasi dengan dunia luar. Unit input berfungsi untuk menyediakan datan atau informasi yang akan diolah bagi ALU atau memori. Perangkat input dapat berupa sensor, seperti sensor suhu, sensor tegangan, dan lain-lain. Sedangkan unit output bertugas untuk menyajikan data hasil pemrosesan atau melaksanakan perintah-perintah. Perangkat keluaran dapat berupa lampu, LED, motor, dan lain-lain Sistem bus Gambar 2 Blok Diagram Sistem Komputer dengan struktur bus data, bus alamat dan bus control [1] Gambar diatas menunjukkan tentang interkoneksi antara bus dengan komponen-komponen dalam sistem komputer. Terdapat 3 jenis bus, yaitu bus data, bus alamat, dan bus control. Dimana ketiganya berfungsi sebagai penghubung antara mikroprosesor dengan memori dan perangkat input output. Bus- bus ini dapat bersifat dua arah ataupun satu arah. Bus alamat, berfungsi untuk membawa alamat-alamat memori atau perangkat I/O menuju ke perangkat-perangkat yang dituju. Alamat-alamat tersebut terdiri dari 16 bit alamat dari 0000H-FFFFH, yang memungkinkan pengiriman sampai 64 KB (2MB).

25 Bus data, berfungsi untuk membawa atau mengirim data dari dan ke berbagai komponen pada sistem. Misalnya, bus data membawa data sepanjang 16 bit dari register akumulator (mikroprosesor) menuju ke sebuah alamat pada memori. Bus control atau pengendali, berfungsi untuk membawa sinyal-sinyal kendali antara mikroprosesor dan semua alat yang dihubungkan kepada bus-bus. Contoh sinyalnya antara lain sinyal WR untuk perintah write atau tulis, sinyal RD untuk perintah read atau baca, dan lain-lain. 2. Interaksi Mikroprosesor dan Memori Secara umum terdapat 2 jenis interaksi antara mikroprosesor dan memori, yaitu operasi membaca (mengambil) informasi dari memori dan operasi menulis (menyimpan) informasi ke memori. alamat alamat µp read memori µp data memori data write (a) (b) Gambar 3. (a) Proses Baca, (b) Proses Tulis antar Mikroprosesor dan memori [3] Proses baca/ mengambil informasi dari memori oleh mikroprosesor : 1. Mikroprosesor mempersiapkan alamat lokasi dari data yang akan dibaca, biasanya melalui register BX yang fungsinya identik untuk menyimpan alamat memori 2. Mikroprosesor mengirimkan sinyal read ke memori yang menandakan bahwa aktivitas yang ingin dilakukan oleh mikroprosesor dari memori adalah membaca atau mengambil data.

26 3. Setelah menerima sinyal read, memori mencari data yang diinginkan oleh mikroprosesor sesuai dengan alamat yang diberikan sebelumnya 4. Setelah data ditemukan, data dikirimkan oleh memori ke mikroprosesor. Proses tulis/ menyimpan data dari mikroprosesor ke memori : 1. Mikroprosesor mempersiapkan alamat lokasi dimana data akan ditulis atau disimpan 2. Mikroprosesor mempersiapkan data yang akan ditulis 3. Mikroprosesor mengirimkan sinyal write ke memori sebagai tanda bahwa aktivitas yang akan dilakukan adalah aktivitas penyimpanan data dari mikroprosesor ke memori 4. Setelah menerima sinyal write, memori membaca data yang ingin disimpan dan meletakkannya pada alamat lokasi yang ditentukan. 3. Proses Kerja Instruksi Di dalam menjalankan suatu instruksi, mikroprosesor melakukan 3 langkah, yaitu : 1. Instruction fetch atau pengambilan instruksi, yaitu proses pengambilan instruksi dari suatu lokasi alamat tertentu pada memori utama 2. Instruction decode atau decoding instruksi, yaitu proses menterjemahkan instruksi untuk mengetahui maksud dari instruksi tersebut. 3. Execution atau eksekusi, yaitu proses eksekusi dari instruksi yang telah

27 Bab III Mikroprosesor Intel 8088 Pada bab ini akan lebih spesifik dijelaskan mengenai model arsitektur mikroprosesor 8088 beserta fungsi komponen-komponen internal pendukungnya, dan lebih rinci lagi dijelaskan tentang register-register yang digunakan. 1. Model Arsitektur Mikroprosesor 8088/8086 Mikroprosesor 8086 dan 8088 merupakan perluasan dari seri mikroprosesor 8080 dari Intel. Pin keluaran untuk 8086 dan 8088 sebanyak 40 pin. Perbedaan pokok antara 8086 dan 8088 terletak pada banyaknya saluran data yang dikeluarkan bus. Chip 8086 memiliki 16 saluran data (16 bit) pada busnya, dan chip 8088 hanya memiliki 8 saluran data (8 bit). GND A14 A13 A12 A11 A10 A9 A8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 clock GND Vcc A15 A16 A17 A18 A19 read write ALE reset Gambar 4. Konfigurasi Pin-Pin Mikroprosesor 8088 [3] Gambar diatas menunjukkan konfigurasi pin-pin pada IC mikroprosesor Pin 9-16 adalah pin alamat dan data, dimana untuk mikroprosesor 8088 memiliki 8 saluran data yaitu

28 AD7 AD0. Sedangkan saluran alamat ditunjukkan oleh pin 2 16 dan 25 39, yaitu pada pin A19 A0, sepanjang 20 saluran alamat. Dan beberapa fungsi yang lain ditunjukkan oleh pin yang berbeda, misalnya untuk fungsi baca memori dengan sinyal read / RD, fungsi tulis ke memori dengan sinyal write / WR, dan fungsi-fungsi pin yang lain. Selanjutnya akan dijelaskan tentang struktur internal mikroprosesor 8088 beserta fungsi dari register-register yang ada. BIU C-BUS ES CS SS DS IP INSTRUCTION STREAM BYTE QUEUE CONTROL SYSTEM EU AH BH CH DH SP BP SI DI AL BL CL DL A- BUS ALU OPERAND FLAGS Gambar 5. Blok diagram arsitektur mikroprosesor 8088 Fungsi dasar mikroprosesor sesuai gambar diatas, terdiri dari 2 fungsi yaitu EU / Execution Unit dan BIU / Bus Interface Unit.

29 1.1. EU ( Execution Unit ) Berfungsi untuk menterjemahkan instruksi, menjalankan instruksi dan mengirimkan informasi ke BIU untuk mengambil data/instruksi. Pada gambar terlihat bahwa EU tersusun oleh beberapa register, yaitu : a. General Purpose Register Merupakan register 16 bit yang terdiri dari register AX, BX, CX, dan DX. Masingmasing register ini bisa berfungsi secara terpisah sepanjang 8 bit yaitu bagian tertinggi AH, BH, CH, DH atau bagian terendah AL, BL, CL, DL. b. Pointer Register Terdiri dari register dengan panjang 16 bit yang secara umum berfungsi untuk mengakses memori operand, yaitu register SP, BP, SI, DI c. Flag Register Operasi-operasi atau instruksi yang dijalankan mikroprosesor dapat menghasilkan status flag tertentu. Berikut ini adalah beberapa jenis flag pada mikroprosesor 8086/8088, CF (Carry Flag), PF (Parity Flag), AF (Auxiliary Flag), ZF (Zero Flag), SF (Sign Flag), OF (Overflow Flag), dan lain-lain. d. ALU (Aritmathic and Logic Unit) pada EU memiliki fungsi sebagai pelaksanan operasi aritmatika dan logika dari data-data yang disimpan dalam register BIU ( Bus Interface Unit ) BIU adalah unit pada mikroprosesor yang mempunyai tugas utama sebagai antarmuka antara mikroprosesor dengan peripheral diluar mikroprosesor. Selain itu tugasnya adalah bertanggung jawab terhadap semua operasi bus eksternal yaitu instruction fetch, operasi baca-tulis memori atau I/O, antrian instruksi dan perhitungan alamat fisik (PA). Register-register yang terdapat pada BIU adalah : Register IP ( Instruction Pointer ) yaitu register utama untuk menunjukkan baris perintah program Register segment yang berfungsi untuk menyimpan alamat segment, yang terdiri dari CS ( Code Segment ), DS ( Data Segment ), SS ( Stack Segment ), dan ES ( Extra Segment ). Sama halnya dengan EU, pada BIU juga terdapat ALU. Disini ALU berfungsi untuk penghitungan alamat fisik atau Physical Address ( PA ).

30 2. Register Dari gambar blok diagram arsitektur Mikroprosesor 8088 terlihat bahwa terdapat beberapa jenis register yang mendukung kerja mikroprosesor sesuai dengan kategori fungsinya masingmasing. Berikut akan dijelaskan lebih rinci untuk setiap register-register tersebut. Tabel 5. Jenis-jenis register Kategori Bit Nama Register General 16 AX, BX, CX, DX 8 AH, AL, BH, BL, CH, CL, DH, DL Segment 16 CS, DS, SS, ES Index 16 SI, DI Pointer 16 SP, BP, IP Flag 16 FR 1. General Purpose Register Register AX atau akumulator berfungsi sebagai akumulator dan berhubungan dengan jenis-jenis operasi khusus seperti operasi aritmatika dan logika. Register BX atau base register, digunakan untuk mereferensikan alamat memori. Register CX atau counter register, digunakan sebagai pencacah implicit dengan instruksi tertentu. Register DX atau register data, digunakan untuk menyimpan alamat port I/O selama operasi input dan output, digunakan juga dalam operasi perkalian untuk menyimpan sebagian dari hasil kali 32 bit atau dalam operasi pembagian untuk menyimpan suatu nilai sisa. 2. Segment register Merupakan register tambahan dengan panjang 16 bit atau terbatas sampai 64K byte. yang berfungsi men-generate alamat memori ketika dikombinasikan dengan register lain. Terdiri dari 4 atau 6 jenis register segment pada beberapa variasi versi mikroprosesor, berikut 4 diantaranya yang digunakan pada arsitektur mikroprosesor 8088 : Register CS ( Code Segment ), digunakan untuk mencatat alamat segment dari kode program atau instruksi. Register DS ( Data Segment ), digunakan untuk menyimpan alamat segment dari letak data.

31 Register SS ( Stack Segment ), digunakan untuk menyimpan alamat segment memori yang dipergunakan menjadi Stack (tumpukan). Register ES ( Extra Segment ), digunakan untuk meyimpang alamat segment tambahan, misalnya alamat display, alamat sistem operasi, dan lain-lain. 3. Register Index Terdiri dari 2 register yaitu register DI ( Destination Index ), dan register SI ( Source Index ). Register index digunakan untuk menyimpan nilai-nilai offset dalam segment data memori pada saat bersangkutan, biasanya digunakan untuk string instructions. 4. Register Pointer Register IP ( Instruction Pointer ), merupakan register pasangan CS yang digunakan untuk menunjukkan baris perintah program. Pada saat program dijalankan, IP akan langsung menunjuk pada awal program, dan seterusnya sampai instruksi selesai dieksekusi. Register SP ( Stack Pointer ), digunakan untuk operasi stack. Secara implisit, register ini digunakan secara khusus oleh instruksi PUSH dan POP yang menyimpan dan mendapatkan kembali data dari stack. Register BP ( Base Pointer ), digunakan untuk penunjuk base dalam stack yang disediakan sebagai daerah penyimpanan data. 5. Flag Register Flag merupakan status yang diakibatkan dari hasil eksekusi instruksi aritmatika dan logika. Pada mikroprosesor 8088 mempunyai status flag 1 bit dan 3 kontrol flag yang dikonfigurasikan dalam register sepanjang 16 bit, seperti dijelaskan pada gambar dibawah ini : * * * * OF DF IF TF SF ZF * AF * PF * CF

32 Keterangan dari status flag sebagai berikut : a. CF ( Carry Flag ), status flag untuk carry atau borrow dari hasil aritmatika b. PF ( Parity Flag ), status untuk hasil instruksi aritmatika dengan angka angka ganjil atau genap c. AF ( Auxiliary Flag ), digunakan untuk instruksi pengaturan decimal d. ZF ( Zero Flag ), status untuk hasil instruksi aritmatika sama dengan nol e. SF ( Sign Flag ), status untuk hasil instruksi aritmatika dengan tanda atau + f. OF ( Overflow Flag ), menunjukkan sebuah operasi secara tidak benar yaitu merubah hasil daripada tanda bit. g. IF ( Interrupt-enable flag ), tanda untuk dapat atau tidak dapat sebuah instruksi melakukan interupsi h. DF ( Direction Flag ), dipergunakan untuk mengontrol arah dari operasi string. i. TF ( Trap Flag ), dimana ditempatkan dalam single step mode untuk keperluan debug. Nilai dari masing-masing bit penanda status tersebut dapat berupa logika 1 atau 0, dimana masing-masing logika memiliki arti sendiri, berikut penjelasan sederhananya melalui tabel. Tabel 6. Nilai flag register Flag Register Nilai bit 0 Nilai bit 1 CF NC ( Not Carry ) CY ( Carry ) PF PO ( Odd Parity ) PE ( Even Parity ) AF AC ( Carry ) NA ( Not Carry ) ZF NZ ( Not Zero ) ZR ( Zero ) SF PL ( Plus ) NG ( Negative ) IF DI ( Disable ) EI ( Enable ) DF UP ( Increment ) DN ( Decrement ) OF NV ( Not Overflow ) OV ( Overflow ) Contoh operasi menghasilkan flag : xor Hasil dari operasi diatas adalah = 00h, sehingga ZF =1

33 FE FE FC Carry bit 3. Operasi dibawah ini menunjukkan contoh 2 buah bilangan bertanda (signed) positif yang dijumlahkan hasilnya berubah tanda negatif overflow (OF = 1) Tanda negatif Register internal pada mikroprosesor 8088 memiliki lebar 16 bit, sehingga setiap register dapat berharga 0000H FFFFH, atau sebanyak 2 16 = kombinasi harga. Gambar dibawah menunjukkan isi register pada kondisi inisialisasi awal atau kondisi saat belum ada instruksi yang dieksekusi. Gambar 6. Gambar inisialisasi awal pada program debug Flag Soal soal Latihan : 1. Jelaskan perbedaan fungsi ALU pada BIU dan ALU pada EU? Mengapa? 2. Isikan bit flag yang tepat saat operasi berikut selesai dieksekusi! a. FFh + 01h (signed) =.. OF =. ZF =.. CF = b. 0567h h(unsigned) = OF= ZF= CF=

34 c. FFh 01h (signed) = OF=.. ZF= CF=

35 Bab IV Struktur Memori Pada bab ini dijelaskan tentang pengalamatan yang digunakan oleh mikroprosesor 8088 melalui segmentasi dan penghitungan alamat fisik yaitu format alamat yang digunakan untuk akses memori. 1. Peta Memori dan Pengalamatannya Memori utama terdiri dari sejumlah sel yang masing-masing dapat meyimpan informasi sebesar 1 byte ( 8 bit ). Masing-masing sel memori diberi suatu alamat ( address ), sehingga letak lokasi memori dapat dihubungi. Pada mikroprosesor 8088 memiliki jalur atau saluran alamat sebanyak 20 ( A0-A19 ), sehingga memori dapat mencapai 1 Mbyte atau byte. Sedangkan kapasitas register alamat adalah 2 byte, maka jumlah sel memori yang dapat disimpan alamatnya adalah 2 16 = sel memori, dengan demikian register alamat mikroprosesor 8088 dapat mengakses ( membaca/menulis ) memori berkapasitas byte = 64Kbyte. Contoh : alamat data yg disimpan pada alamat tsb FFFF = 8A = E = BC = 0D = FE Gambar diatas menunjukkan bentuk peta memori pada mikroprosesor Dimana pada alamat tertentu (dalam bilangan hexa), misalnya adalah alamat 8000 menyimpan data sepanjang 1 byte ( 8 bit ) yaitu data E8h ( b).

36 Alamat data (Hexa) 137F: F: F: F:0130 0E E8 DC FC FA FC 0B D C0 C9 C3 8B 46 F8 FF 5E FA FE 8B B 0D C C7 46 FE C7 46 F E E8 AE FC FA FC-0B D C0 C9 C3 Data diatas menunjukkan contoh hasil dumping dengan menggunakan Debug, untuk melihat isi memori dari setiap blok memori. Terlihat bahwa dalam satu alamat tertentu misalnya alamat 137F:0100 berisi data OE, pada alamat 137F:0101 berisi data E8, dan seterusnya. 2. Segmentasi Mikroprosesor harus dapat mengakses semua sel memori dari alamat terendah sampai alamat tertinggi. Alamat tersebut akan disimpan didalam register alamat. Secara fisik mikroprosesor 8088 memilik 20 jalur alamat untuk menyediakan informasi alamat selebar 20 bit yaitu dari 00000h FFFFFh. Berkaitan dengan hal tersebut, masalah muncul karena register yang akan digunakan untuk meyimpan alamat memori hanya memilik kapasitas 16 bit, sehingga masih ada kekurangan lagi sebesar 4 bit untuk menampung suatu alamat memori. Untuk mengatasi hal ini, Intel menggunakan 2 buah register untuk pengalamatan. Satu register akan digunakan untuk menyimpan alamat segment ( suatu area memori seluas 64 Kbyte ), dan satu register yang akan digunakan untuk menyimpan alamat offset ( menentukan byte mana di dalam segment tersebut yang akan diakses ). Seperti yang dijelaskan pada bab sebelumnya, mikroprosesor 8088 menyediakan 4 segment untuk menjalankan suatu program, yaitu : 1. Segment untuk program (CS) 2. Segment untuk Data (DS) 3. Segment untuk Stack (SS) 4. Extra Segment (ES) Suatu program dapat memakai 4 segment yang berbeda-beda atau hanya menggunakan sebuah segment saja untuk menampung program, data, stack, dan extra. Contoh Debug dibawah ini menunjukkan penggunaan segment yang sama untuk DS, CS, SS dan ES yaitu 137F.

37 Gambar 7. Gambar isi register pada program Debug Gambar dibawah ini memberikan ilustrasi tentang skema pengalamatan mode real pada memori, yang menggunakan alamat segment dan offset. FFFFF Real Mode Memory 1FFFF 1F000 Offset = F Segment Register Gambar 8. Gambar Skema Real Mode Memory Addressing Register segment pada gambar 4.2 berisi alamat segment 1000h, tetapi alamat segment berawal dari lokasi 10000h. Pada mode real pengalamatan memori, menyesuaikan dengan skema pengalamatan memori 20 bit, maka alamat segment tersebut ditambahkan dengan 0h pada digit paling kanan (LSB). Karena mode real dari segment pada memori adalah seluas 64 Kbyte, jika alamat awal diketahui, maka alamat akhirnya diperoleh dengan menambah FFFFh sebagai

38 alamat offset. Sehingga, terlihat dari contoh skema diatas alamat awal segment 10000h dan alamat akhirnya 1FFFFh. Contoh lainnya diperlihatkan pada tabel dibawah ini. Tabel 7. Tabel contoh alamat segment Register Segment Alamat Awal Segment Alamat Akhir Segment 2000h 20000h 2FFFFh 2001h 20010h 3000Fh 2100h 21000h 30FFFh AB00h AB000h BAFFFh 1234h 12340h 2233Fh Sesuai penjelasan diatas, Mikroprosesor 8088 memiliki format mode pengalamatan dimana antara segment dan offset ditulis dengan dipisahkan tanda titik dua ( : ) seperti berikut ini : Segment : Offset Dan masing-masing register segment memilik pasangan register offset-nya masing-masing, dijelaskan melalui tabel dibawah ini. Tabel 8. Tabel kombinasi Segment dan Offset pada Mikroprosesor 8088 Segment Offset Keterangan CS IP Alamat instruksi SS SP atau BP Alamat stack DS BX, DI, SI, data 8 atau 16 bit Alamat data ES DI untuk instruksi string Alamat string 3. Alamat Fisik Sesuai penjelasan tentang mode real pengalamatan yang digunakan Mikroprosesor 8088, selanjutnya akan dijelaskan cara penghitungan alamat tersebut yang disebut dengan Alamat Fisik (Physical Address/ PA), dengan format 20 bit. Sedangkan cara pengalamatan memori yang biasa dilakukan oleh komputer sering disebut dengan pengalamatan relatif ( relative address ). Contoh : alamat yang ditulis dengan format 137F : 0100 yang berarti alamat segment adalah 137Fh dan alamat offset adalah 0100h, maka cara penghitungan alamat fisiknya adalah sebagai berikut : Segment : 137F0 Offset : F0 +

39 Sehingga alamat 138F0h yang digunakan untuk mengakses memori. Atau dapat juga diartikan, untuk menjumlahkan alamat segment dan offset, dengan cara sebelumnya menggeser satu digit kekiri alamat segment. Contoh lainnya adalah : Untuk alamat program CS : IP IP = 95F3 CS = Adder Physical address A0-A19 = 2E5F3 Untuk alamat Data DS : EA (Effective Address) EA = 2845 CS = FB00 0 Adder Physical address A0-A19 = 37F50 Soal soal Latihan : 1. Jelaskan apa yang dimaksud dengan segmentasi pada mikroporsesor 8088! dan mengapa diperlukan segmentasi? 2. Jika diketahui beberapa isi register : DS = 0FF0, CS = 13F0, SS= 0110, IP = 01B0, SP = 1232, BX = A0B0. Tentukan alamat fisik sesuai format alamat segment:offset dibawah ini: a. DS : [BX+01h] b. CS : IP c. SS : SP d. DS : [2400]

40 Bab V Pengenalan Instruksi Instruksi merupakan suatu arahan dalama proses mikroprosesor, sehingga prosesor dapat berjalan sesuai instruksi yang dimasukkan. CPU (Central Processing Unit) adalah otak atau sumber dari komputer yang mengatur dan memproses seluruh kerja komputer. Fungsi utama CPU adalah menjalankan program-program yang disimpan di memori utama. Hal ini dilakukan dengan cara mengambil instruksi-instruksi dari memori utama dan mengeksekusinya satu persatu sesuai dengan alur perintah. Saat data dan/atau instruksi dimasukkan ke processing-devices, pertama sekali diletakkan di MAA (melalui Input-storage); apabila berbentuk instruksi ditampung oleh Control Unit di Program-storage, namun apabila berbentuk data ditampung di Working-storage). Jika register siap untuk menerima pengerjaan eksekusi, maka Control Unit akan mengambil instruksi dari Program-storage untuk ditampungkan ke Instruction Register, sedangkan alamat memori yang berisikan instruksi tersebut ditampung di Program Counter. Sedangkan data diambil oleh Control Unit dari Working-storage untuk ditampung di General-purpose register (dalam hal ini di Operand-register). Jika berdasar instruksi pengerjaan yang dilakukan adalah arithmatika dan logika, maka ALU akan mengambil alih operasi untuk mengerjakan berdasar instruksi yang ditetapkan. Hasilnya ditampung di Akumulator. Apabila hasil pengolahan telah selesai, maka Control Unit akan mengambil hasil pengolahan di Accumulator untuk ditampung kembali ke Working-storage. Jika pengerjaan keseluruhan telah selesai, maka Control Unit akan menjemput hasil pengolahan dari Working-storage untuk ditampung ke Output-storage. Lalu selanjutnya dari Output-storage, hasil pengolahan akan ditampilkan ke output-devices. CPU dalam mengeksekusi suatu instruksi dilakukan dalam dua tahapan yaitu membaca instruksi (fetch) dan melaksanakan instruksi tersebut (execute). Proses membaca dan melaksanakan ini dilakukan berulang-ulang sampai semua instruksi yang terdapat di memori utama dijalankan atau komputer dimatikan. Proses ini dikenal juga sebagai siklus fetch-eksekusi. Siklus Intruksi : 1. Instruction Addess Calculation (IAC), yaitu mengkalkulasi atau menentukan alamat instruksi berikutnya yang akan dieksekusi. Biasanya melibatkan penambahan bilangan

41 tetap ke alamat instruksi sebelumnya. Misalnya, bila panjang setiap instruksi 16 bit padahal memori memiliki panjang 8 bit, maka tambahkan 2 ke alamat sebelumnya. 2. Instruction Fetch (IF), yaitu membaca atau pengambil instruksi dari lokasi memorinya ke CPU. 3. Instruction Operation Decoding (IOD), yaitu menganalisa instruksi untuk menentukan jenis operasi yang akan dibentuk dan operand yang akan digunakan. 4. Operand Address Calculation (OAC), yaitu menentukan alamat operand, hal ini dilakukan apabila melibatkan referensi operand pada memori. 5. Operand Fetch (OF), adalah mengambil operand dari memori atau dari modul I/O. 6. Data Operation (DO), yaitu membentuk operasi yang diperintahkan dalam instruksi. 7. Operand store (OS), yaitu menyimpan hasil eksekusi ke dalam memori Aksi Aksi CPU 8. CPU Memori, perpindahan data dari CPU ke memori dan sebaliknya 9. CPU I/0, perpindahan data dari CPU ke modul I/0 dan sebaliknya 10. Pengolahan Data, CPU membentuk sejumlah operasi aritmatika dan logika terhadap data 11. Kontrol, merupakan instruksi untuk pengontrolan fungsi atau kerja. Misalnya instruksi pengubahan urusan eksekusi 1. Proses Kerja (Bagaimana up8088 mengerjakan instruksi) Didalam menjalankan suatu instruksi, up 8088 melakukan 3 tahap pengerjaan sbb : 1. Penjemputan Instruksi (IF = Instruction Fetch) IR [CS+IP]. Proses kerja dimulai dengan penjemputan instruksi baru dari memori ke IR. CU menerjemahkan isi register CS dan IP untuk menentukan letak dari instruksi baru tersebut di memori. Hasil terjemahan isi CS dan IP ini dikirim CU ke memori melalui bus alamat, CU mengirim sinyal MemREAD untuk memberitahukan memori bahwa CU ingin membaca data Memori setelah mendapat sinyal MemREAD, akan melihat isi dari bus alamat. Kemudian isi dari cell memori yang sesuai dengan alamat tersebut diletakkan di bus data (selebar 1 byte)

42 Beberapa saat setelah mengirim sinyal MemREAD, CU membaca isi dari bus data dan meletakkannya di IR. 2. Dekoding Instruksi (ID = Instruction Decode). Isi baru dari IR tersebut kemudian diterjemahkan oleh CU untuk mengetahui apa saja yang diinginkan oleh instruksi baru tersebut. Untuk tugas penterjemahan ini, CU menggunakan bantuan tabel instruksi yang ada di Instruction Decoder untuk dapat memahami maksud dari instruksi tersebut. 3. Eksekusi Instruksi (EX = Execution) Tergantung dari hasil penterjemahan instruksi diatas, CU akan melaksanakan satu dari tiga fungsi, yaitu : Operasi Aritmetika atau Logika Data transfer Control Arsitektur x86 (contoh: up8088) menggunakan Variable Length Instruction (VLI) dimana instruksi yang berbeda memiliki panjang instruksi yang berbeda pula (bervariasi dari 1 byte sampai 4 byte). Karena pada saat IF yg dijemput hanya 1 byte, maka kemungkinan besar setelah proses ID, CU harus menjemput beberapa byte lagi dari memori agar instruksinya menjadi lengkap. Byte pertama dari instruksi yg dijemput disebut dgn op-code (operation code) karena dari penterjemahan op-code tersebut, didapatkan panjang isntruksi sebenarnya. Contoh : untuk instruksi B (MOV AX,1234) CU pertama akan mengambil byte B8 untuk mengetahui bahwa instruksi tsb adalah MOV AX,xx yy sehingga CU harus mengambil 2 byte setelahnya untuk dapat mengeksekusi instruksi tsb. Kelebihan dari VLI : hemat space dimana jumlah byte yang dibutuhkan untuk merepresentasikan suatu instruksi merupakan jumlah byte minimumnya. Sementara kekurangannya : lebih lambat karena ada suatu tenggang waktu tertentu dimana up harus menjemput instruksi selengkapnya dari memori setelah dekoding (kekurangan ini diperbaiki melalui Prefetching)

43 Instruksi 1 byte (contoh: PUSH & POP) ADD, JMP) Instruksi >1 byte (contoh: MOV, DE DE IF EX IF EX proses: IF DE EX proses: IF DE IF DE EX 2. Jenis Instruksi Set instruksi 8086/8088 mencakup ekuivalen dengan instruksi yang digunakan dalam 8085 atau hampir semua mikroprosesor 8-bit ditambah dengan beberapa operasi baru. Kategor instruksi yang dapat digunakan mencakup: transfer data, aritmatika, manipulasi bit, string, transfer program dan kontrol prosesor 2.1. Transfer Data Set intstruksi 8086/808 mencakup 14 instruksi transfer data yang menggerakan byte atau kata data antara memori dan register serta akumulator dan port I/O. Instruks-instruksi tersebut dapat dilihat pada tabel berikut: Opcode MOV PUSH PUSHF LAHF SHAF POP POPF IN OUT XCHG XLAT LEA LDS LES Tabel 9. Operasi Transfer Data Fungsi moves byte or word pushes word onto stack pushes flags onto stack moves flags into AH loads flags from AH pops word from stack pops flags from stack inputs data to accumulator from I/O device outputs data from accumulator to I/O device exchanges bytes or words translates table lookup instruction load effective address loads DS and the operand with a 32-bit address loads ES and the operand with a 32-bit address

44 2.2. Aritmatika 8086/8088 mampu melakkan penambahan, pengurangan, perkalian dan pembagian data serta bytes. Opcode ADD ADC AAA DAA INC SUB SBB NEG CMP AAS DAS DEC MUL IMUL AAM DIV IDIV CBW CWD AAD Tabel 10. Instruksi Aritmatika Fungsi adds bytes or words adds bytes or words plus carry flag adjust ASCII after addition adjust BCD after addition adds 1 to bytes or word subtracts bytes or word subtracts bytes or word minus carry flag change sign of byte or word (two's complement) compares bytes or words adjust ASCII after subtraction adjust BCD after subtraction subtracts 1 from byte or word multiples unsigned byte or word multiples signed byte or word adjust ASCII after multiplication divides unsigned byte or word divides signed byte or word converts byte to word converts word to double word addust ASCII before division 2.3. Manipulasi bit Terdapat 12 instruksi yang memberi kemampuan untuk memanipulasi bit biner pada mikroprosesor 8086/8088. Instruksi ini mencakup operasi logika, shift dan rotasi. Tabel 11. Instruksi Manipulasi Bit Opcode Fungsi AND ANDs bytes or words OR ORs bytes or words XOR XORs bytes or words NOT inverts bytes or words TEST TESTs bytes or words (AND) SHL/SAL shfit logical/aritmatic left SHR shift logical right

45 SAR ROL RCL ROR RCR shift arithmetic right rotates bytes or words left rotates bytes or word rleft through carry rotates bytes or words right rotates bytes or word right through carry 2.4. Instruksi String Instruksi string digunakan untuk memanipulasi string data dalam memor. Setiap string tersusun baik dari bytes maupun kata dan hingga mencapai panjang 64KB. Instruksi string menggunakan register SI dan DI untuk menangani data. Register CX digunakan untuk menghitung jumlah bytes atau kata yang beroperasi. Instruksi string hanya muncul sekali, jika diawali dengan kata REP, REPE/REPZ atau REPNE/REPNZ maka instruksi akan diulangi hingga jumlah waktu yang tercatat di register CX. Tabel 12. Instruksi String Opcode Fungsi MOVS moves bytes or words CMPS compares bytes or words SCAS scans for byte or word LODS loads AL or AX with byte or word STOS stores AL or AX in byte or word 2.5. Transfer Program Instruksi transfer program mencakup jump, call, return serta beberapa instruksi tambahan yang membentuk loop. Opcode CALL RET JMP INT3 INTO IRET JA/JNE JAE/JNB JB/JNAE JBE/JNA JC Tabel 13. Instruksi transfer program Function Calls subroutine Returns from subroutine Jumps to another part of program Type 3 interrupt Interrupts on overflow Interrupt return Jumps above/jumps not below or equal to Jumps above or equal to/jumps not below Jumps below/jumps not above or equal to Jumps below or equal to/jumps not above Jumps carry set

46 JE/JZ JG/JNLE JGE/JNL JL/JNGE JLE/JNG JNC JNE/JNZ JNO JNP/JPO JNS JO JP/JPE JS LOOP LOOPE/LOOPZ LOOPNE/LOOPNZ JCXZ Jumps equal/jumps 0 Jumps greater/jumps not less than or equal to Jumps greater than or equal to/jumps not less than Jumps less than/jumps not greater than or equal to Jumps less than or equal to/jumps not greater than Jumps no carry Jumps not equal to/jumps not 0 Jumps no overflow Jumps no parity/jumps parity odd Jumps no sign (positive) Jumps on overflow Jumps panty/jumps parity even Jumps sign (negative) Loops CX times Loops while equal to/loops while 0 Loops while not equal to/loop while not 0 Jumps if CX = Kontrol Prosesor Instruksi kontrol prosesor memungkinkan dan tidak memungkinkan terjadinya interupsi, memodifikasi bit flag dan sinkronisasi kejadian eksternal. Tabel 11. Instruksi Kontrol Prosesor Opcode Fungsi STC sets carry CLC clears carry CMC complements carry STD selects auto decrement mode CLD selects auto increment mode STI enables interrupts CLI disables interrupts HLT halts until a reset or an interrupt WAIT wait for TEST pin =0 ESC provides escape to coprocessors LOCK locks the bus during the next instruction NOP performs no operation 3. Mode Pengalamatan Ketika 8088 mengerjakan instruksi, maka harus menampilkan fungsi yang spesifik pada data. Ini biasa disebut operands atau perintah. Dan bisa menjadi bagian dari instruksi. Untuk

47 mengakses tipe-tipe perbedaan dari perintah 8088 membaginya berdasarkan variasi mode dari pengalamatan, yaitu 1. Register direct : mov ax,bx 2. Register Indirect : mov ax,[bx] 3. Direct / absolut : mov ax,[001d] 4. Immediate : mov ax,001d 5. Displacement : mov ax,[bx+1] 4. Instruksi MOV 1. Register Data (contoh: MOV AX,1234 mengisi AX dgn data 1234) 2. Register Register (contoh: MOV AX,BX memindahkan isi BX ke AX) 3. Register Memory (contoh: MOV AX,[BX] memindahkan isi memori ke AX, alamat dari datanya ada di BX) 4. Memory Register (contoh: MOV [BX],AX memindahkan isi AX ke memori, datanya akan ditulis di memori pada alamat yg ada di BX)) Contoh instruksi MOV untuk transfer antar register dan pengisian langsung -a 0F6C:0100 mov bx,abcd mengisi reg. AX dgn data ABCDH 0F6C:0103 mov ah,56 mengisi reg. AH dgn data 56H 0F6C:0105 mov bl,ah mengcopy isi reg. AH ke reg. BL 0F6C:0107 mov ax,bx mengcopy isi reg. BX ke reg. AX 0F6C:0109 -r AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=0100 NV UP EI PL NZ NA PO NC 0F6C:0100 BBCDAB MOV BX,ABCD -t

48 AX=0000 BX=ABCD CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=0103 NV UP EI PL NZ NA PO NC 0F6C:0103 B456 MOV AH,56 -t AX=5600 BX=ABCD CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=0105 NV UP EI PL NZ NA PO NC 0F6C: E3 MOV BL,AH -t AX=5600 BX=AB56 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=0107 NV UP EI PL NZ NA PO NC 0F6C: D8 MOV AX,BX -t AX=AB56 BX=AB56 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=0109 NV UP EI PL NZ NA PO NC Instruksi berikut akan menimbulkan Error : MOV CH,5678 : tidak bisa karena CH = 1 byte dan datanya 2 byte MOV DL,AX : tidak bisa karena AX = 2 byte dan DL = 1 byte MOV DX,AL : tidak bisa karena AL = 1 byte dan DX = 2 byte Contoh instruksi MOV untuk : 1. transfer Register Memory (membaca data dari memori) 2. transfer Memory Register (menulis data ke memori) -a 0F6C:0100 mov bx,0002 mengisi reg. BX dgn data 0002H 0F6C:0103 mov ah,[bx] membaca memori pada alamat BX sebanyak 1 byte (AH) 0F6C:0105 mov ax,[bx] membaca memori pada alamat BX sebanyak 2 byte (AX) 0F6C:0107 mov ax,[bx+1] membaca memori pada alamat BX+1 sebanyak 2 byte (AX) 0F6C:010A mov [bx],ax menulis isi reg. AX ke memori pada alamat BX 0F6C:010C -d 0F6C: A 0B 0C 0D 0E 0F... 0F6C: A 1B 1C 1D 1E 1F...

49 0F6C: A 2B 2C 2D 2E 2F!"#$%&'()*+,-./ 0F6C: A 3B 3C 3D 3E 3F :;<=>? 0F6C: A 4B 4C 4D 4E 0F6C: A 5B 5C 5D 5E 5F PQRSTUVWXYZ[\]^_ 0F6C: A 6B 6C 6D 6E 6F `abcdefghijklmno 0F6C: A 7B 7C 7D 7E 7F pqrstuvwxyz{ }~. -r AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=0100 NV UP EI PL NZ NA PO NC 0F6C:0100 BB0200 MOV BX,0002 -t AX=0000 BX=0002 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=0103 NV UP EI PL NZ NA PO NC 0F6C:0103 8A27 MOV AH,[BX] DS:0002=02 -t AX=0200 BX=0002 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=0105 NV UP EI PL NZ NA PO NC 0F6C:0105 8B07 MOV AX,[BX] DS:0002=0302 -t AX=0302 BX=0002 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=0107 NV UP EI PL NZ NA PO NC 0F6C:0107 8B4701 MOV AX,[BX+01] DS:0003=0403 -t AX=0403 BX=0002 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=010A NV UP EI PL NZ NA PO NC 0F6C:010A 8907 MOV [BX],AX DS:0002=0302 -t AX=00A0 BX=0002 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=010C NV UP EI PL NZ NA PO NC 0F6C:010C 90 NOP -d

50 0F6C: A 0B 0C 0D 0E 0F... 0F6C: A 1B 1C 1D 1E 1F... 0F6C: A 2B 2C 2D 2E 2F!"#$%&'()*+,-./ 0F6C: A 3B 3C 3D 3E 3F :;<=>? 0F6C: A 4B 4C 4D 4E 0F6C: A 5B 5C 5D 5E 5F PQRSTUVWXYZ[\]^_ 0F6C: A 6B 6C 6D 6E 6F `abcdefghijklmno 0F6C: A 7B 7C 7D 7E 7F pqrstuvwxyz{ }~. Instruksi berikut akan menimbulkan Error : MOV [BX],[BX+1] : transfer data dari memori ke memori secara langsung MOV [BX],12 : transfer data langsung ke memori kesimpulan : semua transfer yg melibatkan memori harus via register MOV AH,[BL] : register alamat harus digunakan dalam format 2 byte MOV [AX],BX : reg. AX bukan register alamat MOV [CX],BX : reg. CX bukan register alamat MOV [DX],BX : reg. DX bukan register alamat 5. Instruksi PUSH & POP Sebelum membahas tentang instruksi PUSH dan POP, kita harus mempelajari terlebih dahulu mengenai STACK 5.1. Stack Karena jumlah register data terbatas (hanya 4 buah : AX, BX, CX, DX), maka diperlukan suatu lokasi penyimpanan data untuk sementara yang disebut stack. Kelebihan stack adalah dari kesederhanaannya didalam menyimpan dan mengembalikan kembali data yg telah tersimpan dibandingkan dengan penyimpanan ke memori. Dari arti katanya stack adalah tumpukan. Ini berarti jika kita akan menyimpan data di stack, data tersebut akan ditumpuk berdasarkan urutan siapa yang terakhir datang. Oleh karenanya, sistem akses data di stack disebut LIFO (Last In First Out) dimana data yang akan diambil adalah data yang ditumpuk terakhir. Penumpukan data di stack dilakukan dari bawah. FFFF 5E

51 FFFE CD tumpukan terakhir tumpukan baru Untuk mengidentifikasi tumpukan data terakhir (paling bawah), digunakan register SP (Stack Pointer). Jadi SP akan menunjuk ke tumpukan terendah dari stack. Setiap kali ada data yang ditumpuk, isi SP akan berkurang (counting down). Instruksi yang digunakan untuk operasi stack adalah PUSH dan POP. PUSH akan mendorong data ke stack dan POP akan mengeluarkan data dari stack. -a 0EA0:0100 mov ax,1234 0EA0:0103 mov bx,5678 0EA0:0106 push ax 0EA0:0107 push bx 0EA0:0108 pop ax 0EA0:0109 pop bx SP=FFEE -d ffe0 0EA0:FFE isi stack -t AX=1234 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0103 NV UP EI PL NZ NA PO NC 0EA0:0103 BB7856 MOV BX,5678 -t AX=1234 BX=5678 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0106 NV UP EI PL NZ NA PO NC 0EA0: PUSH AX -t AX=1234 BX=5678 CX=0000 DX=0000 SP=FFEC BP=0000 SI=0000 DI=0000 DS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0107 NV UP EI PL NZ NA PO NC 0EA0: PUSH BX -d ffe0 0EA0:FFE AX ada di stack

52 -t AX=1234 BX=5678 CX=0000 DX=0000 SP=FFEA BP=0000 SI=0000 DI=0000 DS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0108 NV UP EI PL NZ NA PO NC 0EA0: POP AX -d ffe0 0EA0:FFE BX ada di stack -t AX=5678 BX=5678 CX=0000 DX=0000 SP=FFEC BP=0000 SI=0000 DI=0000 DS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0109 NV UP EI PL NZ NA PO NC 0EA0:0109 5B POP BX -t AX=5678 BX=1234 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=010A NV UP EI PL NZ NA PO NC Contoh Penggunaan Instruksi Control (JMP dan JZ) -a 0F6C:0100 MOV AX,ABCD 0F6C:0103 MOV BX,DCBA 0F6C:0106 XOR AL,AL 0F6C:0108 JMP 010C 0F6C:010A MOV AL,BH 0F6C:010C JZ 010E 0F6C:010E -t trace MOV AX,ABCD AX=ABCD BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=0103 NV UP EI PL NZ NA PO NC -t trace MOV BX,DCBA AX=ABCD BX=DCBA CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=0106 NV UP EI PL NZ NA PO NC -t trace XOR AL,AL AX=AB00 BX=DCBA CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000

53 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=0108 NV UP EI PL ZR NA PE NC -t trace JMP 010C AX=AB00 BX=DCBA CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=010C NV UP EI PL ZR NA PE NC -t trace JZ 010E AX=AB00 BX=DCBA CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0F6C ES=0F6C SS=0F6C CS=0F6C IP=010E NV UP EI PL ZR NA PE NC

54 /8088 Instruction Set Summary 6.1. Data Transfer MOV Move 1. Reg/Mem to/from Reg dw modregr/m 2. Immediate to Register 1011 wreg data data (w=1) 3. Memory to Accumulator w addr-low addr-high 4. Accumulator to Memory w addr-low addr-high contoh 1: MOV AL,BL = 88D8 ( ): d=0,w=0,mod=11,reg=011(bl),r/m=000(al) MOV AX,BX = 89D8 ( ): d=0,w=1,mod=11,reg=011(bx),r/m=000(ax) MOV [BX],AL = 8807 ( ): d=0,w=0,mod=00,reg=000(al),r/m=111([bx]) MOV [BX],AX = 8907 ( ): d=0,w=1,mod=00,reg=000(ax),r/m=111([bx]) MOV AL,[BX] = 8A07 ( ): d=1,w=0,mod=00,reg=000(al),r/m=111([bx]) MOV AX,[BX] = 8B07 ( ): d=1,w=1,mod=00,reg=000(ax),r/m=111([bx]) contoh 2: MOV AX,1234 = B83412( H 12H): w=1,reg=000(ax),low-data=34h,hidata=12h MOV AL,78 = B078 ( H ): w=0,reg=000(al),data=78h contoh 3: MOV AX,[1234] = A13412 ( H 12H)): w=1,addr-low=34h,addr-high=12h contoh 4: MOV [1234],AX = A33412 ( H 12H)): w=1,addr-low=34h,addr-high=12h PUSH - Push 1. Register reg 2. Segment Register 000reg110

55 contoh 1: PUSH AX = 50 ( ): reg=000(ax) contoh 2: PUSH CS = 0E ( ): reg=01(cs) POP - Pop 1. Register reg 2. Segment Register 000reg111 contoh 1: POP AX = 58 ( ): reg=000(ax) contoh 2: POP CS = 0F ( ): reg=01(cs) 6.2. Arithmetic ADD - Add 1. Reg/Mem with Register dw modregr/m 2. Immediate to Reg/Mem sw mod000r/m data data(sw=01 3. Immediate to AX/AL w data data (w=1) contoh 1: ADD BX,CX =01CB ( ):d=0,w=1,mod=11,reg=001(CX),r/m=011(BX) ADD BL,CL =00CB ( ):d=0,w=0,mod=11,reg=001(CL),r/m=011(BL) contoh 2: ADD BX,1234 = 81C33412 ( H 12H): sw=01,mod=11,r/m=011 contoh 3: ADD AX,1234 = ( H 12H): w=1,low-data=34h,hi-data=12h SUB - Subtract 1. Reg/Memory and Reg dw modregr/m 2. Immediate from Reg/Mem sw mod101r/m data data(sw=01 3. Immediate from AX/AL w data data (w=1) contoh 1: SUB BX,CX =29CB ( ):d=0,w=1,mod=11,reg=001(CX),r/m=011(BX) SUB BL,CL =28CB ( ):d=0,w=0,mod=11,reg=001(CL),r/m=011(BL)

56 contoh 2: SUB BX,1234 = 81EB3412 ( H 12H): sw=01,mod=11,r/m=011 contoh 3: SUB AX,1234 = 2D3412 ( H 12H): w=1,low-data=34h,hi-data=12h 6.3. Logic NOT - Invert w mod01 0r/m SHL = Shift Logical Left vw mod10 0r/m SHR = Shift Logical Right vw mod10 1r/m AND - And 1. Reg/Memory and Reg dw modregr/m 2. Immediate to Reg/Mem w mod100r/m data data (w=1) 3. Immediate to AX/AL w data data (w=1) OR - Or 1. Reg/Memory and Reg dw modregr/m 2. Immediate to Reg/Mem w mod001r/m data data (w=1) 3. Immediate to AX/AL w data data (w=1) XOR - Exclusive Or 1. Reg/Memory and Reg dw modregr/m 2. Immediate to Reg/Mem w mod110r/m data data (w=1) 3. Immediate to AX/AL w data data (w=1) 6.4. Control Transfer JMP - Unconditional Jump Direct w/in Segment Short disp JE/JZ - Jump on Equal/Zero disp contoh:

57 -a 100 0D9C:0100 jmp 010f 0D9C:0102 jmp D9C:0104 jz 010f 0D9C:0106 jz D9C:0108 -u 100 0D9C:0100 EB0D JMP 010F 0D9C:0102 EBFC JMP D9C: JZ 010F 0D9C: F8 JZ 0100 jadi: JMP 010F = EB0D JMP 0100 = EBFC JZ 010F = 7409 JZ 0100 = 74F8 ( ):jump 0D(=+13) bytes forward (IP=IP+13) ( ):jump FC(=-4) bytes forward (IP=IP-4) ( ):jump 09(=+9) bytes forward (IP=IP+9) ( ):jump FB(=-8) bytes forward (IP=IP-8) (angka minus menggunakan format 2 s complement) NOTES: d=direction: if d=1 then to reg (Reg Mem) if d=0 then from reg (Reg Reg, Mem Reg) w=word: if w=1 then word operation (1 word = 2 bytes) if w=0 then byte operation mod=mode: if mod=11 then r/m is treated as a REG field if mod=00 then DISP=0, disp-low and disp-high are absent disp: show how far should the CPU jump from recent point (reg. IP)

58 r/m: if r/m = 000 then EA = (BX) + (SI) + DISP if r/m = 001 then EA = (BX) + (DI) + DISP if r/m = 010 then EA = (BP) + (SI) + DISP if r/m = 011 then EA = (BP) + (DI) + DISP if r/m = 100 then EA = (SI) + DISP if r/m = 101 then EA = (DI) + DISP if r/m = 110 then EA = (BP) + DISP* if r/m = 111 then EA = (BX) + DISP if s:w=01 then 16 bits of immediate data form the operand if s:w=11 then an immediate data byte is sign extended to form the 16-bit operand REG is assigned according to the following table: 16-Bit (w=1) 8-Bit (w=0) Segment 000 AX 001 CX 010 DX 011 BX 100 SP 101 BP 110 SI 111 DI 000 AL 001 CL 010 DL 011 BL 100 AH 101 CH 110 DH 111 BH 00 ES 01 CS 10 SS 11 DS Instruksi pada up selalu memiliki 2 bagian yaitu operation code (op-code) dan data. Instruksi 1 byte : op-code Instruksi 2 byte : op-code data Instruksi 3 byte : op-code data data Instruksi 3 byte : op-code data data data

59 -a EA0:0100 mov ax,1234 0EA0:0103 mov bl,f7 0EA0:0105 push ax -u EA0:0100 B83412 MOV AX,1234 0EA0:0103 B3F7 MOV BL,F7 0EA0: PUSH AX Yang tercetak tebal merupakan op-code nya dimana : B8 berarti MOV AX,???? B3 berarti MOV BL,?? 7. Encoding Instruksi Mesin Di dalam CPU (tepatnya pada blok Instruction Decoder), terdapat tabel instruksi yang memuat daftar semua instruksi yang dapat dimengerti oleh CPU tersebut. Daftar ini disebut sebagai microcode dan setiap kali CPU menerima sebuah instruksi, CPU akan memecah kode instruksi tersebut (tahap decoding) dan kemudian melihat arti dari masing-masing pecahan tersebut di microcode. Ini menunjukkan bahwa tidak semua CPU memiliki microcode yang sama. Beda arsitektur berarti berbeda juga microcode-nya. Sebagai contoh, program yang dapat dijalankan di IBM PC tidak akan jalan di Apple Macintosh, begitu pula sebaliknya. Hampir semua instruksi memerlukan data untuk dioperasikan. Berdasarkan Addressing Modenya (bagaimana up mendapatkan data yg dibutuhkan oleh suatu instruksi), instruksi-instruksi up 8088 dapat dibedakan menjadi : Addressing Mode Contoh instruksi Arti Immediate Add AX, 3F 5B AX AX + 3F 5B Register Direct Add AX, BX AX AX + BX Register Indirect Add AX, [BX] AX Mem[BX] Displacement Add AX, [BX+128] AX Mem[BX+128] Direct atau Absolute Add AX, [1001] AX Mem[1001]

60 -a 0EA0:0100 mov bx,000f Immediate 0EA0:0103 mov ax,bx Register Direct 0EA0:0105 mov ax,[bx] Register Indirect 0EA0:0107 mov ax,[bx-1] Displacement 0EA0:010A mov ax,[000d] Direct/Absolute [0000] [000D] [000F] -d EA0:0000 CD A0 00 9A EE FE - 1D F0 4F A 03 0EA0: A FF FF FF [0100] -t AX=0000 BX=000F CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0103 NV UP EI PL NZ NA PO NC 0EA0: D8 MOV AX,BX -t AX=000F BX=000F CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0105 NV UP EI PL NZ NA PO NC 0EA0:0105 8B07 MOV AX,[BX] DS:000F=2503 -t AX=2503 BX=000F CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0107 NV UP EI PL NZ NA PO NC 0EA0:0107 8B47FF MOV AX,[BX-01] DS:000E=038A -t AX=038ABX=000F CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=010A NV UP EI PL NZ NA PO NC 0EA0:010A A10D00 MOV AX,[000D] DS:000D=8A08

61 -t AX=8A08 BX=000F CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=010D NV UP EI PL NZ NA PO NC Soal soal Latihan 1. Buatlah op code dari instruksi-instruksi dibawah ini secara manual(sertakan cara pengerjannya) 0F00 : 0000 XOR BX,BX 0F00 : 0002 START : MOV AX,ABCD 0F00 : 0005 ADD AX,BX 0F00 : 0007 JMP Tracing instruksi 0F00 : F00 : F00 : F00 : 0107 MOV AX,[BX] MOV CX,3490 ADD AX,CX PUSH BX 0F00 : 0108 INC CX 0F00 : 0109 OR CX,AX 0F00 : 010B JNZ F00 : 010D MOV AX,BX Berikut diberikan inisialisasi awal untuk melakukan tracing memori : AX = 0000 BX = 0000 CX = 0000 DX = 0000 SP = 0011 BP = 0000 SI = 0000 DI = 0000 DS = 0FF0 ES = 0FF0 SS = 0FF0 CS = 0F00 Isi memori sebelum program dieksekusi : 0FF0 : FF0 : 0010 E0 CD A1 52 FF B8 3D 75 BB 0C BC EE B9 AC 11 CF A0 BC 9B FF 1F Lakukan tracing instruksi berawal dari alamat fisik 0F012!

62 Bab VI Komponen Penunjang Antarmuka 8088 Untuk dapat bekerja, mikroprosesor 8088 membutuhkan sistem penunjang atau komponenkomponen penunjang lainnya. Minimal mikroprosesor 8088 membutuhkan 2 buah IC ( Integrated Circuit ) untuk membantu kerjanya, yaitu : 1. IC 74LS373, yaitu latch ( flip-flop ) yang digunakan untuk memisahkan ( demultipleksing ) pin 9 16 menjadi 2 buah informasi yaitu Address dan Data. Sinyal ALE ( Address Latch Enable ) digunakan untuk memisahkan kedua informasi tersebut, dimana jika ALE = high ( level 1 ) maka pin 9 16 membawa informasi Address ( A ), sedangkan jika ALE = low ( level 0 ) maka pin 9 16 membawa informasi Data ( D ). 2. IC 8284 digunakan untuk menghasilkan sinyal CLOCK ( maksimum 5 Hz ), RESET, dan READY. Sesuai yang dijelaskan pada bab-bab sebelumnya bahwa sebuah sistem komputer memiliki komponen-komponen lain selain prosesor, seperti memori dan perangkat input output. Artinya prosesor tidak dapat bekerja sendiri, sepertinya halnya sebuah Personal Computer (PC) yang lengkap memiliki beberapa komponen penting pendukung seperti : : arithmetic co-prosesor yang bertugas untuk membantu 8088 dalam menangani kalkulasi : prosesor khusus untuk menangani DMA ( Direct Memory Access ) : prosesor khusus untuk transaksi data serial ( terpasang pada IO card, tidak pada motherboard ) : prosesor khusus untuk menangani timing : prosesor khusus untuk transaksi data parallel : Programmable Interrupt Controller 7. Dll. Hubungan prosesor dengan perangkat diluarnya membutuhkan interface / antarmuka. Komponen yang digunakan sebagai antarmuka ada beberapa macam, diantaranya yaitu decoder, encoder,

63 three state buffer, flip-flop, dan lain-lain. Berikut akan dijelaskan contoh komponen penunjang antarmuka pada Mikroprosesor Decoder Agar dapat menyambungkan peranti memori ke mikroprosesor, diperlukan pendekodean alamat dari mikroprosesor untuk membuat fungsi memori pada bagian yang unik atau partisi dari peta memori. Tanpa pendekode alamat, hanya satu peralatan memori yang dapat dihubungkan ke mikroprosesor. Dekoder mengoreksi ketidakcocokan dengan mendekodekan alamat pin yang tidak terhubung ke komponen memori. Pendekodean dapat dilakukan dengan menggunakan sebuah IC dekoder 74LS138. Prinsip kerja IC dekoder ini dapat dilihat pada gambar berikut: Gambar 9. Gambar Decoder 3 to 8 [4] 2. Three State Buffer Banyak perangkat tersambung pada bus data namun hanya satu perangkat yang aktif dalam satu waktu akses. Data bus menggunakan three state buffer sehingga dapat berkeadaan floating/ berimpedansi tinggi jika tidak sedang digunakan dan berimpedansi rendah pada saat diakses. Three state buffer adalah buffer yang bekerja dalam dua arah yaitu memasukkan data atau mengeluarkan data tergantung bit kendali. Mikroprosesor memiliki saluran bus data 8 bit dua arah artinya transfer data berlangsung pada 8 saluran parallel ke unit lain diluar CPU seperti memori atau port I/O atau dari unit memori dan port I/O ke dalam CPU. Berikut adalah gambar yang memperlihatkan prinsip kerja dua arah dari three state buffer pada saluran data :

64 C output input Gambar 10. Gambar Prinsip Penggunaan Three State Buffer pada Saluran Data

65 Bab VII Interface 8088 dan Memori 1. Pengenalan Hubungan Mikroprosesor 8088 dan Memori System yang berdasarkan pada mikroprosesor baik yang sederhana maupun yang kompleks pasti mempunyai memori,dalam hal ini, 8088 tidak berbeda dengan mikroprosesor lain.hampir semua system terdiri dari dua jenis memori pokok, read-only memory (ROM), dan random access memory (RAM) atau read/write memory. Sebelum melakukan interfacing memori ke mikroprosesor, adalah sangat penting bagi kita untuk benar-benar mengerti operasi komponen-komponen memori sebelum berusaha menginterface memori ke mikroprosesor.. Pada pembahasan kali ini akan dijelaskan fungsi dari empat tipe umum memori: - Memori hanya baca (ROM Read Only Memory) - Memori flash (EEPROM) - Static random acces memory (SRAM) - Dinamic random acces memory (DRAM) 1.1. ROM Memori Read-only memori (ROM) secara permanen akan menyimpan program dan data yang residen pada system dan tidak berubah ketika catu daya diputuskan. ROM telah ada dalam beberapa bentuk sekarang ini. Adapun jenis - jenis dari ROM antara lain: a. PROM Jenis ROM dimana user bisa burn data didalam IC tersebut. Burn artinya adalah blowing fuse dengan menggunakan alat yang disebut ROM burner atau ROM programmer. PROM hanya dapat ditulis sekali. b. EPROM Jenis ROM yang bisa diprogram dan dihapus berkali-kali. Penghapusan EPROM memerlukan waktu 20 menit dengan disinari oleh sinar UV c. EEPROM

66 Jenis ROM yang metode penghapusannya menggunakan kelistrikan secara instan. EEPROM hanya bisa menghapus data pada salah satu bagian lokasi memory saja. d. Flash EPROM Jenis ROM yang bersifat user programmable, disebut flash karena untuk menghapus seluruh isi memory hanya membutuhkan waktu beberapa detik saja RAM Memori Merupakan media penyimpanan data yang bersifat volatile (data akan hilang ketika power supply diputus), dapat ditulisi dan dibaca berulang ulang, dapat menyimpan informasi selama catu daya sistem mikroprosesor belum dimatikan, dan informasi akan hilang apabila catu daya memori dimatikan. dua, yaitu : memori statik dan memori dinamik. Jenis-jenis RAM : a. Static RAM ( SRAM ) Contoh: RAM. Memori RAM digolongkan menjadi Jenis RAM yang sel penyimpanan data pada memory RAM dibuat dari flip flop yang tidak perlu direfresh untuk menjaga data tersebut. Piranti static RAM memori akan menahan data sepanjang catu daya DC diterapkan. Oleh karena tidak ada aksi khusus yang diperlukan untuk menahan data yang disimpan, maka piranti ini disebut dengan static memory.perbedaan pokok antara ROM dan RAM adalah bahwa RAM dituliskan kedalam operasi yang normal, sedangkan ROM deprogram diluar komputer.sram akan menyimpan data temporer dan digunakan ketika ukuran read / write memori relative kecil.sekarang ini memori yang kecil adalah dibawah 256 Kbyte. b. Dynamic RAM ( DRAM ) Jenis RAM untuk keperluan baca dan tulis dengan menggunakan kapasitor untuk menyimpan informasi setiap bit. DRAM membutuhkan refresh untuk menjaga datanya akibat dari kebocoran kapasitor. Keuntungan menggunakan DRAM adalah kapasitas tinggi, biaya lebih rendah per bit, dan daya konsumsi lebih rendah per bit.static RAM paling besar yang ada sekarang ini adalah 32K X 8.Dinamik RAM sebaliknya ada dalam beberapa ukuran yang lebih besar, hingga 4M x 1.Dalam semua hal DRAM pada pokoknya sama dengan SRAM kecuali bahwa DRAM menahan data untuk hanya kirakira 2 4 ms pada kapaitor yang terintegrasi. Setelah 2 4 ms, isi dari DRAM harus

67 secara lengkap dituliskan kembali atau disegarkan kembali karena kapasitor kehilangan arah. Dari pada menuntut tugas yang paling tidak mungkin untuk melakukan dari pembacaan isi setiap lokasi memori dengan program dan kemudian menuliskannya kembali, maka pabrik secara internal membuat DRAM sehinga, dalam versi 64K x 1, seluruh isi memori dapat disegarkan kembali dengan 256 pembacaan dalam interval 4- ms.penyegaran kembali juga akan terjadi selama penulisan dan selama cycle/ putaran penyegaran khusus Hubungan Pin Memori Hubungan pin yang umum untuk semua piranti memori adalah masukan (input) alamat, masukan/keluaran (input/output) data, beberapa tipe masukan seleksi dan paling tidak satu input kontrol yang digunakan untuk menyeleksi operaso baca dan tulis. Seperti yang terlihat pada gambar berikut ini: Gambar 11. Hubungan Pin Memori Secara Umum Keterangan : A0- AN digunakan sebagai masukan alamat D0-DN digunakan sebagai masukan/keluaran data Select digunakan untuk mengaktifkan fungsi chip select (CS) Read digunakan untuk mengaktikan fungsi Output Enable (OE) untuk proses baca data dari memori Write digunakan untuk mengaktikan fungsi write untuk proses tulis ke memori

68 1.1.1 Hubungan Alamat Semua piranti memori memiliki input alamat yang memilih lokasi memori di dalam peranti memori. Input alamat hampir selalu diberi label dari A0, yang paling kecil dari input sampai An dimana n bisa nilai apapun selalu diberi label sebagai kurang satu dari jumlah pin ( n = jumlah pin alamat 1). Sebagai contoh sebuah memori yang memiliki 10 pin alamat memiliki pin yang diberi label A0 A9. Jumlah dari lokasi memori dapat diperkirakan dari jumlah pin alamat. Sebagai contoh, peranti memori yang memiliki 10 (A0-A9) pin alamat memiliki lokasi memori 210 = 1024 lokasi atau 1K (1024) lokasi memori begitu juga seterusnya. Sebagai contoh sebuah memori dengan jumlah bit data yang digunakan sebanyak 8 bit (1 Byte) dan jumlah lokasi memori 1024 (1K), dapat dinyatakan kapasitas memori sebesar 1024 x 8 bit = 1K-Byte atau 1KB. 400H mewakili bagian 1K-byte dari sistem memori. Jika peranti memori dikodekan untuk digunakan / dipasang pada sistem mikroprosesor dengan alamat awal memori 10000H, maka lokasi terakhir adalah pada lamat 103FFH ( satu lokasi kurang dari 400H). Memory Size Memory Map Address line used 256 Byte 00 FF A0 A1 A2 A3 A4 A5 A6 A7 512 Byte 000 1FF A0 A1 A2 A3 A4 A5 A6 A7 A8 1 Kbyte 000 3FF A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 2 Kbyte 000 7FF A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 4 Kbyte 000 FFF A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 8 Kbyte FFF A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 16 Kbyte FFF A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 32 Kbyte FFF A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 64 Kbyte 0000 FFFF A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 A Hubungan data Semua peranti memori memiliki kumpulan data output/input. Hubungan data adalah titik dimana data dimasukkan untuk penyimpanan atau dikeluarkan untuk pembacaan. Pin data pada peranti memori diberi label D0-D7 untuk memori dengan lebar data 8 bit.

69 1.1.3 Hubungan seleksi Setiap peranti memori memiliki sebuah input kadang-kadang lebih dari satu yang memilih atau mengenable peranti memori. Input jenis ini paling sering disebut masukan sebagai suatu pemilih chip (CS chip select), enable chip (CE chip enable), atau hanya pilih (S select). Memori RAM umumnya memiliki paling tidak satu input CS atau S, dan ROM paling tidak satu CE. Jika input CE, CS atau S aktif (sebuah logika 0 karena garis diatas), peranti memori memberikan sebuah pembacaan atau penulisan. Jika pin ini tidak aktif (sebuh logika1), peranti tidak dapat melakukan sebuah pembacaan atau penulisan data karena dimatikan atau didisabel. Jika ada lebih dari satu penghubung CS, maka semuanya harus diaktifkan untuk membaca atau menulis data Hubungan kontrol Semua peranti memori memilki beberapa beuntuk input kontrol atau banyak input kontrol. Sebuah ROM biasanya memiliki satu input kontrol, dimana RAM sering memiliki satu atau dua input kontrol. Input kontrol yang sering ditemukan pada ROM adalah output enable (OE) atau hubungan gerbang (G) gate, yang memungkinkan data mengalir keluar dari pin output data dari ROM. Jika OE tidak aktif, output tidak diaktifkan sehingga pembacaan data tidak dapat dilakukan.input kontrol yang sering ditemukan pada peranti RAM memiliki satu maupun dua input kontrol. Jika ada satu input kontrol, sering disebut sebagai R/W. Pin ini memilih mode operasi pembacaan atau penulisan hanya jika peranti input CS diaktifkan. Jika RAM memiliki dua input kontrol, biasanya diberi label WE (write enable) dan OE (output enable) atau G. disini WE difungsikan untuk mengaktifkan mode penulisan ke memori, sedangkan OE difungsikan untuk mengaktifkan mode pembacaan data dari memori. Kedua pin tidak boleh aktif bersamaan. Gambar 12. Contoh Peranti memori EPROM 8KB 2764 (13 bit alamat) dan fungsi pin

70 Gambar 13. Contoh Peranti memori RAM 2KB 6116 (11 bit alamat) dan fungsi pin 2. Interfacing memori pada Mikroprosesor 8088 Mikroprosesor 8088 mempunyai 8-bit data bus, yang akan membuatnya ideal untuk dihubungkan ke piranti memori 8 bit yang umum yang ada sekarang ini.namun demikian, agar 8088 berfungsi secara benar dengan memori, system memori harus mengartikan kode alamat untuk memilih komponen memori, dan harus menggunakan signal control RD, WR, dan IO/M yang disediakan oleh 8088 untuk mengontrol memori. Susunan mode minimum untuk 8088 digunakan dalam bagian ini dan pada pokoknya sama dengan system mode maksimum untuk interface memori.perbedaan utama adalah bahwa mode maksimum IO/M dikominasikan dengan RD untuk membuat sinyal MRDC, dan IO/M dikombinasikan dengan WR untuk membuat sinyal MWTC.Sinyal control mode maksimum ini dikembangkan didalam 8288 pengontrol bus.dalam mode minimum, memori akan melihat 8088 sebagai piranti dengan 20 hubungan alamat (A19-A0), 8 hubungan bus data (AD7-AD0), dan sinyal control IO/M, RD, dan WR. Data di ROM hanya dapat dibaca saja sedangkan data di RAM dapat dibaca dan juga ditulis. Hal ini menyebabkan secara hardware mereka berbeda seperti yang terlihat pada gambar berikut

71 Gambar 14. Antarmuka 8088 dan ROM ( IC 2716 ) [3] Gambar 15. Antarmuka 8088 dan RAM ( IC 4016 ) [3] Pada gambar di atas dapat diperhatikan : 1. sambungan untuk data adalah langsung (direct connection) tanpa perantara. Dimana Dn dari i8088 disambungkan dengan Dn yg bersesuaian (n = 0..7)

72 2. sambungan untuk alamat tergantung pada Address Line yg dibutuhkan untuk mengaktifkan salah satu set flip-flop di dalam memori. Untuk kasus diatas salah satu dari set flip-flop akan diaktifkan dgn A0 A10 dari i sambungan bus kontrol adalah untuk memberikan sinyal RD atau WR dari 8088 ke 4016 untuk menandakan jenis akses data (apakah READ membaca data dari memori, ataukah WRITE menulis data ke memori). Dan untuk sinyal CS, karena hanya ada satu keping memori yg digunakan, maka pengaksesan memori hanya terjadi pada 2716 / Sehingga 2716 / 4016 tersebut selalu dalam keadaan aktif. Gambar (b) dan (c) merupakan cara lain (yg lebih sederhana) untuk menggambarkan interkoneksi (bus data dan bus alamat) antara 8088 dgn memori. 3. Interface 8088 dengan RAM dan ROM Proses antarmuka ROM ke 8088 memerlukan waktu tunggu yang menggunakan sinyal IO/M untuk membantu decoder. Contoh rangkaian seperti gambar 16 mengilustrasikan mikroprosesor 8088 yang dihubungkan ke delapan EPROM 2732, 4K x 8 piranti memori yang sangat umum digunakan sekarang ini.2732 mempunyai input alamat dan memori lebih banyak dibandingkan dengan 2716.Piranti ini akan menyebarkan 32 x 8 bit dari ruang alamat fisik Pada rangkaian ini decoder dihubungkan sedikit berbeda dari biasanya karena jenis EPROM ini mempunyai waktu akses 450 ns sedangkan ketika 8088 dioperasikan dengan 5-MHz clock diperlukan waktu 460 ns untuk mengakses memori.oleh karena itu untuk mengatasi hal tersebut kita harus menambahkan gerbang NAND untuk membuat sinyal agar decoder dan sinyal pada piranti dapat membuat waktu tunggu.waktu tunggu yang disisipkan setiap kali bagian memori ini dimasukkan, 8088 akan memberikan waktu 660 ns bagi EPROM untuk mengakses data.ini merupakan waktu yang cukup bagi komponen memori yang membutuhkan 450 ns untuk akses data, bahkan dengan penundaan yang dibuat oleh decoder.

73 Gambar 16. Rangkaian interface EPROM 2732 dengan mikroprosesor 8088 [4] Interface pada RAM sedikit lebih mudah untuk dihubungkan dibandingkan dengan EPROM karena hampir semua komponen memori RAM tidak memerlukan pernyataan menunggu.bagian yang ideal dari memori untuk RAM berada di bagian bawah, yang berisi vector untuk interupsi.vektor interupsi sering diubah dengan paket software yang berbeda, sehingga agak penting untuk menuliskan sandi / encode bagian memori ini dengan RAM. Pada RAM, struktur internal pengaksesannya Sinyal WE dan OE akan mengaktifkan salah satu set dari 3-state buffer (jika WE diaktifkan ke arah data masuk ke dalam memori, jika OE diaktifkan ke arah data keluar dari memori). Untuk menyambungkan suatu keping memori dengan mikroprosesor dibutuhkan 3 penyambungan yaitu sambungan untuk data, alamat, dan kontrol. 1. Sambungan data adalah langsung karena pada umumnya lebarnya sama-sama 8 bit (D0 D7) baik dari sisi i8088 maupun dari sisi memori. 2. Sambungan alamat tergantung dari kapasitas memori yg digunakan. Misalnya memori yg digunakan berkapasitas 2 Kbyte, berarti address line yg digunakan untuk mengakses suatu data pada memori tersebut adalah A0 A10. Maka yang diambil dari i8088 adalah address line yg bersesuaian yaitu A0 A10, dimana Pin A0 dari i8088 disambungkan

74 pada masukan A0 RAM, Pin A1 dari i8088 disambungkan pada masukan A1 RAM, Pin A2 dari i8088 disambungkan pada masukan A2 RAM, Pin A3 dari i8088 disambungkan pada masukan A3 RAM, dst sampai Pin A10 dari i8088 disambungkan pada masukan A10 RAM. 3. Sambungan kontrol yg diperlukan adalah : a. sinyal CS: untuk mengaktifkan suatu keping memori. Sisa dari Address line yg tidak digunakan (A12 A19) akan dipakai untuk mengaktifkan memori tersebut (masukan Chip Select). Gambar 17. Konfigurasi Chip Select b. untuk kasus RAM, sinyal Memory Read digunakan untuk memberitahu eeping memori yg telah diaktifkan pin CS-nya bahwa jenis akses adalah READ. Untuk itu digunakan sebuah gerbang OR untuk menggabungkan sinyal RD dan IO/M dari i8088. Sinyal Memory READ yang active-low ini akan disambungkan pada pin OE yang juga active-low. c. Untuk kasus RAM, sinyal Memory Write digunakan untuk memberitahu eeping memori yg telah diaktifkan pin CS-nya bahwa jenis akses adalah WRITE. Untuk itu digunakan sebuah gerbang OR untuk menggabungkan sinyal WR dan IO/M dari i8088. Sinyal Memory WRITE yang active-low ini akan disambungkan pada pin WE yang juga active-low. Contoh : ingin dirancang sebuah Address Decoder yang menghubungkan antara Mikroprosesor 8088 dengan 2 buah memori, dimana memori 1 berkapasitas 8 Kbyte dan memori 2 berkapasitas 32 Kbyte. Langkah-langkah yang harus dilakukan adalah :

75 1. Membuat peta memori, dari peta memori ini akan diketahui alamat awal dan alamat akhir dari masing-masing memori dan address yang dibutuhkan untuk membuat address decoder 2. Dari address line yang dibutuhkan untuk address decoder, maka dapat dirancang/ atau ditentukan komponen yang akan digunakan. Dapat berupa gerbang logika atau sebuah decoder n to 2 n Asumsi soal diatas diminta dengan alamat awal peta memori pada alamat 00000h. Peta memori untuk sistem diatas adalah sebagai berikut : Address line Alamat awal dan Memori A A0 akhir = 09FFF = Memori 2 32 KByte = 01FFF = Memori 1 8 KByte Address line yang tidak digunakan untuk hubungan data digunakan untuk hubungan alamat pada address decoder Address Decoder A0 s/d A14 D 0 s/d D7 A15 Memori 2 A16 A17 A18 /CS A19 A13 A14 A15 A16 A17 A18 A19 A0 s/d A12 D 0 s/d D7 Memori 1 /CS

76 4. Timing Diagram Hal penting untuk kita memahami timing bus sistem sebelum memilih memori atau alat I/O untuk pengantarmuka dengan mikroprosesor Pada pokok bahasan kali ini memberikan pengertian mengenai operasi sinyal bus, dan timing baca/tulis dasar pada Tiga bus pada 8088 : alamat, data dan kontrol berfungsi dengan cara yang tepat sama dengan mikroprosesor lain. Jika data ditulis ke memori, mikroprosesor mengeluarkan alamat memori ke bus alamat, mengeluarkan data yang akan ditulis ke memori pada bus data, dan mengeluarkan sinyal write (WR) ke memori dan IO/M di set pada logika 0. Jika data dibaca dari memori, mikroprosesor mengeluarkan alamat memori ke bus alamat, mengeluarkan sinyal memori read (RD), dan menerima data melalui bus data. Mikroprosesor menggunakan memori dan I/O dalam periode yang disebut siklus bus. Setiap siklus bus sama dengan empat periode clocking sistem (level T). Selama periode pertama pada siklus bus, yang disebut T1, banyak hal yang terjadi. Alamat memori atau lokasi I/O dikirim melalui bus alamat dan hubungan bus alamat/data (termultipleks). Selama Siklus T1 sinyal sinyal kontrol ALE, DT/R dan IO/M (8088) juga dikeluarkan. Sinyal IO/M atau menunjukan apakah bus berisi alamat memori atau nomor alat I/O (alamat Port I/O). Pada waktu T2, mikroprosesor 8088 mengeluarkan sinyal RD atau WR, DEN dan pada kasus write, data yang akan ditulis muncul pada bus data. Peristiwa - peristiwa ini menyebabkan memori atau perangkat I/O mulai melakukan baca/tulis. Sinyal DEN mengaktifkan buffer bus data, sehingga memori atau I/O dapat menerima data yang akan ditulis., atau sehingga mikroprosesor dapat menerima data yang dibaca dari memori atau I/O untuk operasi baca.

77 Gambar 18. Timing Baca (Read) Selama T1 - Mikroprosesor mengeluarkan sinyal ALE mengaktifkan Latch Enable dari 74LS373 - Data Alamat A19-A0 dikeluarkan melalui Bus Alamat - DT/R di set pada logika 0 agar data input (dari memori/io) dapat diambil dari buffer 74LS245 Selama T2 - Sinyal RD (Read) di kirimkan ke Memori atau I/O - DEN di set pada logika 0 sebagai sinyal enable buffer 74LS245 Selama T3 - Data Input dibaca dari memori melalui bus data

78 Gambar 19. Timing Tulis (write) Selama T1 - Mikroprosesor mengeluarkan sinyal ALE mengaktifkan Latch Enable dari 74LS373 - Data Alamat A19-A0 dikeluarkan melalui Bus Alamat - DT/R di set pada logika 1 agar data out (ke memori/io) dapat dilewatkan melaluiri buffer 74LS245 Selama T2 - Sinyal WR (Write) di kirimkan ke Memori atau I/O - DEN di set pada logika 0 sebagai sinyal enable buffer 74LS245 Selama T3 - Data Out ditulis ke memori melalui bus data

79 Soal- soal latihan 1. Berdasarkan gambar dibawah ini, keping memori yang diakses memiliki jangkauan alamat pada ( alamat awal-alamat akhir) =.. A15 A16 A17 A18 A12 A13 A14 /EN /CS D7 D0 A11 A0 A19 2. Diberikan 3 buah RAM dengan kapasitas masing-masing 64 Kbyte dan 2 buah RAM dengan kapasitas masing-masing 32 Kbyte. Buatlah rangkaian address decodernya dengan alamat awal 80000h.

80 Bab VIII Interface 8088 dan I/O Dalam suatu system mikroprosessor, mikroprosessor bekerja dengan dukungan dari device/peripheral lain seperti memori, I/O equipment, ADC, interrupt device, dan lain-lain. IN adalah perintah untuk memindahkan data dari piranti I/O ke mikroprosesor dan OUT adalah perintah untuk memindahkan data keluar dari mikroprosesor ke piranti I/O. 1. Pengenalan Perangkat IO Piranti input yang utama adalah rangkaian 8 atau 16 three-state buffer dan piranti output utama adalah latch 8 atau 16 bit Interface Input Utama Gambar 20. Rangkaian Port input dasar yang menggunakan switch sebagai alat input 8 three-state buffer digunakan untuk menyusun 8-bit port input yang dijelaskan dalam gambar 1.Perhatikan bahwa data TTL eksternal dihubungkan ke input dari buffer, dan output dari buffer dihubungkan ke bus alamat / data 8088.Hubungan tersebut memungkinkan mikroprosesor untuk membaca data dari bus alamt / data selama instruksi IN ke dalam register AL atau AX jika buffer 16 bit dan 16 switch digunakan dalam rangkaian.

81 Jika 8088 menjalankan IN, maka alamat port I/O dibaca dan membuat logika 0 pada input control ke buffer.0 pada input control akan menyebabkan buffer bergerak melalui data dari switch hingga ke bus alamt / data dimana input tersebut dibaca ke dalam register AL atau AX. Sirkuit input utama ini tidaklah optional, sirkuit ini selalu dimasukkan di dalam piranti input, atau jika tidak ada yang muncul, maka dia tentu seperti yang diilustrasikan.hanya input tipe switch sederhana yang akan menggunakan buffer Interface Output Utama Gambar 21. Rangkaian Port Output Yang Menggunakan Led Sebagai Alat Output Interface output utama akan menerima data dari mikroprosesor dan biasanya berisi data untuk beberapa piranti eksternal.penguatnya seperti dalam interface input juga sering dibuat kedalam piranti I/O karena tanpa penguat output yang dihasilkan akan lemah. Jika instruksi OUT dibuat, maka data dari AL atau AX akan dikirimkan ke latch melalui koneksi bus alamat / data.pada Gambar?? bus alamat / data dihubungkan ke input D dari latch octal 74LS374, dan output (Q) dihubungkan ke delapan LEDs. Dalam sirkuit ini, jika logika 0 adalah output ke Q, maka LED akan menyala.setiap waktu OUT dibuat, maka decoder akan mengembangkan pulse-clock bagi latch octal untuk menangkap output dari bus alamat / data Handshaking Banyak piranti I/O yang menerima atau mengerjakan informasi dengan rentangan waktu yang lebih lambat dari pada mikroprosesor.metode control I/O untuk menyesuaikan piranti I/O dengan

82 mikroprosesor disebut dengan handshaking atau polling.misalnya jika printer hanya dapat mencetak 100 karakter per detik (CPS), maka program yang akan mencetak informasi akan memperlambat mikroprosesor agar sesuai dengan kecepatan printer. Gambar 22. Interface antara printer dan system komputer 2. Jenis-jenis Pemetaan Perangkat IO 2.1. Berdasarkan port / nomor port yang digunakan Nomor port adalah nomor unik / tersendiri untuk mendakan perangkat mana yang akan diakses oleh Terdapat 2 jenis yaitu fixed addressing dan variable addressing, perbedaan antara keduanya dijelaskan melalui tabel dibawah ini. Tabel 12. Perbedaan fixed addressing dan variable addressing Fixed Addressing Nomor port yang diakses ditulis langsung pada instruksinya Maksimum jumlah port yang bisa diakses adalah 256 Untuk pengaksesannya digunakan address bus A0-A7 Data bus yang digunakan bisa 8 bit (register AL) atau 16 bit (register AX) Contoh instruksi : IN AL, 00H Variable Addressing Nomor port yang diakses ditulis terlebih dahulu ke register DX Maksimum jumlah port yang bisa diakses adalah Untuk pengaksesannya digunakan address bus A0-A15 Data bus yang digunakan bisa 8 bit (register AL) atau 16 bit (register AX) Contoh instruksi : IN AL, DX

83 2.2. Berdasarkan peta alamatnya Isolated I/O Pada isolated I/O ini antara memory dan I/O dibuat terpisah baik dari segi pemetaannya maupun instruksi pengakasesannya. Peta alamat memori dan peta alamat I/O dipisahkan dan untuk membedakan antara kedua jenis data alamat tersebut di gunakan sinyal IO/M, dimana saat IO/M bernilai logika 1 data yang ada pada bus merupakan data dari perangkat I/O, sedangkan jika IO/M bernilai logika 0 maka data yang ada pada bus saat itu merupakan data dari memori. Itu jika dilihat dari pemetaannya, sedangkan jika dilihat dari cara pengaksesannya, pada metode isolated I/O ini untuk mengakses port I/O digunaan perintah IN atau OUT sedangkan untuk mengakses memori tetap menggunakan perintah MOV. Gambar 23. Peta Memori Isolated I/O [3] Memory-mapped I/O Pada metode ini pemetaan alamat I/O digabung dengan memori, dimana ada bagian tertentu dalam memori yang sengaja diperuntukkan untuk menyimpana data dari I/O, sehingga alamat memori tersebut berubah fungsi menjadi alamat I/O. Unutk pengaksesan data baik dari I/O maupun memori tetap menggunakan instruksi MOV.

Diktat Kuliah intel 8088

Diktat Kuliah intel 8088 Mikroprosesor dan Antarmuka Diktat Kuliah intel 888 Nyoman Bogi Aditya Karna Sisfo IMTelkom bogi@imtelkom.ac.id http://bogi.blog.imtelkom.ac.id Institut Manajemen Telkom http://www.imtelkom.ac.id Bagan

Lebih terperinci

PETA MEMORI MIKROPROSESOR 8088

PETA MEMORI MIKROPROSESOR 8088 1. Bagan Dasar µp 8088 PETA MEMORI MIKROPROSESOR 8088 Gambar 1. Bagan Dasar µp 8088 Elemen didalam mikroprosesor adalah : CU (Control Unit) adalah manajer dari semua unit. CU mengatur keselarasan kerja

Lebih terperinci

Diktat Kuliah Organisasi dan Interaksi

Diktat Kuliah Organisasi dan Interaksi Mikroprosesor dan Antarmuka Diktat Kuliah Organisasi dan Interaksi Nyoman Bogi Aditya Karna Sisfo IMelkom bogi@imtelkom.ac.id http://bogi.blog.imtelkom.ac.id Institut Manajemen elkom http://www.imtelkom.ac.id

Lebih terperinci

OPERATION SYSTEM. Jenis - Jenis Register Berdasarkan Mikroprosesor 8086/8088

OPERATION SYSTEM. Jenis - Jenis Register Berdasarkan Mikroprosesor 8086/8088 OPERATION SYSTEM Nama : Dian Fahrizal Nim : 110170096 Unit : A3 Jenis - Jenis Register Berdasarkan Mikroprosesor 8086/8088 Mikroprosesor 8086/8088 memiliki 4 register yang masing-masingnya terdiri dari

Lebih terperinci

MIKROPROSESOR REGISTER-REGISTER MIKROPROSESOR INTEL

MIKROPROSESOR REGISTER-REGISTER MIKROPROSESOR INTEL Perguruan Tinggi Mitra Lampung MIKROPROSESOR REGISTER-REGISTER MIKROPROSESOR INTEL 8086 Erwin Ardianto, S.T FLAG REGISTER 8086 memiliki flag register dengan panjang16-bit. Dari 16-bit itu terdapat 9 bendera

Lebih terperinci

Mikroprosesor. Bab 3: Arsitektur Mikroprosesor. INTEL 8086 Generasi Awal Prosesor PENTIUM. Arsitektur Mikroprosesor 1

Mikroprosesor. Bab 3: Arsitektur Mikroprosesor. INTEL 8086 Generasi Awal Prosesor PENTIUM. Arsitektur Mikroprosesor 1 Mikroprosesor Bab 3: Arsitektur Mikroprosesor Generasi Awal Prosesor PENTIUM Arsitektur Mikroprosesor 1 20 bit Arsitektur Mikroprosesor 16 bit Register Antrian (FIFO) Arsitektur Mikroprosesor 2 Prosesor

Lebih terperinci

Mata Kuliah : Bahasa Rakitan Materi ke-3

Mata Kuliah : Bahasa Rakitan Materi ke-3 Mata Kuliah : Bahasa Rakitan Materi ke-3 Struktur Register REGISTER Register adalah sebagian kecil memory komputer yang dipakai i untuk tempatt penampungan dt data. Data yang terdapat dalam register dapat

Lebih terperinci

Materi 3. Komponen Mikrokomputer SYSTEM HARDWARE DAN SOFTWARE DADANG MULYANA

Materi 3. Komponen Mikrokomputer SYSTEM HARDWARE DAN SOFTWARE DADANG MULYANA Materi 3 SYSTEM HARDWARE DAN SOFTWARE DADANG MULYANA dadang mulyana 2012 1 Komponen Mikrokomputer Video display (jenis dan resolusi) Keyboard Drive Disk Unit system Prosessor Pendukung dadang mulyana 2012

Lebih terperinci

KONFIGURASI PIN-PIN MIKROPROSESOR Z 80. Yoyo somantri Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia

KONFIGURASI PIN-PIN MIKROPROSESOR Z 80. Yoyo somantri Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia KONIGURASI PIN-PIN MIKROPROSESOR Z 80 Yoyo somantri Dosen Jurusan Pendidikan Teknik Elektro PTK Universitas Pendidikan Indonesia 1. Konfigurasi Pengelompokan pin pin dari mikroprosesor Z80 dapat dilihat

Lebih terperinci

Mikroprosesor. Pertemuan 8. By: Augury

Mikroprosesor. Pertemuan 8. By: Augury Mikroprosesor Pertemuan 8 By: Augury augury@pribadiraharja.com Sinyal pada Mode Maksimum Status siklus bus Status siklus bus ( S0, S1, S2 ) Sinyal ini merupakan keluaran yang akan diberikan oleh IC lain

Lebih terperinci

REGISTER Register-register yang terdapat pada mikroprosesor, antara lain :

REGISTER Register-register yang terdapat pada mikroprosesor, antara lain : REGISTER Register adalah sebagian memori dari mikroprosesor yang dapat diakses dengan kecepatan yang sangat tinggi. Register-register yang terdapat pada mikroprosesor, antara lain : General purpose register

Lebih terperinci

ORGANISASI DAN ARSITEKTUR KOMPUTER. rsp oak informatika

ORGANISASI DAN ARSITEKTUR KOMPUTER. rsp oak informatika ORGANISASI DAN ARSITEKTUR KOMPUTER rsp oak informatika 1 Microprocessor Intel 80x86 rsp oak informatika 2 Central Processing Unit (CPU) CPU merupakan eupa a prosesor untuk memproses data Terpusat (central)

Lebih terperinci

Arsitektur Komputer, Mikroprosesor dan Mikrokontroller. TTH2D3 Mikroprosesor

Arsitektur Komputer, Mikroprosesor dan Mikrokontroller. TTH2D3 Mikroprosesor Arsitektur Komputer, Mikroprosesor dan Mikrokontroller TTH2D3 Mikroprosesor Organisasi berkaitan dengan fungsi dan desain bagian-bagian sistem komputer digital yang menerima, menyimpan dan mengolah informasi.

Lebih terperinci

Hanif Fakhrurroja, MT

Hanif Fakhrurroja, MT Pertemuan 6 Organisasi Komputer CPU dan Sistem Bus Hanif Fakhrurroja, MT PIKSI GANESHA, 2013 Hanif Fakhrurroja @hanifoza hanifoza@gmail.com Agenda Pertemuan 6 1 CPU 2 Sistem Bus Pendahuluan Video CPU CPU

Lebih terperinci

MODUL PRAKTIKUM ORGANISASI SISTEM KOMPUTER

MODUL PRAKTIKUM ORGANISASI SISTEM KOMPUTER MODUL PRAKTIKUM ORGANISASI SISTEM KOMPUTER Versi 3.0 Tahun Penyusunan 2011 Tim Penyusun 1. Yuti Dewita Arimbi 2. Nurul Hidayati 3. Ulfie Hasanah 4. Stya Putra Pratama Laboratorium Teknik Informatika Jurusan

Lebih terperinci

R E G I S T E R. = Code Segment Register = Data Segment Register = Stack Segment Register = Extra Segment Register. 3.

R E G I S T E R. = Code Segment Register = Data Segment Register = Stack Segment Register = Extra Segment Register. 3. R E G I S T E R Register adalah sebagian kecil memori komputer yang dipakai untuk tempat penampungan data dengan ketentuan bahwa data yang terdapat dalam register dapat diproses dalam berbagai operasi

Lebih terperinci

Diktat Kuliah Instruksi dan Segmentasi

Diktat Kuliah Instruksi dan Segmentasi Mikroprosesor dan Antarmuka Diktat Kuliah Instruksi dan Segmentasi Nyoman Bogi Aditya Karna Sisfo IMTelkom bogi@imtelkom.ac.id http://bogi.blog.imtelkom.ac.id Institut Manajemen Telkom http://www.imtelkom.ac.id

Lebih terperinci

Sistem Komputer. Komputer terdiri dari CPU, Memory dan I/O (Arsitektur Von-Neumann) Ada tiga bus dalam sistem komputer

Sistem Komputer. Komputer terdiri dari CPU, Memory dan I/O (Arsitektur Von-Neumann) Ada tiga bus dalam sistem komputer ELEKTRONIKA DIGITAL TEORI ANTARMUKA Sistem Komputer Komputer terdiri dari CPU, Memory dan I/O (Arsitektur Von-Neumann) Komponen komputer dihubungkan oleh bus. Ada tiga bus dalam sistem komputer Alamat

Lebih terperinci

LAPORAN PRAKTIKUM ORGANISASI KOMPUTER & BAHASA ASSEMBLY PROGRAM OPERASI ARITMATIKA. Kelas : INF 2B Praktikum 1 Nama : Fernalia NIM : J3C212210

LAPORAN PRAKTIKUM ORGANISASI KOMPUTER & BAHASA ASSEMBLY PROGRAM OPERASI ARITMATIKA. Kelas : INF 2B Praktikum 1 Nama : Fernalia NIM : J3C212210 LAPORAN PRAKTIKUM ORGANISASI KOMPUTER & BAHASA ASSEMBLY PROGRAM OPERASI ARITMATIKA Kelas : INF 2B Praktikum 1 Nama : Fernalia NIM : J3C212210 PROGRAM KEAHLIAN MANAJEMEN INFORMATIKA DIREKTORAT PROGRAM DIPLOMA

Lebih terperinci

PENGERTIAN REGISTER. Arsitektur Mikroprosesor INTEL 8086 Tinjauan Umum

PENGERTIAN REGISTER. Arsitektur Mikroprosesor INTEL 8086 Tinjauan Umum PENGERTIAN REGISTER Dalam pemrograman dengan bahasa Assembly, mau tidak mau anda harus berhubungan dengan apa yang dinamakan sebagai Register. Lalu apakah yang dimaksudkan dengan register itu sebenarnya?.

Lebih terperinci

BAB II MIKROPROSESOR INTEL 8088

BAB II MIKROPROSESOR INTEL 8088 BAB II MIKROPROSESOR INTEL 8088 Tujuan Setelah mempelajari bab ini, mahasiswa mampu: a. Memahami konfigurasi pin 8088 b. Mengidentifikasi blok arsitektur internal 8088 c. Menjelaskan fungsi register yang

Lebih terperinci

TEORI MIKROPROSESOR 8088

TEORI MIKROPROSESOR 8088 TEORI MIKROPROSESOR 8088 I. MIKROPROSESOR 8088 Mikroprosesor 8088 mulai diperkenalkan oleh Intel Corporation pada tahun 1978. Mikroprosesor ini mengawali sejarah perkembangan mikroprosesor Intel selanjutnya,

Lebih terperinci

Memori Semikonduktor

Memori Semikonduktor Memori Semikonduktor Tiga jenis yang umum digunakan saat ini adalah: 1. Memori semi konduktor yang memakai teknologi LSI (Large-scale integration), adalah istilah teknis dalam bahasa Inggris di bidang

Lebih terperinci

STRUKTUR CPU. Arsitektur Komputer

STRUKTUR CPU. Arsitektur Komputer STRUKTUR CPU Arsitektur Komputer Tujuan Mengerti struktur dan fungsi CPU yaitu dapat melakukan Fetch instruksi, interpreter instruksi, Fetch data, eksekusi, dan menyimpan kembali. serta struktur dari register,

Lebih terperinci

Pertemuan 2 Organisasi Komputer II. Struktur & Fungsi CPU (I)

Pertemuan 2 Organisasi Komputer II. Struktur & Fungsi CPU (I) Pertemuan 2 Organisasi Komputer II Struktur & Fungsi CPU (I) 1 Menjelaskan tentang komponen utama CPU dan Fungsi CPU Membahas struktur dan fungsi internal prosesor, organisasi ALU, control unit dan register

Lebih terperinci

SOAL UAS SISTEM KOMPUTER Kelas XI RPL & TKJ

SOAL UAS SISTEM KOMPUTER Kelas XI RPL & TKJ SOAL UAS SISTEM KOMPUTER Kelas XI RPL & TKJ 1. Tempat penyimpanan primer yang bersifat mudah hilang (volatile) dikarenakan hilang saat listrik padam adalah... a. Random Access Memory b. Read Only Memory

Lebih terperinci

CENTRAL PROCESSING UNIT CPU

CENTRAL PROCESSING UNIT CPU CENTRAL PROCESSING UNIT CPU edywin 1 Central Processing Unit CPU terdiri dari : - Bagian data (Datapath) yang berisi register register untuk penyimpanan data sementara dan sebuah ALU untuk melaksanakan

Lebih terperinci

Struktur Fungsi CPU. Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 --

Struktur Fungsi CPU. Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 -- Struktur Fungsi CPU Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 -- This presentation is revised by @hazlindaaziz, STMIK, 2014 Main Material: Acknowledgement

Lebih terperinci

LAPORAN PRAKTIKUM ORGANISASI KOMPUTER & BAHASA ASSEMBLY PROGRAM POINTER OPERASI ARITMATIKA

LAPORAN PRAKTIKUM ORGANISASI KOMPUTER & BAHASA ASSEMBLY PROGRAM POINTER OPERASI ARITMATIKA LAPORAN PRAKTIKUM ORGANISASI KOMPUTER & BAHASA ASSEMBLY PROGRAM POINTER OPERASI ARITMATIKA Kelas : INF 2B Praktikum 1 Nama : Fernalia NIM : J3C212210 PROGRAM KEAHLIAN MANAJEMEN INFORMATIKA DIREKTORAT PROGRAM

Lebih terperinci

Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer

Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer SAP-2 Mohamad Dani (MHM) E-mail: mohamad.dani@gmail.com Hanya dipergunakan untuk kepentingan pengajaran di lingkungan Telkom

Lebih terperinci

BAB I TUGAS MATA KULIAH SISTEM MIKROPROSESOR DOSEN PEMBERI TUGAS : FATAH YASIN, ST, MT.

BAB I TUGAS MATA KULIAH SISTEM MIKROPROSESOR DOSEN PEMBERI TUGAS : FATAH YASIN, ST, MT. 1 BAB I TUGAS MATA KULIAH SISTEM MIKROPROSESOR DOSEN PEMBERI TUGAS : FATAH YASIN, ST, MT. A. Deskripsi Tugas 1. Jelaskan perbedaan mikroprosesor dan mikrokontroler. 2. Jelaskan mode-mode pengalamatan yang

Lebih terperinci

PENGANTAR KOMPUTER DAN TEKNOLOGI INFORMASI 1A

PENGANTAR KOMPUTER DAN TEKNOLOGI INFORMASI 1A PENGANTAR KOMPUTER DAN TEKNOLOGI INFORMASI 1A REPRESENTASI DATA ALUR PEMROSESAN DATA SISTEM BILANGAN TEORI BILANGAN KOVERSI BILANGAN OPERASI ARITMATIKA Representasi Data Data adalah sesuatu yang belum

Lebih terperinci

Pengertian dan Fungsi CPU

Pengertian dan Fungsi CPU Pengertian dan Fungsi CPU CPU, singkatan dari Central Processing Unit adalah perangkat keras komputer yang berfungsi untuk menerima, melaksanakan perintah dan mengolah data dari perangkat lunak. Prosesor

Lebih terperinci

Oleh : Agus Priyanto, M.Kom

Oleh : Agus Priyanto, M.Kom Struktur CPU Oleh : Agus Priyanto, M.Kom Tujuan Pembelajaran Setelah mengikuti kuliah ini, mahasiswa dapat menjelaskan tentang struktur CPU Setelah mengikuti kuliah ini, mahasiswa dapat menjelaskan tentang

Lebih terperinci

BAB 3 UNIT KONTROL. Universitas Gadjah Mada 1

BAB 3 UNIT KONTROL. Universitas Gadjah Mada 1 BAB 3 UNIT KONTROL Unit kontrol bertanggung jawab atas terbentuknya operasi yang sesuai dengan instruksi yang terdapat pada program. Eksekusi instruksi dilakukan satu persatu, dimulai dari awal program,

Lebih terperinci

Bahasa Rakitan By Okti Yudhanti Nur K REGISTER

Bahasa Rakitan By Okti Yudhanti Nur K REGISTER REGISTER PENGERTIAN REGISTER Dalam pemrograman dengan bahasa Assembly, mau tidak mau anda harus berhubungan dengan apa yang dinamakan sebagai Register. Lalu apakah yang dimaksudkan dengan register itu

Lebih terperinci

UJIAN AKHIR SEMESTER TAHUN AKADEMIK 2010/2011

UJIAN AKHIR SEMESTER TAHUN AKADEMIK 2010/2011 NIM NAMA KELAS DOSEN UJIAN AKHIR SEMESTER TAHUN AKADEMIK 2010/2011 TEAM MIKROPROSESOR DAN ANTARMUKA (SK2023) Tanggal Waktu 120 menit Sifat Ujian Closed book, No Calculator TTD Nilai A. Pilihan Ganda Pilihlah

Lebih terperinci

MICROPROCESSOR. Published by. imeldaflorensia91

MICROPROCESSOR. Published by. imeldaflorensia91 MICROPROCESSOR Arsitektur Komputer Microprosessor Mikroprosesor atau CPU adalah otak pengendali utama semua operasi dalam sistem komputer. Mikroprosesor mengambil instruksi biner dari memori, menerjemahkannya

Lebih terperinci

MODUL 1 SISTEM BILANGAN

MODUL 1 SISTEM BILANGAN 1 MODUL 1 SISTEM BILANGAN A. TEMA DAN TUJUAN KEGIATAN PEMBELAJARAN 1. Tema : Sistem Bilangan 2. Fokus Pembahasan Materi Pokok 3. Tujuan Kegiatan Pembelajaran B. URAIAN MATERI POKOK I. DEFINISI : 1. Teori

Lebih terperinci

PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Oky Dwi Nurhayati, ST, MT

PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Oky Dwi Nurhayati, ST, MT PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO Oky Dwi Nurhayati, ST, MT email: okydn@undip.ac.id 1 Central Processing Unit CPU terdiri dari : - Bagian data (Datapath) yang berisi register register

Lebih terperinci

Karakteristik Instruksi Mesin

Karakteristik Instruksi Mesin PERTEMUAN Karakteristik Instruksi Mesin Instruksi mesin (machine intruction) yang dieksekusi membentuk suatu operasi dan berbagai macam fungsi CPU. Kumpulan fungsi yang dapat dieksekusi CPU disebut set

Lebih terperinci

SISTEM KOMPUTER.

SISTEM KOMPUTER. SISTEM KOMPUTER Salahuddin, SST Email : salahuddin_ali@ymail.com salahuddin.ali00@gmail.comali00@gmail Web Site : www.salahuddinali.com ELEMEN FUNGSIONAL UTAMA SISTEM KOMPUTER. INTERFACE EXTERNAL UNIT

Lebih terperinci

Bagian 2 STRUKTUR CPU

Bagian 2 STRUKTUR CPU Bagian 2 STRUKTUR CPU 1. KOMPUTER SEBAGAI MESIN 6 LEVEL Bahasa tingkat tinggi Bahasa Rakitan Mesin Sistem Operasi Arsitektur Perangkat Instruksi Arsitektur Mikro Logika Digital Berikut akan dibahas contoh

Lebih terperinci

Diktat Kuliah - Pipeline

Diktat Kuliah - Pipeline Mikroprosesor dan Antarmuka Diktat Kuliah - Pipeline Nyoman Bogi Aditya Karna Sisfo IMTelkom bogi@imtelkom.ac.id http://bogi.blog.imtelkom.ac.id Institut Manajemen Telkom http://www.imtelkom.ac.id Proses

Lebih terperinci

Sistem Operasi. Struktur Sistem Komputer. Adhitya Nugraha. Fasilkom 10/6/2014

Sistem Operasi. Struktur Sistem Komputer. Adhitya Nugraha. Fasilkom 10/6/2014 Sistem Operasi Struktur Sistem Komputer Adhitya Nugraha 2014 adhitya@dsn.dinus.ac.id Fasilkom 10/6/2014 Objectives Mahasiswa mengetahui komponen-komponen yang membangun sebuah sistem komputer. Mahasiswa

Lebih terperinci

CPU PERKEMBANGAN ARSITEKTUR CPU. ( Central Processing Unit )

CPU PERKEMBANGAN ARSITEKTUR CPU. ( Central Processing Unit ) CPU ( Central Processing Unit ) PERKEMBANGAN ARSITEKTUR CPU CPU terdiri dari beberapa bagian yang berbeda yang saling berintegrasi dalam membentuk fungsinya secara bersamaan. Pada bagian ini akan dibahas

Lebih terperinci

STRUKTUR FUNGSI CPU. Menjelaskan tentang komponen utama CPU. Membahas struktur dan fungsi internal prosesor, organisasi ALU, control unit dan register

STRUKTUR FUNGSI CPU. Menjelaskan tentang komponen utama CPU. Membahas struktur dan fungsi internal prosesor, organisasi ALU, control unit dan register Organisasi Komputer STRUKTUR FUNGSI CPU 1 Tujuan Menjelaskan tentang komponen utama CPU dan Fungsi CPU Membahas struktur dan fungsi internal prosesor, organisasi ALU, control unit dan register Menjelaskan

Lebih terperinci

PERTEMUAN. 1. Organisasi Processor. 2. Organisasi Register

PERTEMUAN. 1. Organisasi Processor. 2. Organisasi Register PERTEMUAN. Organisasi Processor Hal-hal yang perlu dilakukan CPU adalah ::.. Fetch Instruction = mengambil instruksi 2. 2. Interpret Instruction = Menterjemahkan instruksi 3. 3. Fetch Data = mengambil

Lebih terperinci

Organisasi & Arsitektur Komputer

Organisasi & Arsitektur Komputer Organisasi & Arsitektur Komputer 1 Struktur CPU Eko Budi Setiawan, S.Kom., M.T. Eko Budi Setiawan mail@ekobudisetiawan.com www.ekobudisetiawan.com Teknik Informatika - UNIKOM 2013 Flash Back 2 Pengertian

Lebih terperinci

Organisasi Komputer. Candra Ahmadi, MT

Organisasi Komputer. Candra Ahmadi, MT Organisasi Komputer Candra Ahmadi, MT Tujuan Menjelaskan tentang komponen utama CPU dan Fungsi CPU Membahas struktur dan fungsi internal prosesor, organisasi ALU, control unit dan register Menjelaskan

Lebih terperinci

Mikroposesor-berbasis Sistem PC

Mikroposesor-berbasis Sistem PC Mikroposesor-berbasis Sistem PC Perkembangan µp Mikroprosesor pertama adalah intel 4004 yang dikenalkan tahun 1971, tetapi kegunaan mikroprosesor ini masih sangat terbatas, hanya dapat digunakan untuk

Lebih terperinci

Mikroposesor-berbasis Sistem PC. Sistem Komputer Universitas Gunadarma

Mikroposesor-berbasis Sistem PC. Sistem Komputer Universitas Gunadarma Mikroposesor-berbasis Sistem PC Sistem Komputer Universitas Gunadarma Perkembangan µp Mikroprosesor pertama adalah intel 4004 yang dikenalkan tahun 1971, tetapi kegunaan mikroprosesor ini masih sangat

Lebih terperinci

Konsep Mikroprogramming. Sistem Komputer Universitas Gunadarma

Konsep Mikroprogramming. Sistem Komputer Universitas Gunadarma Konsep Mikroprogramming Sistem Komputer Universitas Gunadarma Struktur Register µp Model programming 8086 sampai Pentium Pro menggunakan program visible karena registerregisternya digunakan langsung dalam

Lebih terperinci

SISTEM KERJA MIKROPROSESOR

SISTEM KERJA MIKROPROSESOR 1 SISTEM KERJA MIKROPROSESOR Percobaan I Tujuan Percobaan 1. Mempelajari hubungan bahasa tingkat rendah dengan arsitektur mikroprosesor. 2. Memahami konsep pemograman modular dan pengolahan data dalam

Lebih terperinci

Eksplorasi Prosesor 8086 Dengan Program DEBUG

Eksplorasi Prosesor 8086 Dengan Program DEBUG dapat digunakan untuk mengeksplorasi keluarga prosesor 8086 termasuk PENTIUM pada PC telah disertakan setiapkali user melakukan instalasi WINDOWS Untuk menjalankan DEBUG, click Start-Run, kemudian ketik

Lebih terperinci

PENGANTAR ORGANISASI DAN ARSITEKTUR KOMPUTER CENTRAL PROCESSING UNIT

PENGANTAR ORGANISASI DAN ARSITEKTUR KOMPUTER CENTRAL PROCESSING UNIT PENGANTAR ORGANISASI DAN ARSITEKTUR KOMPUTER CENTRAL PROCESSING UNIT ARSITEKTUR VON NEUMANN DATA BUS DATA BUS INPUT OUTPUT (I/O) UNIT CENTRAL PROCESSING UNIT ADRESS BUS MAIN MEMORY UNIT CONTROL BUS CONTROL

Lebih terperinci

Struktur CPU 3/23/2011

Struktur CPU 3/23/2011 Central Processing Unit Merupakan komponen terpenting dari sistem komputer Komponen pengolah data berdasarkan instruksi yang diberikan kepadanya Dalam mewujudkan fungsi dan tugasnya, CPU tersusun atas

Lebih terperinci

3. ALU. Tugas utama adalah melakukan semua perhitungan aritmatika dan melakukan keputusan dari suatu operasi logika.

3. ALU. Tugas utama adalah melakukan semua perhitungan aritmatika dan melakukan keputusan dari suatu operasi logika. SRI SUPATMI,S.KOM 3. ALU Tugas utama adalah melakukan semua perhitungan aritmatika dan melakukan keputusan dari suatu operasi logika. 4. I/O Interconection Input-Output (/O) Interconection merupakan sistem

Lebih terperinci

Sistem Mikroprosessor

Sistem Mikroprosessor Sistem Mikroprosessor Agung Prasetyo,ST. Jurusan Teknik Elektro Akademi Teknologi Warga Surakarta Sistem yang berbasis microprosessor: Juga biasa di sebut microcomputer adalah suatu rangkaian digital yang

Lebih terperinci

DCH1B3 Konfigurasi Perangkat Keras Komputer SAP-2

DCH1B3 Konfigurasi Perangkat Keras Komputer SAP-2 DCH1B3 Konfigurasi Perangkat Keras Komputer SAP-2 1 11/20/2016 1 Setelah mengikuti perkuliahan ini mahasiswa dapat: Memahami Arsitektur SAP-2. Menjelaskan cara kerja SAP-2. Menjelaskan instruksi-instruksi

Lebih terperinci

Mikroprosessor & Antarmuka

Mikroprosessor & Antarmuka Mikroprosessor & Antarmuka } Sinyal input } Fungsi: meminta pelayanan prosesor } Kerja gabungan antara h/w dan s/w dikarenakan up untuk kaki INTR dan NMI } NMI = non maskable interrupt à tidak bisa dihalangi

Lebih terperinci

Struktur dan Fungsi CPU. Ptputraastawa.wordpress.com

Struktur dan Fungsi CPU. Ptputraastawa.wordpress.com Struktur dan Fungsi CPU ptputraastawa@gmail.com Ptputraastawa.wordpress.com 1 Tujuan Menjelaskan tentang komponen utama CPU dan Fungsi CPU Membahas struktur dan fungsi internal prosesor, organisasi ALU,

Lebih terperinci

Hal-hal yang perlu dilakukan CPU adalah : 1. Fetch Instruction = mengambil instruksi 2. Interpret Instruction = Menterjemahkan instruksi 3.

Hal-hal yang perlu dilakukan CPU adalah : 1. Fetch Instruction = mengambil instruksi 2. Interpret Instruction = Menterjemahkan instruksi 3. PERTEMUAN 1. Organisasi Processor #1 Hal-hal yang perlu dilakukan CPU adalah : 1. Fetch Instruction = mengambil instruksi 2. Interpret Instruction = Menterjemahkan instruksi 3. Fetch Data = mengambil data

Lebih terperinci

Bahasa Rakitan PENGERTIAN REGISTER

Bahasa Rakitan PENGERTIAN REGISTER PENGERTIAN REGISTER Dalam pemrograman dengan bahasa Assembly, mau tidak mau anda harus berhubungan dengan apa yang dinamakan sebagai register. Lalu apakah yang dimaksud dengan register itu sebenarnya?

Lebih terperinci

Oleh: 1. Singgih Gunawan Setyadi ( ) 2. Handung Kusjayanto ( ) 3. Wahyu Isnawan ( )

Oleh: 1. Singgih Gunawan Setyadi ( ) 2. Handung Kusjayanto ( ) 3. Wahyu Isnawan ( ) Oleh: 1. Singgih Gunawan Setyadi (10222059) 2. Handung Kusjayanto (11111005) 3. Wahyu Isnawan (11111049) CPU Merupakan komponen terpenting dari sistem komputer sebagai pengolah data berdasarkan instruksi

Lebih terperinci

BAB V SISTEM PENGOLAHAN DATA KOMPUTER (Arsitektur Komputer) "Pengantar Teknologi Informasi" 1

BAB V SISTEM PENGOLAHAN DATA KOMPUTER (Arsitektur Komputer) Pengantar Teknologi Informasi 1 BAB V SISTEM PENGOLAHAN DATA KOMPUTER (Arsitektur Komputer) "Pengantar Teknologi Informasi" Abstraksi Sistem Komputer Secara abstrak level sebuah sistem komputer modern dari level rendah sampai level tertinggi

Lebih terperinci

7.1 Pendahuluan. 7.2 Central Processing Unit (CPU)

7.1 Pendahuluan. 7.2 Central Processing Unit (CPU) Bab 7 Prosesor Dan Memori 7.1 Pendahuluan Alat pemroses adalah alat dimana instruksi-instruksi program diproses untuk mengolah data yang sudah dimasukkan melalui alat input dan hasilnya akan ditampilkan

Lebih terperinci

Pertemuan ke - 5 Struktur CPU

Pertemuan ke - 5 Struktur CPU Pertemuan ke - 5 Struktur CPU Riyanto Sigit, ST. Nur Rosyid, S.kom Setiawardhana, ST Hero Yudo M, ST Politeknik Elektronika Negeri Surabaya Tujuan Menjelaskan tentang komponen utama CPU dan Fungsi CPU

Lebih terperinci

Simple As Possible (SAP) - 2. Abdul Syukur

Simple As Possible (SAP) - 2. Abdul Syukur Simple As Possible (SAP) - 2 Abdul Syukur abdulsyukur@eng.uir.ac.id http://skurlinux.blogspot.com 053740514 Arsitektur Komputer SAP-2 Persamaan dengan SAP-1 : Sama-sama komputer bit. Kesamaan ini dapat

Lebih terperinci

IMPLEMENTASI PENGISIAN REGISITER DATA DAN OPERASI ARITMATIKA MENGGUNAKAN PROGRAM COMMAND PROMPT, BAHASA ASSEMBLER

IMPLEMENTASI PENGISIAN REGISITER DATA DAN OPERASI ARITMATIKA MENGGUNAKAN PROGRAM COMMAND PROMPT, BAHASA ASSEMBLER IMPLEMENTASI PENGISIAN REGISITER DATA DAN OPERASI ARITMATIKA MENGGUNAKAN PROGRAM COMMAND PROMPT, BAHASA ASSEMBLER Hambali Program Studi Sistem Informasi, STMIK Logika Medan email: hambali.8645@yahoo.com

Lebih terperinci

CENTRAL PROCESSING UNIT (CPU) Sebuah mesin tipe von neumann

CENTRAL PROCESSING UNIT (CPU) Sebuah mesin tipe von neumann CENTRL PROCESSING UNIT (CPU) rsitektur dasar mesin tipe von neumann menjadi kerangka referensi pada komputer digital umum (general-purpose) modern. 3 bagian fundamental tersebut adalah: Data bus Data bus

Lebih terperinci

Kumpulan instruksi lengkap yang dimengerti

Kumpulan instruksi lengkap yang dimengerti Set Instruksi: 1 Set instruksi? Kumpulan instruksi lengkap yang dimengerti oleh CPU Operasi dari CPU ditentukan oleh instruksiinstruksi yang dilaksanakan atau dijalankannya. Instruksi ini sering disebut

Lebih terperinci

Dalam bahasan instruksi telah dipahami cara bekerjanya ALU, register, dan Memori dalam mengeksekusi sebuah instruksi.

Dalam bahasan instruksi telah dipahami cara bekerjanya ALU, register, dan Memori dalam mengeksekusi sebuah instruksi. Mata Kuliah : Organisasi Komputer SKS : 2 Prodi : Teknik Informatika (S1) Pertemuan : X-XII Topik : SIRKIT CPU-RAM-ROM Pengampu : Team RANGKAIAN/SIRKIT CPU-RAM-ROM Dalam bahasan instruksi telah dipahami

Lebih terperinci

CENTRAL PROCESSING UNIT (CPU)

CENTRAL PROCESSING UNIT (CPU) CENTRL PROCESSING UNIT (CPU) rsitektur dasar mesin tipe von neumann menjadi kerangka referensi pada komputer digital umum (general-purpose) modern. 3 bagian fundamental tersebut adalah: Data bus Data bus

Lebih terperinci

Soal Komunikasi Data Kelas XI TKJ

Soal Komunikasi Data Kelas XI TKJ Soal Komunikasi Data Kelas XI TKJ PAKET A 1. Tempat penyimpanan primer yang bersifat mudah hilang (volatile) dikarenakan hilang saat listrik padam adalah... a. Random Access Memory b. Read Only Memory

Lebih terperinci

ARSITEKTUR KOMPUTER SET INSTRUKSI

ARSITEKTUR KOMPUTER SET INSTRUKSI LOGO ASSALAMU ALAIKUM ARSITEKTUR KOMPUTER SET INSTRUKSI Disajikan Oleh : RAHMAD KURNIAWAN, S.T., M.I.T. TEKNIK INFORMATIKA UIN SUSKA RIAU Karakteristik dan Fungsi Set Instruksi Operasi dari CPU ditentukan

Lebih terperinci

TUGAS MAKALAH STRUKTUR dan FUNGSI CPU GURU PEMBIMBING: IVAN ARIVANDI. Oleh: NOVY PUSPITA WARDANY

TUGAS MAKALAH STRUKTUR dan FUNGSI CPU GURU PEMBIMBING: IVAN ARIVANDI. Oleh: NOVY PUSPITA WARDANY TUGAS MAKALAH STRUKTUR dan FUNGSI CPU GURU PEMBIMBING: IVAN ARIVANDI Oleh: NOVY PUSPITA WARDANY PROGRAM STUDI TEKNIK KOMPUTER JARINGAN SMK N 1 BAURENO BOJONEGORO 2016 KATA PENGANTAR Segala puji bagi allah

Lebih terperinci

ARSITEKTUR MIKROPROSESOR Z80. Yoyo somantri Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia

ARSITEKTUR MIKROPROSESOR Z80. Yoyo somantri Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia ARSITEKTUR MIKROPROSESOR Z80 Yoyo somantri Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia Pendahuluan Pada bab ini akan dibahas tentang tujuan perkuliahan, arsitektur mikroprosesor

Lebih terperinci

Gambar 1.1. Diagram blok mikrokontroller 8051

Gambar 1.1. Diagram blok mikrokontroller 8051 1.1. Organisasi Memori Semua divais 8051 mempunyai ruang alamat yang terpisah untuk memori program dan memori data, seperti yang ditunjukkan pada gambar1.1. dan gambar 1.2. Pemisahan secara logika dari

Lebih terperinci

MODUL I PENGENALAN ASSEMBLY

MODUL I PENGENALAN ASSEMBLY MODUL I PENGENALAN ASSEMBLY Apakah bahasa assembly? Bahasa assembly adalah bahasa pemrograman dengan korespondensi satu-satu antara perintahperintah/pernyataannya dan bahasa mesin komputer. Bahasa assembly

Lebih terperinci

Arsitektur Set Instruksi. Abdul Syukur

Arsitektur Set Instruksi. Abdul Syukur Arsitektur Set Instruksi Abdul Syukur abdulsyukur@eng.uir.ac.id http://skurlinux.blogspot.com 085374051884 Tujuan Memahami representasi set instruksi, dan jenis-jenis format instruksi. Mengetahui jenis-jenis

Lebih terperinci

Set Instruksi. Set Instruksi. Set Instruksi adalah kumpulan

Set Instruksi. Set Instruksi. Set Instruksi adalah kumpulan Bab 10 Disusun Oleh : Rini Agustina, S.Kom, M.Pd Definisi: lengkap instruksi yang dapat adalah kumpulan dimengerti CPU Sifat2: 1. Merupakan Kode Mesin 2. Dinyatakan dalam Biner 3.Biasanya digunakan dalam

Lebih terperinci

Pendahuluan BAB I PENDAHULUAN

Pendahuluan BAB I PENDAHULUAN Pendahuluan BAB I PENDAHULUAN 1.1. Definisi Komputer Komputer merupakan mesin elektronik yang memiliki kemampuan melakukan perhitungan-perhitungan yang rumit secara cepat terhadap data-data menggunakan

Lebih terperinci

SISTEM BILANGAN I. DEFINISI. II. Teori Bilangan

SISTEM BILANGAN I. DEFINISI. II. Teori Bilangan SISTEM BILANGAN I. DEFINISI System bilangan (number system) adalah suatu cara untuk mewakili besaran dari suatu item fisik. Sistem bilanan yang banyak dipergunakan oleh manusia adalah system biilangan

Lebih terperinci

Set Instruksi & Mode Pengalamatan. Team Dosen Telkom University 2016

Set Instruksi & Mode Pengalamatan. Team Dosen Telkom University 2016 Set Instruksi & Mode Pengalamatan Team Dosen Telkom University 2016 Karakteristik Instruksi Mesin Set intruksi adalah kumpulan lengkap dari instruksi yang dapat dieksekusi oleh CPU Set instruksi adalah

Lebih terperinci

JAWABAN ORGANISASI KOMPUTER 7 Agustus 2004

JAWABAN ORGANISASI KOMPUTER 7 Agustus 2004 JAWABAN ORGANISASI KOMPUTER 7 Agustus 2004 1. Jelaskan maksud dari konsep Stored Program Computer serta sebutkan unit-unit yang harus ada serta fungsinya sampai pada level register. Memor utama menyimpan

Lebih terperinci

MIKROKONTROLER AT89S52

MIKROKONTROLER AT89S52 MIKROKONTROLER AT89S52 Mikrokontroler adalah mikroprosessor yang dirancang khusus untuk aplikasi kontrol, dan dilengkapi dengan ROM, RAM dan fasilitas I/O pada satu chip. AT89S52 adalah salah satu anggota

Lebih terperinci

Organisasi Komputer & Organisiasi Prosesor

Organisasi Komputer & Organisiasi Prosesor Organisasi Komputer & Organisiasi Prosesor Organisasi Sistem Komputer Priyanto E-mail : priyanto@uny.ac.id Mobile: 0811282609 Program Studi Pendidikan Teknik Informatika Jurusan Pendidikan Teknik Elektronika

Lebih terperinci

10. Konsep Operasional Prosessor dan Memori

10. Konsep Operasional Prosessor dan Memori 10. Konsep Operasional Prosessor dan Memori 10.1. Hubungan antara prosessor dan memori Pada modul ini, akan dipelajari prinsip dasar dari hubungan antara prosessor dan memori. Dimulai dengan lokasi memori

Lebih terperinci

LAPORAN PRAKTIKUM. Praktek Mikroprosesor 1 Job Sheet 2

LAPORAN PRAKTIKUM. Praktek Mikroprosesor 1 Job Sheet 2 LAPORAN PRAKTIKUM Instruksi Aritmatika dan Operasi Logika Praktek Mikroprosesor 1 Job Sheet 2 Nama : DENNY SETIAWAN NIM : 3201311036 Kelas : V B Kelompok : 1 Anggota Kelompok : Denny Setiawan Ranto susilo

Lebih terperinci

MAKALAH REGISTER. Disusun Untuk Memenuhi Tugas Pada Semester 3 Jurusan D3 Teknik Elektro Dengan Mata Kuliah Sistem Digital & Mikroprosessor

MAKALAH REGISTER. Disusun Untuk Memenuhi Tugas Pada Semester 3 Jurusan D3 Teknik Elektro Dengan Mata Kuliah Sistem Digital & Mikroprosessor MAKALAH REGISTER Disusun Untuk Memenuhi Tugas Pada Semester 3 Jurusan D3 Teknik Elektro Dengan Mata Kuliah Sistem Digital & Mikroprosessor Disusun Oleh : Nisvi Fatimah 2213030006 INSTITUT TEKNOLOGI SEPULUH

Lebih terperinci

ORGANISASI KOMPUTER DASAR

ORGANISASI KOMPUTER DASAR ORGANISASI KOMPUTER DASAR A. KOMPONEN SISTEM Sebuah komputer moderen/digital dengan program yang tersimpan di dalamnya merupakan sebuah system yang memanipulasi dan memproses informasi menurut kumpulan

Lebih terperinci

Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer

Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer SAP-3 Mohamad Dani (MHM) E-mail: mohamad.dani@gmail.com Hanya dipergunakan untuk kepentingan pengajaran di lingkungan Telkom

Lebih terperinci

ORGANISASI SISTEM KOMPUTER & ORGANISASI CPU Oleh: Priyanto

ORGANISASI SISTEM KOMPUTER & ORGANISASI CPU Oleh: Priyanto ORGANISASI SISTEM KOMPUTER & ORGANISASI CPU Oleh: Priyanto Komputer Digital adalah mesin elektronik yang dapat melakukan operasi- operasi aritmatik dan lojik. Komputer digital terdiri dari sistem interkoneksi

Lebih terperinci

MAKALAH MODE DAN FORMAT PENGALAMATAN SET INSTRUKSI. Nama : Annisa Christyanti Kelas : XI TJA 3 NIS :

MAKALAH MODE DAN FORMAT PENGALAMATAN SET INSTRUKSI. Nama : Annisa Christyanti Kelas : XI TJA 3 NIS : MAKALAH MODE DAN FORMAT PENGALAMATAN SET INSTRUKSI Nama : Annisa Christyanti Kelas : XI TJA 3 NIS : 3103113017 TEKNIK JARINGAN AKSES SMK TELKOM SANDHY PUTRA PURWOKERTO TAHUN AJARAN 2014/2015 Mode dan Format

Lebih terperinci

Pendahuluan Mikrokontroler 8051

Pendahuluan Mikrokontroler 8051 Pendahuluan Mikrokontroler 8051 Pokok Bahasan: 1. Mikrokontroler 8051 Arsitektur (Architecture) Timers/Counters Interrupts Komunikasi Serial (Serial Communication) Tujuan Belajar: Setelah mempelajari dalam

Lebih terperinci

Pertemuan ke 7 Mode Pengalamatan. Computer Organization Eko Budi Setiawan

Pertemuan ke 7 Mode Pengalamatan. Computer Organization Eko Budi Setiawan Pertemuan ke 7 Mode Pengalamatan Computer Organization Eko Budi Setiawan Mode Pengalamatan Mengatasi keterbatasan format instruksi Dapat mereferensi lokasi memori yang besar Mode pengalamatan yang mampu

Lebih terperinci

Sistem Komputer. Tiga komponen utama : CPU

Sistem Komputer. Tiga komponen utama : CPU PERTEMUAN Tiga komponen utama : CPU Sistem Komputer Memori (primer dan sekunder) Peralatan masukan/keluaran (I/O devices) seperti printer, monitor, keyboard, mouse, dan modem 1 Modul I/O Merupakan peralatan

Lebih terperinci

Interfacing µp Intel 8088 dengan I/O

Interfacing µp Intel 8088 dengan I/O Interfacing µp Intel 8088 dengan I/O Setiap perangkat Input maupun Output akan memiliki nomor tersendiri (unik) untuk menandakan perangkat mana yang akan diakses oleh µp 8088. Nomor ini disebut nomor port.

Lebih terperinci

Set Instruksi: Set instruksi?

Set Instruksi: Set instruksi? Set Instruksi: 1 Set instruksi? Operasi dari CPU ditentukan oleh instruksiinstruksi yang dilaksanakan atau dijalankannya. Instruksi ini sering disebut sebagai instruksi mesin (machine instructions) atau

Lebih terperinci