47
DIKTAT MIKROPROSESSOR - I Disusun Oleh : Aqwam Rosadi Kardian. SKom., . 2009 STMIK JAKARTA STI&K 2009

DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

  • Upload
    danganh

  • View
    223

  • Download
    3

Embed Size (px)

Citation preview

Page 1: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

DIKTAT

MIKROPROSESSOR - IDisusun Oleh : Aqwam Rosadi Kardian. SKom., MM .

2009

STMIK JAKARTA STI&K2009

Page 2: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 2

DIKTATMIKROPROSESSOR I

Disusun oleh :AQWAM ROSADI K. SKom., MM.

JAKARTA2009

Page 3: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 3

Bab – ITERMINOLOGI

Istilah-istilah yang sering digunakan dalam dunia komputer :1. Sistem bilangan adalah metode yg menyepadankan suatu besaran dengan suatu

simbol tertentu. Contoh: kita biasanya menggunakan sistem bilangan desimal (10). Iniberarti kita memiliki 10 buah simbol untuk menyatakan 10 buah besaran, yaitu :‘0’, ‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’, ‘8’, ‘9’.

2. Sistem bilangan biner (Binary) menggunakan 2 (dua) buah simbol untukmerepresentasikan 2 besaran, yaitu : ‘0’ dan ‘1’.

3. Suatu simbol biner sering disebut sebagai bit (binary digit)4. Sistem bilangan Hexadecimal menggunakan 16 (enambelas) buah simbol untuk

merepresentasikan 16 besaran, yaitu : ‘0’, ‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’, ‘8’, ‘9’, ‘A’,‘B’, ‘C’, ‘D’, ‘E’, ‘F’.

5. Kesatuan 4 simbol biner yg merepresentasikan suatu informasi disebut dgn nibble6. Kesatuan 8 simbol biner yg merepresentasikan suatu informasi disebut dgn byte7. Kesatuan 16 simbol biner yg merepresentasikan suatu informasi disebut dgn word8. Dunia digital menggunakan 2 buah tegangan (0 volt dan +5 volt). Karena hanya ada 2

besaran, kedua besaran tersebut akan direpresentasikan dengan sistem bilangan biner(‘0’ dan ‘1’)

9. Transistor adalah komponen aktif yang dapat digunakan sebagai penguat sinyal(dalam dunia analog) atau sebagai saklar (dalam dunia digital). Tergantung dari bahandan media pembuatannya, transistor digital dibedakan menjadi nMOS (negativeMetal Oxide Semiconductor), CMOS (Complementary MOS), dan TTL (Transistor-Transistor Logic)

10. Gerbang logika (Logic Gate) adalah komponen dasar dari rangkaian digitalyang dibentuk dari beberapa transistor digital untuk membentuk suatu fungsitertentu (contoh : AND Gate, OR Gate, INVERTER)

11. Integrated Circuit (IC) adalah gabungan komponen-komponen yang menjalankansuatu fungsi khusus dan dikemas dalam satu paket (packaging).Ada beberapa jenis IC dilihat dari komponen yang digabungkan, yaitu :

a. IC analog: integrasi komponen analog (contoh : Operational Amplifier)b. IC hybrid: integrasi miniatur komponen analog (contoh : Integrated

Amplifier)c. IC digital: integrasi komponen digital ke dalam plat MOSd. ASIC (Application Specific IC): integrasi komponen yang dirancang untuk

melakukan suatu fungsi khusus (contoh : Prosesor pada HandPhone)12. Very Large Scale Integration (VLSI) adalah IC digital yang memiliki jumlah

transistor digital lebih dari 100.000 buah (contoh : Microprocessor)13. Microprocessor (atau CPU = Central Processing Unit) adalah sebuah VLSI yang

didesain khusus untuk memproses/mengerjakan tugas-tugas standar. UP adalah otakdari komputer karena dialah yang bertugas menghitung dan mengontrol peralatan laindisekitarnya (contoh : Zilog dengan Z80, Intel dengan PentiumTM)

14. Microcontroller adalah sebuah Microprocessor dengan fasilitas memori didalamnya

Page 4: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 4

(yang dapat diprogram oleh user) untuk mengerjakan tugas tertentu yang dikehendaki

Page 5: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 5

oleh pemrogramnya dan terkadang juga diperlengkapi dengan port Input/Output(contoh : Zilog dengan Z8, Intel dengan 8051)

15. Arithmetic and Logic Unit (ALU) adalah bagian dari Microprocessor yang bertugasuntuk melakukan proses aritmetika (penjumlahan dan pengurangan) dan proses logika(AND, OR, dan Shift) pada data yang melaluinya

16. Flip-Flop adalah rangkaian digital yg dapat digunakan untuk menyimpan suatu nilaibiner (‘0’ atau ‘1’). Karena kemampuannya untuk menyimpan nilai biner, Flip-Flopmenjadi komponen dasar memori (contoh : Data Flip-Flop)

17. Memori adalah serangkaian Flip-Flop yg dikombinasikan untuk menyimpan suatuinformasi.

18. Register adalah memori yg diimplementasikan di dalam microprocessor sehinggamemiliki kecepatan yg sama dgn microprocessor.

19. Random Access Memory (RAM) adalah tempat penyimpanan sementara bagi datadan code (program) untuk dapat digunakan oleh Microprocessor sebagai scratch book(contoh : SDRAM, DDR). Karena bersifat sebagai scratch book, maka data harusdapat ditulis, dibaca, dan kemudian ditulis kembali ke dalam RAM. Data di dalamRAM akan hilang jika powernya dimatikan (volatile)

20. Read Only Memory (ROM) adalah tipe memori yang bersifat baca saja dimana dataditulis sekali ke dalamnya dan untuk seterusnya hanya dibaca saja. ROM padaumumnya digunakan sebagai tempat penyimpanan program atau pustaka (contoh :EEPROM untuk bootstrap loader). Perbedaan dengan RAM adalah jika power supplyke ROM diputuskan isinya tidak akan hilang.

21. Control Unit (CU) adalah bagian dari Microprocessor yang bertugas untukmengontrol kerja dari bagian-bagian khusus Microprocessor di atas (ALU, Register)

22. Peripheral adalah adalah semua perangkat yang digunakan untuk menambahutilitas/kegunaan komputer (contoh : printer, plotter, mouse, joystick, gamepad)

23. Input/Output (I/O) adalah saluran transmisi yg digunakan oleh komputer untukberinteraksi dgn peripheral (contoh : ISA (IBM Standard Architecture), EISA(Enhanced ISA), PCI, Parallel Port)

24. Bus adalah jalur pengiriman sinyal informasi antar komponen. Dilihat dari jenisinformasi yang dibawa, terdapat bus data, bus address, dan bus control.Jika dilihat dari lokasinya ada bus internal dan bus eksternal.

25. HardDisk adalah tempat penyimpanan sekunder untuk penyimpanan data danprogram dalam jumlah/ukuran yang besar

26. x86 adalah sebutan untuk keluarga mikroprosesor 8086, 80286, 80386, 80486,Pentium, Celeron, Pentium II, Pentium IV, K5, K6, K6/2, K6/3, Athlon, Duron,Cx5x86, Cx6x86, MII

27. Variable Length Instruction (VLI) adalah set instruksi dimana lebar instruksibervariasi tergantung kebutuhan, ada yg hanya 1 instruksi = 1 byte dan ada yg 1instruksi mencapai 4 byte. Contoh : Instruksi pada uP 8088 s.d. Pentium IV

28. Fixed Length Instruction (FLI) adalah set instruksi dimana lebar semua instruksiadalah sama, misalnya 4 byte.Contoh : uP Alpha dari DEC (Digital Equipment Computer)dan PowerPC pada Apple Macintosh dari Motorola

Page 6: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 6

29. Complex Instruction Set Computer (CISC) adalah desain uP dimana instruksi yang dapatdijalankan oleh uP tersebut sangat banyak dan kompleks (mencapai 200 instruksi). Contoh :uP 8088 s.d Pentium IV

30. Reduced Instruction Set Computer (RISC) adalah desain uP dimana instruksi yang dapatdijalankan oleh uP tersebut sangat terbatas namun sederhana (kurang dari 50 instruksi).Contoh : Sharp SH3 pada Palmtop HP320LX

31. Pipeline adalah suatu metode yg mengeksploitasi setiap komponen di dalam uP untuk selalubekerja setiap saat. Contoh : pada x86, pipeline mulai diterapkan sejak80386DX

32. Stalled adalah suatu kondisi dimana suatu instruksi baru tidak dapat dijemputsehingga penjemputannya terpaksa ditunda (delayed) sampai semua kondisimendukung.

33. Hazard adalah hal-hal yang menyebabkan stall terjadi.34. Structural Hazard adalah yang menyebabkan stall terjadi karena adanya

keterbatasan resource sistem35. Data Hazard adalah yang menyebabkan stall terjadi karena adanya ketergantungan data

antar instruksi yg berdekatan36. Control Hazard adalah yang menyebabkan stall terjadi karena eksekusi instruksi kontrol37. Paralelism adalah instruksi-instruksi yang tidak memiliki ketergantungan satu sama lainnya

sehingga dapat dikerjakan pada saat yg bersamaan38. Instruction Scheduling adalah teknik untuk meminimisasi terjadinya Data Hazard dengan

cara menyusun ulang semua instruksi yang akan dikerjakan39. Superscalar adalah mesin yang mengerjakan beberapa instruksi sekaligus dimana instruksi-

instruksi yang akan dikerjakan dipilih oleh hardware khusus secara dinamis40. Very Long Instruction Wide (VLIW) adalah mesin yang mengerjakan beberapa

instruksi sekaligus dimana instruksi-instruksi yang akan dikerjakan dipilih olehsoftware secara statis

41. Million Instruction Per Second (MIPS) adalah satuan kecepatan uP yg menunjukkan berapajuta instruksi yg bisa dikerjakan oleh uP tsb dalam sedetiknya. Standar 1 MIPS adalah uP VAX(tahun 1970). Satuan lainnya adalah MOPS (Million Operation Per Second), MFLOPS(Million Floating Point Operation Per Second)

42. Cycles Per Instruction (CPI) adalah ukuran kecepatan pengerjaan instruksi. Yangdiukur adalah jumlah rata-rata cycles yang digunakan untuk mengerjakan 1 instruksi.

43. Temporal locality adalah suatu metode yg menganggap : jika suatu data sedang diakses,maka kemungkinan besar data selanjutnya yg akan diakses adalah data yg pernah diaksessebelumnya (berdasarkan history)

44. Spatial locality adalah suatu metode yg menganggap : jika suatu data sedang diakses, makakemungkinan besar data selanjutnya yg akan diakses adalah data yg letaknya berdekatan(berdasarkan space)

45. Predict-taken dan Predict-not-taken adalah suatu metode untuk memprediksi apakahsuatu instruksi jump akan dilakukan (taken) atau tidak (not-taken).

46. Tomasulo algorithm adalah metode pengembangan (penggabungan) antara metodePredict-taken dan Predict-not-taken.

Page 7: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 7

Bab-IIUsing DEBUG

Debug adalah suatu program kecil yang telah ada sejak MS-DOS versi 3.0 dikeluarkan. Sampaisekarangpun program Debug tetap disertakan pada saat anda menginstall MS Windows.Program ini digunakan untuk melihat isi suatu blok memori (view), mengubahnya (edit), danmenjalankan (run) instruksi-instruksi yang ada di blok tersebut.

Cara mengaktifkan :1. Cara pertama : Di lingkungan Windows, klik ‘Start’ dan kemudian pilih ‘Run’. Dariwindow ‘Run’ ketikkan ‘Debug’ dan klik tombol ‘OK’.

2. Cara kedua : Di lingkungan DOS, pindahlah ke subdirectory yang berisi instruksi-instruksi DOS. Jika Windows terinstall, pindahlah ke C:\Windows\Command, dankemudian ketik ‘Debug’ dan tekan tombol ‘Enter’.

Salah satu dari kedua cara tersebut akan memanggil program Debug denganmenampilkan cursor berbentuk strip (-)

Page 8: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 8

C:\>Debug

Command pada DEBUGDisini Debug menanti perintah (command) dari kita

command arti keterangana assemble menulis instruksi-instruksi yang akan dijalankan ke memoriu unassemble melihat instruksi-instruksi yg ada di memorid dump melihat isi dari memori (128 bytes ditampilkan)f fill mengisi secara langsung suatu blok memori

t trace menjalankan instruksi-instruksi yang ada di memoriinstruction-by-instruction (1 ‘t’ menjalankan 1 instruksi)

g go menjalankan semua instruksi yg ada di memorin name memberikan nama file yg akan di-edit atau di-save

l load Load suatu file ke memori (nama file telah didefinisikanterlebih dahulu dengan command ‘n’)

w write menulis isi memori ke filer register menampilkan isi semua registerrxx register xx mengubah isi suatu register xx (contoh : rax, rip, rss)

Page 9: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 1

Bab-IIIORGANISASI KOMPUTER

Sistem mikroprosesor bekerja pada 2 level tegangan, yaitu 0 Volt dan +5 Volt.Oleh karenanya kita dapat mempergunakan sistem bilangan Biner (Binary)untuk merepresentasikan kedua level tegangan tersebut dengan simbol ‘0’dan simbol ‘1’. Sistem yang hanya mengenal 2 besaran, seperti halnyamikroprosesor, disebut sistem digital. Sementara sistem yang mengenaljumlah besaran yang sangat banyak (bahkan mencapai tak berhingga) disebutsistem analog.

Pada umumnya, diluar sistem mikroprosesor, digunakan sistem analog. Olehkarena adanya perbedaan ini, sebelum mikroprosesor dapat mengolah datadari luar sistemnya, data tersebut harus dikonversi terlebih dahulu ke sistemdigital. Pengubahan ini dilakukan oleh blok Input dan Output.

Sinyal I sinyal sinyalOU sinyal

analog N biner MICROPROCESSOR binerPUT

T analogPUT

Control Unit

Fungsi dari masing-masing bagian :

1. Blok Input memiliki 2 fungsi yaitu (1) mengkonversi besaran yg berlaku diluar sistem P menjadi besaran biner, dan (2) menyimpan informasi bineruntuk sementara waktu sampai P memiliki waktu untuk membacanya.Contoh : agar sinyal dari microphonedapat direkam oleh P, diperlukanADC (Analog to Digital Converter)yg terdapat di Sound Card dalamkomputer anda

2. Control Unit (CU) berfungsi untuk mengatur operasi seluruh sistemdengan menghasilkan atau memproses sinyal kontrol

3. Arithmetic and Logic Unit (ALU) berfungsi untuk membantu CU saatmelakukan perhitungan aritmetika (ADD, SUB) dan logika (AND, OR, XOR,SHL, SHR)

4. Memory berfungsi untuk menyimpan informasi biner5. Blok Output memiliki 2 fungsiyaitu (1) mengkonversi besaran biner menjadi

Page 10: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 2

suatu besaran tertentu, dan (2) menyimpan informasi biner dari mikroprosesorsampai perangkat luar yg akan membaca data tersebut siap. Contoh : agarinformasi lagu yg tersimpan di memori dapat didengarkan dari speaker, makadiperlukan DAC (Digital to Analog Converter)yg terdapat di Sound Carddalam komputer anda

Page 11: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 3

CARA KERJA1. Sistem diluar sistem uP bekerja pada besaran analog. Blok Input berfungsi

Untuk mengubah besaran tersebut menjadi besaran biner yang dapatdimengerti oleh uP. Setelah blok Input mengubahnya menjadi besaran biner,maka informasi biner tersebut dikirimkan ke uP.

2. Agar uP mengetahui bahwa blok Input akan mengirim data, terlebih dahuluBlok Input mengirim sinyal kontrol ke uP.

3. CU setelah menerima sinyal kontrol tersebut akan membaca informasi yangdiberikan oleh blok Input dan menyimpannya di memori.

4. Jika diperlukan, informasi yang disimpan di memori tersebut akan diambilkembali untuk diproses lebih lanjut dengan bantuan ALU.

5. Hasil proses ini dikirimkan oleh CU ke blok Output. Blok Output akanmengubah besaran biner menjadi suatu besaran tertentu sesuai keinginanpembuatnya.

CASE STUDY : ALAT PENGUKUR RATA-RATA TEMPERATURE1. Blok Input adalah termometer digital untuk mengukur suhu diluar sistem dan

mengubahnya menjadi representasi biner2. mengirim sinyal kontrol ‘ada data’ ke uP untuk mendapatkan perhatian uP3. CU akan membaca informasi biner tersebut dan menyimpannya di memori4. Setelah informasi terkumpul selama 1 menit, CU harus memproses semua

informasi yang telah terkumpul dan menghitung rata-ratanya5. Hasil proses ini dikeluarkan ke blok Output untuk diubah menjadi suatu

Tegangan Tegangan hasil blok Output akan menggerakkan jarum penunjukuntuk memberikan informasi rata-rata temperatur

Page 12: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 4

Bab-IVINTERAKSI P DENGAN MEMORI

Dari bagan organisasi komputer di atas, terlihat bahwa uP dapat :

1. Mengambil(membaca) informasi dari memori.2. Menyimpan(menulis) informasi ke memori

Seperti halnya manusia yg ingin menulis pada suatu buku dan membaca suatuinformasi dari buku, pertama-tama manusia harus dapat menentukan dimanalokasi informasi tersebut berada (i.e. nomor halaman, alinea, baris, etc.).Barusetelah itu dapat menuliskan informasinya atau membaca informasinya.

Hal yg sama juga berlaku di uP, dimana :sebelum uP dapat membaca data darimemori, pertama-tama uP harus menyediakan informasi mengenai dimana datatersebut berada. Sebelum uP dapat menuliskan suatu data ke memori, pertama-tama uP harus menyediakan informasi mengenai dimana data tersebut akanditulis. Informasi mengenai ‘dimana data tersebut’ disebut dengan Alamat.

Proses pembacaan data oleh uP dari memori (arah data : uP memori)

alamat

8088read Memoridata

URUTAN KERJA :1. uP8088 mempersiapkan alamat (lokasi) dari data yg akan dibaca2. uP8088 mengirimkan sinyal readke memori3. setelah menerima sinyal read, memori mencari data yg diinginkan P8088

sesuai dgn alamat yg diberikan4. data yg sesuai dikirimkan oleh memori ke P8088

Page 13: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 5

Proses penulisan data oleh uP ke memori (arah data : uPmemori)

8088

alamat

data memoriwrite

URUTAN KERJA :

1. P8088 mempersiapkan alamat (lokasi) dimana data akan ditulis (diletakkan)2. P8088 mempersiapkan data yg akan ditulis3. P8088 mengirimkan sinyal writeke memori4. setelah menerima sinyal write, memori membaca data yg diberikan oleh

P8088 dan meletakkannya sesuai dgn alamat yg ditentukan

Pada proses penulisan dan pembacaan data, uP8088 menggunakan 3 (tiga)buah saluran khusus untuk mengirimkan (1) alamat, (2) data, dan (3) kontrolbaca/tulis. Ketiga saluran ini disebut sebagai (1) bus alamat, (2) bus data, dan (3)bus kontrol.

Page 14: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 6

11 30

Bab-VMIKROPROSESOR 8088

Mikroprosesor Intel 8088 adalah multipurpose mikroprosesor yangdiimplementasikan dengan teknologi N-channel, depletion load, silicon gate(HMOS-II). Dipasarkan dengan format 40-pin CERDIP (Ceramic Dual InlinePackage). Mikroprosesor ini termasuk keluarga mikroprosesor 8 bit dan 16 bit.Mikroprosesor Intel 8088 kompatible secara langsung dengan software yangdidesain untuk mikroprosesor 8086 dan 8080/8085, dan secara hardware jugakompatible dengan mikroprosesor 8080/8085.

KETERANGAN

GND : ground (0 volt)Vcc : +5 volt

GNDA14A13A12A11A10A9A8

D7 / A7D6 / A6D5 / A5D4 / A4D3 / A3D2 / A2D1 / A1D0 / A0

clockGND

1 402 393 384 375 366 357 348 339 3210 8088 31

12 2913 2814 2715 2616 2517 2418 2319 2220 21

VccA15A16A17A18A19

read

write

ALE

reset

D0 – D7 : Data bus (8 informasi biner = 1 byte)ada 28 = 256 kombinasi data (00H – FFH) untuk kode ASCII

A0 – A19 : Address bus (20 informasi biner)ada 220 = 1048576 kombinasi harga, berartiada 1048576 lokasi memori yg dpt dialamati

Read : sinyal kontrol untuk membacaWrite : sinyal kontrol untuk menulisClock : frekuensi kerja P8088 (5 MHz atau 8 MHz) reset: menginisialisasi

kembali semua isiRegister ALE : Address Latch Enable, menandakan bahwa pin 9 s.d pin 16 menyimpan

informasi alamat

Page 15: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 7

blok 00

blok 01

blok 10

blok 11

KEMAMPUAN BUS

1. Lebar dari bus data sering digunakan untuk mengklasifikasikan uP.Contoh: P8088 adalah microprocessor 8-bit karena jumlah pin untuk bus datasebanyak 8 buah (D0–D1–D2–D3–D4–D5–D6–D7 : pin no. 9 – 16).

2. Lebar dari bus alamat menyatakan jumlah maksimum blok memory yg dapat diaksesoleh mikroprosesor.a. P dengan 1 buah alamat (A) hanya dapat mengakses 2 blok memori yaitu

pada saat A=0 dan A=1

blok 0uP

blok 1

dapat diakses jika A = 0

dapat diakses jika A = 1

b. uP dengan 2 buah alamat (A0 dan A1) hanya dapat mengakses 4 blok memoriyaitu pada saat

A0

uP A1

dapat diakses jika A0 = 0 dan A1 = 0

dapat diakses jika A0 = 1 dan A1 = 0dapat diakses jika A0 = 0 dan A1 = 1dapat diakses jika A0 = 1 dan A1 = 1

JUMLAHJALUR

ALAMAT

TOTAL BLOKMEMORI

KAPASITAS MEMORI(1 BLOK MEMORI = 1 BYTE) KETERANGAN

1 21=2 2 byte2 22=4 4 byte16 216=65536 65536 byte = 64 Kbyte i8080, Z8020 220=1048576 1048576 byte = 1024 Kbyte = 1 Mbyte i8088

Contoh: uP 8088 memiliki bus alamat dengan lebar 20 bit sehingga uP 8088 dapatmengakses memori berkapasitas maksimum 220=1048576 blok memori atau1 Mb. Sedangkan bus kontrol memiliki lebar 1 saluran untuk setiap fungsi.

REGISTERPada bagan organisasi komputer, memori diletakkan terpisah dari mikroprosesor. Jikabagan tersebut diimplementasikan, uP harus mengakses memori setiap saat. Dankarena kecepatan memori jauh lebih lambat dari uP (sebagai contoh uP PentiumIV telah mencapai kecepatan 2 GHz sedangkan DDRAM maksimum hanyamemiliki kecepatan 0.8 GHz), maka kecepatan kerja uP akan sangat dipengaruhioleh kecepatan memori. Untuk mempercepat pemrosesan data di dalammikroprosesor, selain CU dan ALU, Mikroprosesor juga akan membutuhkanmemori yg memiliki kecepatan sama dengan uP. Untuk melakukannya, memori

Page 16: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 8

tersebut harus diimplementasikan didalam mikroprosesor. Memori ini disebutdengan register.

Page 17: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 9

- - - - OF DF IF TF SF ZF - AF - PF - CF

-rAX=0000 BX=0000 CX=0000 DX=0000 SP=FFEEDS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0100

-rAX=0000 BX=0000 CX=0000 DX=0000 SP=FFEEDS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0100

-rAX=0000 BX=0000 CX=0000 DX=0000 SP=FFEEDS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0100

JENIS REGISTER BERDASARKAN INFORMASI YG DISIMPANNYA DAPATDIBAGI MENJADI 4.

1. REGISTER DATAdigunakan untuk menyimpan data yg diperlukan untuk suatu operasiTerdiri dari: AX (Accumulator), BX (Base), CX (Counter), DX (Data)

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

2. REGISTER ALAMATkarena jumlah register data sangat terbatas, maka sebagian besar data tetap diletakkan dimemori. Untuk dapat mengaksesnya, uP membutuhkan alamat dari data tersebut ygdisimpan oleh register alamat.Terdiri dari: SP (Stack Pointer), BP (Base Pointer), SI (Source Index), DI (DestinationIndex), DS (Data Segment), ES (Extra Segment), SS (Stack Segment), CS (CodeSegment), IP (Instruction Pointer) dan BX (Base)

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

3. REGISTER STATUS (FLAGS)digunakan untuk menyimpan status dari hasil operasi yg menggunakan ALU.Terdiri dari: OF (Overflow Flag), DF, IF, TF, SF (Sign Flag), ZF (Zero Flag), AF, PF, CF(Carry Flag)

Flag :

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

4. REGISTER INSTRUKSIdigunakan untuk menyimpan instruksi yang sedang dikerjakan

Catatan:Register BX selain dapat digunakan sebagai register data dapat juga digunakan sebagairegister alamat Lebar semua register uP8088 adalah 16 bit = 2 byte. Sehingga setiapregister dapat berharga 0000 H s.d. FFFFH atau 2 16 = 65536 kombinasi harga. Setiapregister akan diakses (dibaca/ditulis) dalam format 16 bit tersebut, kecuali register datadapat diakses dalam format 8 bit = 1 byte (AH, AL, BH, BL, CH, CL, DH, DL).

16 bit8 bit

Page 18: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 10

AH ALBH BLCH CLDH DL

Page 19: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 11

Bab-VISTRUKTUR MEMORI PADA P 8088

Memori pada sistem P 8088 memiliki dua ciri :1. Diakses dgn alamat selebar 16 bit (00000H s.d. FFFFFH) atau 2 byte2. Data yg diakses untuk setiap alamat adalah 8 bit atau 1 byte

contoh :Alamat data yg disimpan pada alamat tsb

(dlm Hexa) (dlm Biner) (dlm Hexa)

FFFF 1 0 0 0 1 0 1 0 = 8A

8000 1 1 1 0 1 0 0 0 = E8

0002 1 0 1 1 1 1 0 0 = BC0001 0 0 0 0 1 1 0 1 = 0D0000 1 1 1 1 1 1 1 0 = FE

Alamat dari suatu cell memori direpresentasikan dalam format 2 byte (0000H – FFFFH)yg disimpan dalam register alamat (yg lebarnya juga 2 byte). Karena kapasitasregister alamat adalah 2 byte, maka jumlah cell memori yg dapat disimpanalamatnya adalah 216

= 65536 cell memori. Dan karena suatu cell memori menyimpan data 1 byte (00 H – FFH)maka suatu register alamat P 8088 dapat mengakses (membaca/menulis) memoriberkapasitas 65536 byte = 64 KByte.

Alamat data (Hexa) data (ASCII)0D9C:0100 0E E8 DC FC 89 46 FA 89-56 FC 0B D0 75 04 33 C0 .....F..V...u.3.0D9C:0110 C9 C3 8B 46 F8 FF 5E FA-89 46 FE 8B 34 00 8B 0D ...F..^..F..4...0D9C:0120 C8 08 00 00 C7 46 FE 00-00 C7 46 F8 40 00 0E E8 [email protected]:0130 AE FC 89 46 FA 89 56 FC-0B D0 75 04 33 C0 C9 C3 ...F..V...u.3...0D9C:0140 8B 46 F8 FF 5E FA 89 46-FE 8B 46 FE C9 C3 C8 08 .F..^..F..F.....0D9C:0150 00 00 C7 46 FE 00 00 C7-46 F8 41 00 0E E8 80 FC ...F....F.A.....0D9C:0160 89 46 FA 89 56 FC 0B D0-75 04 33 C0 C9 C3 8B 46 .F..V...u.3....F0D9C:0170 F8 FF 5E FA 89 46 FE 8B-46 FE C9 C3 C8 08 00 00 ..^..F..F.......

Dari hasil ‘dumping’ memori dgn Debug, memori ditampilkan dalam format 128 byte.

Page 20: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 12

Dapat dilihat bahwa pada alamat 0000 isi datanya 0E, dan pada alamat 0001 isi datanyaE8, dan pada alamat 0002 isi datanya DC, dst.

Page 21: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 13

0 F 8 C0 0 0 5

SEGMENTASI

Mikroprosesor harus dapat mengakses semua cell memori dari alamat terendah sampaialamat tertinggi. Alamat tersebut akan disimpan didalam register alamat. Secara fisik,uP8088 memiliki 20 buah jalur alamat (A0 – A19) untuk menyediakan informasi alamatselebar 20 bit dimana informasi alamat tersebut dapat berharga 00000H s.d FFFFFH. Ke-20 bit tersebut digunakan untuk mengakses memori dgn kapasitas 220 = 1048576 cell.

Namun masalah timbul pada lebar register alamat. P 8088 memiliki register alamatdengan lebar hanya 16 bit dari 20 yang dibutuhkan untuk mengakses semua memori.Ini berarti jika suatu register alamat menyimpan alamat memori, dia hanya dapatdigunakan untuk mengakses alamat 0000 sampai FFFF atau 64 KByte.Untuk mengatasi kekurangan ini, Intel menggunakan 2 register untuk pengalamatan.Satu register akan menyimpan alamat segment (suatu area memori seluas 64 Kbyte), danSatu register akan menyimpan alamat offset (menentukan byte yang mana di dalamsegment tersebut yg akan diakses).

Contoh:

Segment address DS =Offset address BX =

4 bit 4 bit 4 bit 4 bit 4 bit

Physical Address DS+BX 0 F 8 C 5

SegmentF000

FFFFF FA Offset FFFFFFFFE 3B Offset FFFEFFFFD 43 Offset FFFD

64

F0001 20 Offset 0001F0000 15 Offset 0000

Segment1000

1FFFF 55 Offset FFFF1FFFE CD Offset FFFE

10002 9A Offset 000210001 2B Offset 000110000 53 Offset 00000FFFF 06 Offset FFFF0FFFE 7A Offset FFFE

102464

Segment0000

64

00002 80 Offset 0002

Page 22: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 14

-rAX=0000 BX=0000 CX=0AA0 DX=0000 SP=4000DS=0F8C ES=0F8C SS=1086 CS=0F9C IP=0000

-rAX=0000 BX=0000 CX=28E7 DX=0000 SP=FFFEDS=0F8C ES=0F8C SS=0F8C CS=0F8C IP=0100

00001 DE Offset 000100000 1F Offset 0000

P8088 menyediakan 4 segment untuk menjalankan suatu program.

Segment untuk Program (Code/Instruksi) CS:IPCS (Code Segment) menyimpan alamat segment (64 Kb of memory) dari program.IP (Instruction Pointer) menyimpan alamat offset dari program yang akan menentukaninstruksi mana di dalam 64 Kb tadi yang akan dieksekusi

Segment untuk Data DS:BXDS (Data Segment) menyimpan alamat segment (64 Kb of memory) dari data.BX (Base Register) menyimpan alamat offset dari data yang akan menentukan data manadi dalam 64 Kb tadi yang akan diambil

Segment untuk Stack SS:SPSS (Stack Segment) menyimpan alamat segment (64 Kb of memory) dari stack.SP (Stack Pointer) menyimpan alamat offset dari top of the stack yang akan menentukantumpukan (stack) mana di dalam 64 Kb tadi yang akan diambil (POP)

Extra SegmentES (Extra Segment) menyimpan alamat segment (64 Kb of memory) yg digunakan untuktambahan lokasi penyimpanan data jika segment Data tidak mencukupi.

Suatu program dapat memakai 4 segmentyg berbeda-beda (format program *.EXE)atau hanya menggunakan sebuah segment untuk menampung program + data + stack +extra (format program *.COM)

C:\WINDOWS\COMMAND>debug-n CHKDSK.EXE-l loading file ‘chkdsk.exe’ ke memori

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

Perhatikan bahwa program berekstensi EXE menggunakan 3 segment :1. segment program ada di segment nomor 0F9C2. segment stack ada di segment nomor 10863. segment data = segment extra = 0F8C

C:\WINDOWS\COMMAND>debug-n FORMAT.COM-l loading file ‘format.com’ ke memori

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

Perhatikan bahwa program berekstensi COM hanya menggunakan 1 segment yaitusegment nomor 0F8C

Page 23: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 15

-tAX=1234 BX=0000 CX=0000 DX=0000 SP=FFEEDS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0103

-tAX=1234 BX=5678 CX=0000 DX=0000 SP=FFEEDS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0106

-tAX=1234 BX=5678 CX=0000 DX=0000 SP=FFECDS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0107

Bab-VIISTACK

Karena jumlah register data terbatas (hanya 4 buah : AX,BX, CX, DX), makadiperlukan suatu lokasi penyimpanan data untuk sementara yang disebut stack.Kelebihan stack adalah dari kesederhanaannya didalam menyimpan danmengembalikan kembali data yg telah tersimpan dibandingkan denganpenyimpanan ke memori. Dari arti katanya stack adalah tumpukan. Ini berarti jikakita akan menyimpan data di stack, data tersebut akan ditumpuk berdasarkanurutan siapa yang terakhir datang. Oleh karenanya, sistem akses data di stackdisebut LIFO (Last In First Out) dimana data yang akan diambil adalah data yangditumpuk terakhir. Penumpukan data di stack dilakukan dari bawah.

FFFF 5EFFFE CD tumpukan terakhir

tumpukan baru

Untuk mengidentifikasi tumpukan data terakhir (paling bawah), digunakan registerSP (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.PUSHakan ‘mendorong’ data ke stack dan POP akan ‘mengeluarkan’ data dari stack.

-a0EA0:0100 mov ax,12340EA0:0103 mov bx,56780EA0:0106 push ax0EA0:0107 push bx0EA0:0108 pop ax0EA0:0109 pop bx

SP=FFEE-d ffe0 0EA0:FFE0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 isi stack

0EA0:0103 BB7856 MOV BX,5678

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

0EA0:0106 50 PUSH AX

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

0EA0:0107 53PUS

Page 24: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 16

H BX BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

-d ffe0

Page 25: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 17

-tAX=1234 BX=5678 CX=0000 DX=0000 SP=FFEADS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0108

-tAX=5678 BX=5678 CX=0000 DX=0000 SP=FFECDS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0109

-tAX=5678 BX=1234 CX=0000 DX=0000 SP=FFEEDS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=010A

0EA0:FFE0 00 00 00 00 00 00 00 00-00 00 00 00 34 12 00 00 AX ada di stack

0EA0:0108 58 POP AX

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

-d ffe0 0EA0:FFE0 00 00 00 00 00 00 00 00-00 00 78 56 34 12 00 00 BX ada di stack

0EA0:0109 5B POP BX

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

Page 26: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 18

Page 27: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 19

1000 10dw1011 wreg1010 000w1010 001w

modregr/mdataaddr-lowaddr-low

contoh 1:MOV AL,BL = 88D8

d=0,MOV AX,BX = 89D8

d=0,MOV [BX],AL = 8807

d=0,MOV [BX],AX = 8907

d=0,MOV AL,[BX] = 8A07

d=1,MOV AX,[BX] = 8B07

d=1,

contoh 2:MOV AX,1234 = B834

w=1,MOV AL,78 = B078

w=0,

contoh 3:

MOV AX,[1234]

contoh 4:

= A134w=1,

MOV [1234],AX

PUSH - Push

= A334w=1,

1. Register 0101 0reg2. Segment Register 000reg110

Bab-VIII8086/8088 INSTRUCTION SET SUMMARYDATA TRANSFER

MOV – Move1. Reg/Mem to/from Reg2. Immediate to Register3. Memory to Accumulator4. Accumulator to Memory

data (w=1)addr-highaddr-high

(10001000 11011000)w=0, mod=11, reg=011(BL), r/m=000(AL)(10001001 11011000)w=1, mod=11, reg=011(BX), r/m=000(AX)(10001000 00000111)w=0, mod=00, reg=000(AL), r/m=111([BX])(10001001 00000111)w=1, mod=00, reg=000(AX), r/m=111([BX])(10001010 00000111)w=0, mod=00, reg=000(AL), r/m=111([BX])(10001011 00000111)w=1, mod=00, reg=000(AX), r/m=111([BX])

12 (10111000 34H 12H)reg=000(AX), Low-data=34H, Hi-data=12H(10110000 78H )

reg=000(AL), data=78H

12 (10100001 34H 12H))addr-low=34H,addr-high=12H

12 (10100011 34H 12H))addr-low=34H,addr-high=12H

contoh 1: PUSH AX = 50 (0101 0000): reg=000(AX)contoh 2: PUSH CS = 0E (0000 1110): reg=01(CS)

Page 28: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 20

1. Register 0101 1reg2. Segment Register 000reg111

POP - Pop

contoh 1: POP AX = 58 (0101 1000): reg=000(AX)contoh 2: POP CS = 0F (0000 1111): reg=01(CS)

ARITHMETIC

ADD - Add1. Reg/Mem with Register 0000 00dw modregr/m2. Immediate to Reg/Mem 1000 00sw mod000r/m data data(sw=013. Immediate to AX/AL 0000 010w data data (w=1)

contoh 1:ADD BX,CX = 01CB (00000001 11001011)

d=0, w=1, mod=11, reg=001(CX), r/m=011(BX)ADD BL,CL = 00CB (00000000 11001011)

d=0, w=0, mod=11, reg=001(CL), r/m=011(BL)

contoh 2:ADD BX,1234 = 81C33412 (10000001 11000011 34H 12H)

sw=01, mod=11, r/m=011

contoh 3:ADD AX,1234 = 053412 (00000101 34H 12H)

w=1, Low-data=34H, Hi-data=12H

SUB - Subtract1. Reg/Memory and Reg 0010 10dw modregr/m2. Immediate from Reg/Mem 1000 00sw mod101r/m data data(sw=013. Immediate from AX/AL 0010 110w data data (w=1)

contoh 1:SUB BX,CX = 29CB (00101001 11001011)

d=0, w=1, mod=11, reg=001(CX), r/m=011(BX)SUB BL,CL = 28CB (00101000 11001011)

d=0, w=0, mod=11, reg=001(CL), r/m=011(BL)

contoh 2:SUB BX,1234 = 81EB3412 (10000001 11101011 34H 12H)

sw=01, mod=11, r/m=011

contoh 3:SUB AX,1234 = 2D3412 (00101101 34H 12H)

w=1, Low-data=34H, Hi-data=12H

Page 29: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 21

1. Reg/Memory and Reg 0010 00dw modregr/m2. Immediate to Reg/Mem 1000 000w mod100r/m data data (w=1)3. Immediate to AX/AL 0010 010w data data (w=1)

0D9C:0108-u 1000D9C:0100 EB0D JMP 010F0D9C:0102 EBFC JMP 01000D9C:0104 7409 JZ 010F0D9C:0106 74F8 JZ 0100

LOGIC

NOT - Invert 1111 011w mod01 0r/mSHL = Shift Logical Left 1101 00vw mod10 0r/mSHR = Shift Logical Right 1101 00vw mod10 1r/m

AND - And

OR - Or1. Reg/Memory and Reg 0000 10dw modregr/m2. Immediate to Reg/Mem 1000 000w mod001r/m data data (w=1)3. Immediate to AX/AL 0000 110w data data (w=1)

XOR - Exclusive Or1. Reg/Memory and Reg 0011 00dw modregr/m2. Immediate to Reg/Mem 1000 000w mod110r/m data data (w=1)3. Immediate to AX/AL 0011 010w data data (w=1)

CONTROL TRANSFER

JMP - Unconditional JumpDirect w/in Segment Short 1110 1011 disp

JE/JZ - Jump on Equal/Zero 0111 0100 disp

contoh:-a 1000D9C:0100 jmp 010f0D9C:0102 jmp 01000D9C:0104 jz 010f0D9C:0106 jz 0100

jadi:JMP 010F = EB0D (11101011 00001101):jump 0D(=+13) bytes forward (IP=IP+13)JMP 0100 = EBFC (11101011 11111100):jump FC(=-4) bytes forward (IP=IP-4)JZ 010F = 7409 (01110100 00001011):jump 09(=+9) bytes forward (IP=IP+9)JZ 0100 = 74F8 (01110100 11111000):jump FB(=-8) bytes forward (IP=IP-8)

(angka minus menggunakan format 2’s complement)

Page 30: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 22

KETERANGANd = 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 fieldif mod=00 then DISP=0, disp-low and disp-high are absent

disp = displacement:show how far should the CPU jump from recent point (reg. IP)

r/m:if r/m = 000 then EA = (BX) + (SI) + DISPif r/m = 001 then EA = (BX) + (DI) + DISP

if r/m = 010 then EA = (BP) + (SI) + DISP ifr/m = 011 then EA = (BP) + (DI) + DISP

if r/m = 100 then EA = (SI) + DISPif r/m = 101 then EA = (DI) + DISPif r/m = 110 then EA = (BP) + DISP*if r/m = 111 then EA = (BX) + DISPif s:w=01 then 16 bits of immediate data form the operandif 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) Segment000 AX001 CX010 DX011 BX100 SP101 BP110 SI111 DI

000 AL001 CL010 DL011 BL100 AH101 CH110 DH111 BH

00 ES01 CS10 SS11 DS

Page 31: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 23

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

-a 01000EA0:0100 mov ax,12340EA0:0103 mov bl,f70EA0:0105 push ax-u 01000EA0:0100 B83412 MOV AX,12340EA0:0103 B3F7 MOV BL,F70EA0:0105 50 PUSH AX

Yang tercetak tebal merupakan op-code nya dimana :B8 berarti MOV AX, ?? ??B3 berarti MOV BL, ??

Page 32: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 24

AH ALBH BLCH CLDH DL

Stack SegmentStack Pointer

Code SegmentInstruction Pointer

Memory Controller1 1 0

8-bit Memory (max of 1 Mb)1 1 1

0 1 0 0 0 01 0 0 1 1 11 1 1 1 1 11 0 0 1 1 10 1 0 0 0 01 0 0 1 1 10 0 0 0 0 0

Bab-IXBAGAN DASAR P INTEL 8088

8 - bit Data BusInternal

FlagInstruction reg

Accumulator

A L UInstructionDecoder

Data bus buffer Address buffer

MemRead

MemWrite

A0 A4A2 A6

A8A10

A12A14

A16A18

D6 D4 D2 D0

1 byte

1048576 cell

ELEMEN DIDALAM MIKROPROSESOR ADALAH :

CU (Control Unit) adalah manajer dari semua unit. CU mengatur keselarasan kerja setiapunit. Apa yang harus dilakukan oleh suatu unit, semuanya diketahui oleh CU denganbantuan microprogram yang ditanamkan padanya. Pengontrolan oleh CU dilakukan melaluiBus Kontrol (panah dari/ke Control Unit).

InstructionDecoderbertugas untuk menerjemahkan suatu instruksi dengan caramembandingkannya dengan tabel instruksiyang dimilikinya. Hasil dekoding diberikan keCU, dan CU akan membangkitkan sinyal-sinyal kontrol yang diperlukan untukmelaksanakan instruksi tersebut.

Page 33: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 25

Registeradalah memori khusus di dalam uP. Untuk mengidentifikasikannya,register memiliki nama khusus yang juga sekaligus mencerminkan fungsi registertersebut. Berdasarkan isinya, register dapat dibedakan menjadi :

Register Datamemiliki lebar 16 bit namun dapat diakses dalam format2x8 bit: Accumulator : AX = AH+ALBase Register : BX = BH+BLCounter Register : CX = CH+CLData Register : DX = DH+DL

Register Alamatmemiliki lebar 16 bit :Code Segment : CS, menyimpan alamat segment dari programInstruction Pointer : IP, menyimpan alamat offset dari programData Segment : DS, menyimpan alamat segment dari dataIndex Register : BI (Base Index), SI (Source Index), DI (Destination Index),Pointer Register : BP (Base pointer),Stack Segment : SS, menyimpan alamat segment dari stackStack Pointer : SP, menyimpan alamat offset dari stackBase Register : BX

Register status(Flag) berfungsi untuk menyimpan status dari suatu operasi

Register instruksimenyimpan instruksi yang akan dikerjakan oleh CPU(Instruction Register)

ALU (Arithmetic and Logic Unit) adalah mesin penghitung (kalkulator) dari CPU.CU akan menggunakan ALU jika instruksi yang dikerjakan membutuhkanperhitungan aritmetika (contoh: ADD, SUB) atau logika (contoh: AND, OR, XOR).Jika suatu instruksi aritmetika dan logika dieksekusi, maka hasil operasinya dapatmengubah salah satu bit di register status.

Page 34: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 26

-tAX=0000 BX=000F CX=0000 DX=0000 SP=FFEEDS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0103

-tAX=000F BX=000F CX=0000 DX=0000 SP=FFEEDS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0105

-tAX=2503 BX=000F CX=0000 DX=0000 SP=FFEEDS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=0107

Bab-XENCODING INSTRUKSI MESIN

Di dalam CPU (tepatnya pada blok Instruction Decoder), terdapattabel instruksi yang memuat daftar semua instruksi yang dapatdimengerti oleh CPU tersebut. Daftar ini disebut sebagai microcodedan setiap kali CPU menerima sebuah instruksi, CPU akan memecahkode instruksi tersebut (tahap decoding) dan kemudian melihat artidari masing-masing pecahan tersebut di microcode. Hal inimenunjukkan bahwa tidak semua CPU memiliki microcode yangsama. Beda arsitektur berarti berbeda juga microcode-nya. Sebagaicontoh, program yang dapat dijalankan di IBM PC tidak akan jalan diApple Macintosh, begitu pula sebaliknya.

Hampir semua instruksi memerlukan data untuk dioperasikan. BerdasarkanAddressingMode-nya (bagaimana uP mendapatkan data yg dibutuhkan oleh suatuinstruksi), instruksi-instruksi uP 8088 dapat dibedakan menjadi :

Addressing Mode Contoh instruksi A r t iImmediate Add AX, 3F 5B AX AX + 3F 5BRegister Direct Add AX, BX AX AX + BXRegister 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]

[000D] [000F]-d 0000 0EA0:0000 CD 20 00 A0 00 9A EE FE - 1D F0 4F 03 27 08 8A 030EA0:0010 25 08 17 03 25 08 2A 07 - 01 01 01 00 02 FF FF FF

[0010]

0EA0:0103 89D8 MOV AX,BX

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

0EA0:0105 8B07 MOV AX,[BX] DS:000F=2503

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

0EA0:0107 8B47FF MOV AX,[BX-01] DS:000E=038A

Page 35: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 27

-tAX=038A BX=000F CX=0000 DX=0000 SP=FFEEDS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=010A

-tAX=8A08 BX=000F CX=0000 DX=0000 SP=FFEEDS=0EA0 ES=0EA0 SS=0EA0 CS=0EA0 IP=010D

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

0EA0:010A A10D00 MOV AX,[000D] DS:000D=8A08

BP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

Page 36: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 28

Bab-XIMEMORY

ROM (Read Only Memory)merupakan media penyimpan data non-volatile (volatile = menguap) yang berarti datanyatidak akan hilang meskipun power supplynya diputuskan.Contoh:ROM BIOS (ROM Basic Input Output System) pada motherboard yang bertugas untukmemeriksa keberadaan dan kondisi semua peripheral yang terpasang, menghitung danmengecek main memory, dan bootstrap loader (memanggil OS pada Hard Disk).

RAM (Random Access Memory)merupakan media penyimpan data volatile yang berarti datanya akan hilang jika powersupplynya diputuskanContoh:SDRAM pada Main Memory komputer anda (yang mencapai 64 Mb, 256 Mb).

RAM dibagi menjadi 2 jenis :SRAM (Static RAM) menggunakan hanya transistor digital (10 buah transistor)DRAM (Dynamic RAM) menggunakan 2 buah transistor dan kapasitorSRAM : Price = Rp 100.000 u/ Capacity 0,5 Mb, Size 50 mikron per cell, Speed 2 nsDRAM : Price = Rp 100.000 u/ Capacity 64 Mb, Size 20 mikron per cell, Speed 10 ns

Hirarki Memory

Seorang pengguna komputer akan membutuhkan memori yang cepat dalamjumlah yang tidak terbatas. Namun hal ini akan memakan biaya yang sangatmahal. Solusi ekonomis untuk keinginan tersebut adalah dengan menggunakanhirarki memori. Dengan hirarki memori, kita dapat menyeimbangkan antara Speed,Capacity, Size, dan Price.

Tujuannya adalah untuk menyediakan sistem memori dengan harga serendah-rendahnya dan kecepatan setinggi mungkin.

uP 8088

Price Capacity Size Speed

Cache memory

Main memory

Hard Disk

Page 37: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 29

PENGALAMATAN MEMORI

Metode pengalamatan memori untuk tiap-tiap desain uP amat berbeda. Disini kita akanmempelajari metode pengalamatan yang dipakai oleh uP 8088.

LOGICAL MEMORYMemori logika adalah system memori yang dilihat dari sudut programmer.Memori logika biasanya diberikan nomor dalam format Hexadecimal.

FFFFFF

1 MByte- 8086- 8088- 80186

16 MByte

- 80286,- 386 SX

4 GByte

- 386 DX- 80486

FFFF

FFFF

000

Page 38: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 30

AX=EE9A BX=0000 CX=0000 DX=0000 SP=FFEEDS=11A8 ES=11A8 SS=11A8 CS=11A8 IP=0103

Karena semua cell memori pada sistem uP 8088 memiliki lebar 8-bit (1 byte),maka jikauP hendak mengakses 16-bit (2 byte) data dari memori, 2 byte berturutanakan diambil. Peletakan data di memori diurutkan dari LSB (least significantbyte) dengan alamat memori terendah sampai MSB (most significant byte)dengan alamat memori tertinggi. Sistem ini disebut Little Endian dan berlakuuntuk semua keluarga uP x86 yang berarti alamat memori dari suatu data akanmenunjuk ke LSB dari data.

-a11A8:0100 mov ax,[0005]

[0000] [0005] [0006]-d 0000 11A8:0000 CD 20 00 A0 00 9A EE FE - 1D F0 4F 03 2D 0B 8A 03[0005] = 9A (LSB AL)[0006] = EE (MSB AH)

-tBP=0000 SI=0000 DI=0000NV UP EI PL NZ NA PO NC

Physical MemoryPada keluarga microprocessor Intel, perbedaan memori secara hardwarenyaterletak padalebarnya dimana 8088 : 8-bit, 8086-80386SX : 16-bit, dan 80386DX-80486 : 32-bit. Meskipun terdapat perbedaan lebar data pada tiap desain microprocessor diatas, seorangprogrammer tetap mengaksesnya seakan-akan mereka adalah 8-bit. Perbedaan

lebar data tersebut hanya menjadi masalah bagi hardware desainer.

Page 39: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 31

4164

4164

4125

641

256

4164

4164

4125

641

256

4164

4164

4125

641

256

4164

4164

4125

641

256

4164

4164

4125

641

256

4164

4164

4125

641

256

4164

4164

4125

641

256

4164

4164

4125

641

256

4164

4164

4125

641

256

Mai

n M

emor

y =

(256

Kby

te x

2) +

(64K

byte

x 2

)=

640

Kby

te

8284

8288

8253

= P

rogr

amm

able

Inte

rval

Tim

er82

37 =

DM

A C

ontro

ller

8255

= P

rogr

amm

able

Per

iphe

ral

Inte

rface

Pow

er S

uppl

yC

ryst

al

Bab-XIIPC-XT

Personal ComputereXtended Technology

8-bit ISA bus ON

Dip Switch Keyboard

82598088 8087

8253

8259 = Programmable Interrupt Controller8088 = Microprocessor8087 = Floating Point Numeric Processor8288 = Bus Controller8284 = Clock GeneratorCrystal = 14.318 MHz

ROM ROM ROM

8237 8255

Page 40: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 32

PC-XT adalah komputer komersial pertama yang dikeluarkan IBM. Dengan prosesorIntel 8088 dan DRAM 640KB, komputer ini dipasarkan sekitar tahun 1985.

Motherboard komputer PC-XT memiliki beberapa komponen penting :

8088 (Microprocessor)adalah mikroprosesor yang bertugas mengontrol semua komponen

8087 (Arithmatic Co-Processor)adalah arithmatic co-prosesor yang bertugas untuk membantu 8088dalam menangani kalkulasi atau perhitungan aritmetikyang melibatkan angka sangat besar

8237 (DMA Controller)adalah prosesor khusus untuk menangani proses DMA (Direct Memory Access)yaitu suatu proses dimana yang menulis / membaca data di memoribukan lagi mikroprosesor, melainkan peripheral (perangkat luar)

8251 (Serial Communication Controller)adalah prosesor khusus untuk transaksi data serial (misalnya untuk modem)(terpasang pada I/O card, tidak pada motherboard)

8253 (Programmable Interval Timer)adalah prosesor khusus untuk menangani timing

8255 (Programmable Peripheral Interface)adalah prosesor khusus untuk transaksi data paralel (misalnya untuk floppy disk)

8259 (Programmable Interrupt Controller)adalah prosesor khusus untuk mengontrol mekanisme interupsi

8284 (Clock Generator)adalah IC yg digunakan untuk menghasilkan :sinyal clock (4.77 MHz), sinyal Reset, dan sinyal Ready.

8288 (Bus Controller)adalah prosesor khusus untuk mengontrol penggunaan bus data dan bus alamat

4164 (Dynamic RAM)adalah memori DRAM dengan kapasitas 65536 x 1 bit (64 Kbit).Oleh karena DRAM ini hanya dapat menyimpan 1 bit,maka untuk dapat menyimpan 8 bit, digunakan 8 x 4164.Ditambah 1 x 4164 untuk menyimpan Parity Bit.

41256 (Dynamic RAM)adalah memori DRAM dengan kapasitas 262144 x 1 bit (256 Kbit).Oleh karena DRAM ini hanya dapat menyimpan 1 bit,maka untuk dapat menyimpan 8 bit, digunakan 8 x 41256.Ditambah 1 x 41256 untuk menyimpan Parity Bit.

Page 41: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 33

Peta memori

Peta memori adalah suatu peta yang menggambarkan lokasi dari data di memori. Petamemori digambarkan sebagai blok yang memiliki alamat dan 8-bit data.Cell memori dengan alamat terendah digambarkan paling bawah

FFFF 8A

7777 E8

0000 FE

Untuk P x86, sistem operasi MSDOS (Real Mode) membagi seluruh area memorimenjadi 3 :

unlimiteddepend onthe uP

100000

XMS(eXtended Memory System)

15 Mb for 80286 – 80386SX4 Gb for 80386DX and up

FFFFF

A0000

EMS(Expanded Memory System) 384 Kb System Area

9FFFF

00000

TPA(Transient and Program Area) 640 Kb Conventional Memory

Microprocessor x86 dan sistem operasi produk Microsoft selalu mempertahankankompatibilitasnya terhadap microprocessor dan sistem operasi pendahulunya. Olehkarenanya Intel Pentium® pun tetap mengacu pada peta memori uP i8088 denganmemori utamanya sebesar 1 Mb (Intel menyebutnya real memory).

Memori sebesar 1 Mb ini dibagi menjadi 2 menurut fungsinya.1. Daerah 640Kb pertama disebut TPA (Transient Program Area) atau conventionalmemory. Disini terdapat OS (Operating System), dan program aplikasi yg dijalankan(alamat fisik 00000 – 9FFFF)2. Diatas TPA terdapat EMS (Expanded Memory System) yang pada dasarnyamerupakan BIOS (Basic I/O System) system area untuk pengontrolan I/O (alamat fisikA0000 – FFFFF)

Untuk microprocessor diatas i8088, penggunaan memori diatas 1 Mb dimungkinkan dandaerah ini disebut dengan XMS (Extended Memory System).

Page 42: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 34

11 30

Bab-XIIIMIKROPROSESOR I8088

Mikroprosesor yg akan digunakan disini adalah P Intel 8088 yang memilikikarakteristik sebagai berikut (diambil dari spesifikasi teknis i8088 dari Intel®):

8-Bit Data Bus Interface (D0 – D7) Eksternal Data Bus= 8 jalur16-Bit Internal Architecture Internal Data Bus = 16 jalurDirect Addressing memori sampai 1 Mbyte Address Bus = A0 – A19

14 Register dengan lebar masing-masing 16 bit : 4 register serba guna AX, BX, CX, DX

dapat diakses dalam 8 bit menjadi AH-AL, BH-BL, CH-CL, DH-DL 9 register alamat SP, BP, SI, DI, DS, ES, SS, CS, IP 1 register status Flag

Operasi data dalam format Byte (8 bit), Word (16 bit), and Block (variable)

Dua frekuensi kerja : 5 MHz untuk type 8088 8 MHz untuk type 8088-2

Dua mode kerja : Mode Minimum Mode Maximum

Mikroprosesor 8088 difabrikasi dgn teknologi N-channel, depletion load, silicon gate(HMOS-II), dan dipasarkan dalam 40-pin CERDIP (Ceramic Dual In Line Package).

GNDA14A13A12A11A10A9A8

D7 / A7D6 / A6D5 / A5D4 / A4D3 / A3D2 / A2D1 / A1D0 / A0

NMIinterrupt

clockGND

1 402 393 384 375 366 357 348 339 3210 8088 31

12 2913 2814 2715 2616 2517 2418 2319 2220 21

VccA15A16/S3A17/S4A18/S5A19/S6SS0min/maxreadholdhold ackwriteIO/memDT/RDENALEinterrupt acktestreadyreset

Page 43: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 35

Pada i8088 ada beberapa pin yg harus diperhatikan (mode Minimum) :

Pin Nama Fungsi Tipe

1,20 GND disambungkan dengan Ground (0 Volt) Pow40 VCC disambungkan dengan power +5 V DC Pow

9-16 AD7–AD0Address line (A0 – A7) + Data line (D0 – D7)(termultipleks dalam time / TDMA) I/O

2-8 A8 – A14 Address line (A8 – A14) Out35-39 A15 – A19 Address line (A15 – A19) Out

25 ALEAddress Latch Enable (Active High)jika ‘1’ berarti pin 9 – 16 (AD0 – AD7) = Address Bus (A0 – A7)jika ‘0’ berarti pin 9 – 16 (AD0 – AD7) = Data Bus (D0 – D7)

Out

18 INTR sinyal interupsi dari suatu I/O (Active High)yang menyebabkan i8088 melakukan service khusus In

24 INTA Interrupt Acknowledge (Active Low)(balasan dari i8088 ke I/O yg mengirim sinyal interupsi) Out

19 CLK masukan untuk frekuensi kerja (clock) In21 RESET Menginisialisasi semua register (Active High) In

28 IO / MMemori (Low) ataukah I/O (High) yg diakses oleh i8088 ?jika ‘1’ (High Voltage) berarti yg diakses adalah I/Ojika ‘0’ (Low Voltage) berarti yg diakses adalah memori

Out

29 WRSinyal Write (Active Low) berarti i8088 akan menulis dataAddress bus telah berisi alamat valid dari sel yg akan ditulisData bus telah berisi data valid dari data yg akan ditulis

Out

30 HLDA Hold Acknowledge (Active High) yg menandakanbahwa i8088 telah memutuskan dirinya dari bus Out

31 HOLD Sinyal Hold (Active High) meminta i8088 memutuskanhubungan dengan Address Bus dan Data Bus (untuk DMA) In

32 RD Sinyal Read (Active Low) berarti i8088 akan membaca data(Address bus telah berisi alamat valid dari data yg akan dibaca) Out

33 MN / MXMenset i8088 untuk bekerja pada salah satu modejika ‘1’ (High Voltage) berarti bekerja dalam mode Minimumjika ‘0’ (Low Voltage) berarti bekerja dalam mode Maximum

In

Active High : pin tersebut dianggap aktif jika dalam kondisi High Voltage (VCC)Active Low : pin tersebut dianggap aktif jika dalam kondisi Low Voltage (Ground)In : arah sinyal masuk ke dalam i8088Out : arah sinyal keluar dari i8088Pow : Power Line (catu daya)

Inisialisasi register saat Reset diaktifkan: semua register akan berisi data 0000 kecualiCS=FFFF.

Page 44: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 36

SILABUS

MATA KULIAH : MIKROPROSESOR – I

SATUAN KREDIT SEMESTER: 2

SEMESTER :

TUJUAN : MEMAHAMI CARA KERJA MIKROPROSESOR

PRE - REQUISITESOrganisasi Komputer

Arsitektur Komputer

Sistem Digital

SILABUS SINGKAT

Struktur Mikroprosesor: Struktur Internal Mikroprosesor, Signal-signal Mikroprosesor

Mikroprosesor Populer : 8080, 8088, 6800, Pemilihan Mikroprosesor, Pemograman Mikroprosesor

Set Intruksi dan Addressing Mode , Timing

Teknik Input-output, Jenis Input-output , Memory Mapped I/O, Data Transferred Serial Paralel,

Handshaking, PIO, ACIA, VIA, Katalog Analog Digital, Fungsi Konverter, Cara Kerja ADC dan DAC.

Sistem Interupsi, Fungsi Interupsi, response Interupsi, Tranducer dan Controller, Tranduser

Pengukuran dan Sisten Kontrol

PRA AJARKonsep Dasar Mikroprosesor

Page 45: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 37

Prinsip Kerja Mikroprosesor

POST AJAR

Memahami prinsip dasar dan kerja dari Mikroprosesor

DAFTAR PUSTAKAAnanta Candrakasan, William J Bowhill, Frank Fox, Design f High-performance microprocessorcircuit, IEEE Press, 2001.

Avtar Singh, Walter A. Triebel, The 8088 Microprocessor Programming, Interfacing, Software,Hardware, and Applications, Prentice Hall, 1989

Branco, Suacek, Microprosessor and Microcomputer, John Wiley and sons, 1982

Barry B Brey, The Intel Microprocessors, Architecture, Programming and Interfacing, Prentice Hall,2003.

Douglas V. Hall, Microprocessor and Interfacing: Programming and Hardware, McGraw-Hill, edition2, 1991.

http://developer.intel.com/design/pentium II & III/Manual/

Gene A. Streit Matter, Vito Fiore, Microprocessors Theory and Applications, Prentice Hall, 1982

James Antonakos, Kenneth C Mansfield, Microcomputer Hardware, Software, and Troubleshootingfor engineering and technology, Prentice Hall, 2000

James W Strwart, Kai X. Miao, The 8051 Microcontroller Hardware, Software amd Interfacing,Second Edition, Prentice Hall, 1999

John P. Shen,Mikko H. Lipasti, Modern Processor Design: Fundamentals of Superscalar Processor,Beta Edition, McGraw Hill, 2002

Paulus Andi Nalwan, Teknik Antarmuka dan Pemprograman Mikrokontroller AT89C51 Elex MediaKomputindo, 2003.

Peter Abel, IBM PC Assembly Language and Programming, Prentice Hall, 2001.

Rizkiawan, Tutorial Perancangan Hardware Jilid II, Elex Media Komputindo, 1996.

Soepono Soeparlan, Seri Dktat Kuliah Pengantar Mikroprosesor 8086/8088, 80186, 80286, 80386dan 80486 : Arsitektur, pemrograman, dan interfacing, Gunadarma, 1995.

Technical Education Council, Mikroprosssor Pripciples, Hutchkinson and Co, London, 1982

Tokheim, Microcomputers Fundamentals, McGraw Hill, 1986

Page 46: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 38

Zaks, Rodnay. Terj. S.H. Nasution : Dari chip ke Sistem : Pengantar Mikroprosesor, PT. Erlangga,Jakarta, 1986

DAFTAR REFERENSI MICROPROCESSOR

1. Ananta Candrakasan, William J Bowhill, Frank Fox, Design f High-performance microprocessor circuit, IEEE Press, 2001.

2. Avtar Singh, Walter A. Triebel, The 8088 Microprocessor Programming,Interfacing, Software, Hardware, and Applications, Prentice Hall, 1989.

3. Branco, Suacek, Microprosessor and Microcomputer, John Wiley and sons,1982

4. Barry B Brey, The Intel Microprocessors, Architecture, Programming andInterfacing, Prentice Hall, 2003.

5. Douglas V. Hall, Microprocessor and Interfacing: Programming andHardware, McGraw-Hill, edition 2, 1991.

6. http://developer.intel.com/design/pentium II & III/Manual/7. Gene A. Streit Matter, Vito Fiore, Microprocessors Theory and Applications,

Prentice Hall, 19828. James Antonakos, Kenneth C Mansfield, Microcomputer Hardware,

Software, and Troubleshooting for engineering and technology, PrenticeHall, 2000.

9. James W Strwart, Kai X. Miao, The 8051 Microcontroller Hardware,Software amd Interfacing, Second Edition, Prentice Hall, 1999.

10. John P. Shen,Mikko H. Lipasti, Modern Processor Design: Fundamentalsof Superscalar Processor, Beta Edition, McGraw Hill, 2002.

11. Paulus Andi Nalwan, Teknik Antarmuka dan PemprogramanMikrokontroller AT89C51 Elex Media Komputindo, 2003.

12. Peter Abel, IBM PC Assembly Language and Programming, Prentice Hall,2001.

13. Rizkiawan, Tutorial Perancangan Hardware Jilid II, Elex MediaKomputindo, 1996.

14. Soepono Soeparlan, Seri Dktat Kuliah Pengantar Mikroprosesor8086/8088, 80186, 80286, 80386 dan 80486 : Arsitektur, pemrograman,dan interfacing, Gunadarma, 1995.

15. Technical Education Council, Mikroprosssor Pripciples, Hutchkinson andCo, London, 1982

16. Tokheim, Microcomputers Fundamentals, McGraw Hill, 198617. Zaks, Rodnay. Terj S.H. Nasution : Dari chip ke Sistem : Pengantar

Mikroprosesor, PT. Erlangga, Jakarta, 1986

Page 47: DIKTAT - Official Site of Dr. Aqwam Rosadi Kardian ...aqwamrosadi.staff.gunadarma.ac.id/Downloads/files/14853/... · Web viewword 8. Dunia digital menggunakan 2 buah tegangan (0 volt

Aqwam Rosadi K. SKom.,MM. 2009

D I K T A T A J A R HAL - 39