224
MIKROPROSESOR Mikroprosesor / Ir.Sahrum,M.M. Jl. Suroto Kunto N0.47 Rawa Gabus – Johar – Karawang Telepon : (0267) 400475 – 4000476 http://www.pranataindonesia.ac.id 1

MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

MIKROPROSESOR

Mikroprosesor / Ir.Sahrum,M.M.

Jl. Suroto Kunto N0.47 Rawa Gabus – Johar – KarawangTelepon : (0267) 400475 – 4000476http://www.pranataindonesia.ac.id

1

Page 2: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

MIKROPROSESORDosen : Ir. Sahrum, MMAlamat : Dusun Sukamaju Rt.02 Rw.10

Cikampek Timur – CikampekKode Pos: 41373HP : Home : (0264)Email : Web :

Mikroprosesor / Ir.Sahrum,M.M. 2

Page 3: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

SAP MIKROPROSESOR

1. KONSEP DASAR ARSITEKTUR MIKROPROSESOR 2 DAN 3 DIAGRAM BLOK MIKROPROSESOR, REGISTER 4. HIMPUNAN INSTRUKSI

Pengertian Himpunan Instruksi Mnemonic Jenis Instruksi

5. JENIS PENGALAMATAN 6 KOMUNIKASI DENGAN MIKROPROSESOR 7 DAN 8 SISTEM INTERUPSI 9. DIRECT MEMORY ACCESS STUDI KASUS STUDI KASUS

,

Mikroprosesor / Ir.Sahrum,M.M. 3

Page 4: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

KESEPAKATAN

Mata Kuliah : MikroprosesorSKS : 2

Tatap Muka : 14 x pertemuan pertemuan ke 7 = Mid

semester pertemuan ke 14 = ujian

semesterPenilaian :

Kehadiran = 10%Tugas= 20%Mid Smt = 30%Ujian Smt = 40%

Grade Range NilaiA =81 – 100B =66 – 80C =55 – 65 D =45 – 54E =<44

Page 5: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

TATA TERTIB

Kehadiran : Toleransi keterlambatan 15 Menit If ada yg mengabsenkan temannya then : yang mengabsenkan = alpa (tk) Yang diabsenkan juga = alpa (tk) diakhir pertemuan dilakukan pengabsenan

ulang Kehadiran berpengaruh kepada kemampuan

dalam penyerapan materi yg diberikan

Page 6: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

TATA TERTIB

Lain-Lain : - Waktu perkuliahan

Tidak boleh pakai kaos oblongKaos harus berkerah

Tidak boleh merokokHarus memakai sepatu

Page 7: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

MIKROPROSESOR

Mikroprosesor / Ir.Sahrum,M.M.

PENDAHULUAN

7

Page 8: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Pengantar Mikroprosesor

Mikroprosesor : merupakan suatu alat digital yang bekerja :

Menerima data dari sejumlah masukan,

memproses data menurut ketentuan-ketentuan program yang disimpan dan

menghasilkan sejumlah sinyal keluaran sebagai akibat dari pemrosesan data tersebut.

Mikroprosesor Ideal??

Input 1/0

Pro

gra

m Keluaran 1/0

Mikroprosesor / Ir.Sahrum,M.M.

8

Page 9: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor IdealProgram :

suatu kumpulan dari serangkaian perintah yang berurutan yang menentukan bagaimana suatu data masukan diproses dan informasi apa yang harus dikirmkan ke saluran-saluran keluaran akibat data dari masukan ini.Masukan (N) dan keluaran (M) dihubungkan ke perangkat/alat Logika 1/0.

Keluaran dari Mikroprosesor (MP) ditentukan :1. Riwayat yg lengkap dari sinyal masukan ke MP sampai saat ini.2. Program yang disimpanContoh Aplikasi : - Sistem Komputer- MP untuk mengendalikan lampu lalulintas dengan sistem cerdas.

Page 10: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

BUS DATA MP pada kenyataanya tidak

seperti MP ideal, ada keterbatasan saluran N, M dan program/serta memori yang simpan.

Biasanya N=M Lebar jejak data (ukuran kata = word size)

Saluran N dan M, untuk mengangkut data ke dan dari MP Bus Data (satuan = bit)

8 bit = 1 byte 4 bit = 1 nyble

Mikroprosesor / Ir.Sahrum,M.M.

10

Page 11: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Contoh sebuah MP 4 bit

4 saluran masukan dan 4 saluran keluaran.

Simbol bisa dilihat pada gambar.

Mikroprosesor / Ir.Sahrum,M.M.

11

Page 12: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Pengenalan Biner, Octal dan Hexadesimal

MSB dan LSB.Pada gambar 1-4 : D7 MSB D0 LSBMSB ←1110 1011 LSBditulis degan cara :11101011 B atau 111010112

Konversi biner ke desimal atau sebaliknya?

Mikroprosesor / Ir.Sahrum,M.M.

12

Page 13: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Angka Oktal

Oktal : bilangan berbasis 8

Mengenal 0 - 7 Konversi ke Biner :Contoh : 11101011 B?11 101 011 biner 3 5 3 oktalAkan ditulis :353 Q atau 3538

Mikroprosesor / Ir.Sahrum,M.M.

13

Page 14: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

HeksadesimalBilangan berbasis 160 – 9, A – F

Konversi Biner ke Hexa1110 1011 Biner E B Heksadesimal

Akan ditulis : EB H atau EB16

Lebih ringkas dan efisien dalam pemulisan daripada binernya

Mikroprosesor / Ir.Sahrum,M.M.

14

Page 15: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Bus Data 2 arah

Mengapa 2 arah : Efisiensi ruang/ bentuk

sebuah MP dan penyemat (pin)

DBIN pengontrol DBIN = 1

Mode masukan DBIN = 0

Mode keluaran Notasi ??

Mikroprosesor / Ir.Sahrum,M.M.

15

Page 16: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

BUS ALAMATMemori dalam MP akan

terbatas, perlu penyimpanan di luar MP Bus Alamat

Proses : Penulisan memori Pembacaan memoriInformasi disimpan dalam

memori pada suatu kumpulan lokasi memori.

Setiap lokasi memori mempunyai Alamat memori tertentu (ditulis dalam notasi Heksa)

Mikroprosesor / Ir.Sahrum,M.M.

16

Page 17: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Memori

MP dengan p saluran alamat maka dia bisa dihubungkan dengan 2P alamat tertentu.

MP Z80 dengan 16 saluran alamat, makan memori yang secara langsung bisa dihubungi :

216 = 65636 Bytes = 64 KB)1 KByte = 1024 Byte

Mikroprosesor / Ir.Sahrum,M.M.

17

Page 18: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Address Word

Kata alamat (address word) dalam suatu MP biasa dinyatakan dalam Hexadesimal (lebih simpel daripada biner-nya).

Contoh : Bus alamat 16 bit (dari A0 – A15) dengan alamat bus-nya 1110001111111111 akan ekivalen dengan :

1110 0011 1111 1111 binerE 3 F F hexa

Mikroprosesor / Ir.Sahrum,M.M.

18

Page 19: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Ruang Memori

Seluruh kumpulan dari lokasi memori suatu MP yang dapat dihubungi.

Menggunakan notasi Heksa Pada bus alamat 16 bit alamat

0000 H – FFFF H (65536 ruang memori)

1 ruang memori 1 Byte. 210 = 1024 (kilo kata/ Kilo

word)

Mikroprosesor / Ir.Sahrum,M.M.

19

Page 20: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Ruang Memori

Pemahaman tentang Ruang Memori.

Misalnya : 0000 - 0FFF 4 KByte 1000 - 1FFF 4 KByte 0000 – FFFF 64 KByte

Mikroprosesor / Ir.Sahrum,M.M.

20

Page 21: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Ruang Memori

Pemahaman tentang Ruang Memori

Misalnya :0000 – 03FF 1 KB0400 – 07FF 1 KB0800 – 0BFF 1 KB0C00 – 0FFF 1 KB

0000 – 00FF 1 halaman (1 page) ¼ KB

Mikroprosesor / Ir.Sahrum,M.M.

21

Page 22: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Bus Pengendali

Mengendalikan 2 Bus yang lain, pengendali masukan dan keluaran u/ meyerempakan dengan perangkat luar.

Misalnya :

DBIN

(Pengendali Bus data 2 arah)

Mikroprosesor / Ir.Sahrum,M.M.

22

Page 23: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor secara Umum

Terdiri dari: 1.???? 2, ???? 3. ????

Proses kerjanya bagaimana?

Perlu Memori (bisa internal/ekstenal).

Mikroprosesor / Ir.Sahrum,M.M.

23

Page 24: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor

Mikroprosesor / Ir.Sahrum,M.M.

Pengertian Mikroprosesor

24

Page 25: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Pengertian Mikroprosesor

Mikroprosesor adalah suatu pemroses mikro yang dapat menjalankan suatu urutan instruksi (program) untuk mencapai suatu tujuan/fungsi tertentu.

Untuk menjalankan fungsinya, suatu mikroprosesor biasanya memerlukan dukungan

n ROM (Read Only Memory), untuk menyimpan program

n RAM (Random Access Memory), untuk menyimpan data

n I/O unit, sebagai interface untuk mengambil data dari luar dan mengeluarkan data hasil proses

Mikroprosesor / Ir.Sahrum,M.M.

25

Page 26: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Saluran Standar Mikroprosesor

Mikroprosesor / Ir.Sahrum,M.M.

26

Page 27: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

l Clock Speed (mis : Pentium 100 MHz, Pentium 1.3 GHz)

l Lebar Bus Data l Lebar Bus Alamat l Bus Speed l Arsitektur (cache memory, pipeline, dll)

Faktor Penentu Kinerja Mikroprosesor

Mikroprosesor / Ir.Sahrum,M.M.

27

Page 28: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Evolusi Mikroprosesor

Intel : 4004, 8008, 8086, 80286, 80486, Pentium, Pentium Pro

l Motorola : l Zilog : Z80, Z8000

Mikroprosesor / Ir.Sahrum,M.M.

28

Page 29: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Konfigurasi Standar Sistem Mikroprosesor

Mikroprosesor / Ir.Sahrum,M.M.

29

Page 30: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Saluran-Saluran Pada Bus Alamat

Mikroprosesor / Ir.Sahrum,M.M.

30

Page 31: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Saluran-Saluran Pada Bus Data

Mikroprosesor / Ir.Sahrum,M.M.

31

Page 32: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Saluran-Saluran Penting Pada Bus Kontrol

Mikroprosesor / Ir.Sahrum,M.M.

32

Page 33: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Baca Tulis Memori dan I/O

Mikroprosesor / Ir.Sahrum,M.M.

33

Page 34: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Contoh Instruksi dan Status Saluran

Mikroprosesor / Ir.Sahrum,M.M.

34

Page 35: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

RAM

Mikroprosesor / Ir.Sahrum,M.M.

35

Page 36: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Saluran Penting RAM

Mikroprosesor / Ir.Sahrum,M.M.

36

Page 37: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Hubungan RAM dengan Mikroprosesor

Mikroprosesor / Ir.Sahrum,M.M.

37

Page 38: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

ROM

Mikroprosesor / Ir.Sahrum,M.M.

38

Page 39: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Saluran Penting Memori (ROM)

Mikroprosesor / Ir.Sahrum,M.M.

39

Page 40: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Hubungan ROM dengan Mikroprosesor

Mikroprosesor / Ir.Sahrum,M.M.

40

Page 41: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Penentuan address decoder

Mikroprosesor / Ir.Sahrum,M.M.

41

Page 42: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Rangkaian Lengkap

Mikroprosesor / Ir.Sahrum,M.M.

42

Page 43: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Kapasitas RAM dan ROM

Pada kenyataannya, kapasitas RAM dan ROM tidak sekecil seperti contoh yang sudah kita bahas (4 byte)

l RAM dan ROM biasanya berkisar mulai ratusan byte sampai dengan ratusan kilobyte atau bahkan mega byte.

Mikroprosesor / Ir.Sahrum,M.M.

43

Page 44: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Hubungan dengan unit I/O

Hubungan mikroprosesor dengan unit I/O dilakukan dengan cara yang sama seperti penentuan hubungan memori

Kapasitas alamat I/O biasanya jauh lebih kecil daripada memori, berkisar antara beberapa lokasi (kurang dari 10) sampai dengan puluhan atau ratusan lokasi alamat.

Beberapa informasi penting : Untuk besaran digital, pada prinsipnya dapat dihubungkan

langsung dengan unit I/O Untuk besaran analog, harus ditambahkan unit A/D atau D/A

converter Untuk tegangan/arus tinggi biasanya dilakukan isolasi supaya

tidak merusak mikroprosesor

Mikroprosesor / Ir.Sahrum,M.M.

44

Page 45: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Pemrograman

Dalam sistem mikroprosesor, semua bagian sistem dikendalikan oleh mikroprosesor.

Mikroprosesor harus dilengkapi dengan program untuk menentukan “bagaimana sistem harus bekerja”

Program biasanya dibuat dalam bahasa mesin atau asembler, disimpan dalam ROM

Mikroprosesor / Ir.Sahrum,M.M.

45

Page 46: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikrokontroler

Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah chip yang dibutuhkan tidak “satu” dan perlu interkoneksi eksternal yang tidak sederhana.

Mikrokontroler adalah mikroprosesor yang sudah dilengkapi dengan RAM, ROM dan I/O yang dikemas dalam kemasan “single chip”.

Mikrokontroler digunakan secara luas pada berbagai aplikasi.

Mikroprosesor / Ir.Sahrum,M.M.

46

Page 47: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Contoh Aplikasi

Mikroprosesor / Ir.Sahrum,M.M.

47

Page 48: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor

Mikroprosesor / Ir.Sahrum,M.M.

PERTEMUAN KE-3 DIAGRAM BLOK MIKROPROSESSOR

48

Page 49: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Macam – Macam Komputer

IBM Z900 SUN CT400APPLE iMAC DELL LATITUDE

SONY Play Station

Paralax Basic Stamp

Compaq iPaq

Page 50: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Struktur Komputer

Central Processing Unit (CPU): untuk mengolah instruksi program yang diberikanInput & Output Circuity/Interface: untuk mengatur komunikasi antara komputer dengan perangkat luar Memori: untuk menyimpan program dan data

Page 51: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Personal Computer

CPU

Memori

I/O Interfa

ce

Page 52: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Motherboard

Gigabyte GA-8IPE1000 Pro2-W

Page 53: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

CPU (Central Processing Unit)

Bagian dari komputer yang mengolah data, mengambil instruksi dari memori, mengkode instruksi dan menjalankan program

Page 54: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor adalah sebuah chip (IC) yang bekerja dengan programFungsi Mikroprosesor adalah sebagai pengontrol atau pengolah utama dalam suatu rangkaian elektronikMikroprosesor biasa disebut juga CPU (Central Processing Unit)

Page 55: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Di dalam Mikroprosesor minimalCara kerja sebuah Mikroprosesor diarahkan oleh suatu program dalam kode-kode bahasa mesin yang telah dimasukkan terlebih dahulu ke dalam sebuah memori terdiri dari rangkaian digital, register, pengolah logika aritmatika, rangkaian sekuensial

Page 56: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Perbedaan Mikroprosesor dan Mikrokontroler

Mikroprosesor adalah bagian CPU (Central Processing Unit) dari sebuah komputer, tanpa memori, tanpa I/O, dan peripheral yang dibutuhkan oleh sebuah sistem lengkap. Contoh : 8088, 80X86, 8031

Mikrokontroler adalah sebuah Mikroprosesor yang dikombinasikan dengan I/O dan memori (RAM/ROM). Contoh : AT89C51, 68HC11, BS2SX

Page 57: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikrokontroler biasa disebut juga Single Chip Microcomputer (SCM) yaitu sebuah Mikrokomputer yang dikemas dalam sebuah chip tunggal.Namun ada perbedaan antara Mikrokomputer sdengan Mikrokontroler, yaitu pada penggunaan perangkat I/O dan media penyimpan. IBM PC menggunakan disket atau harddisk sebagai media penyimpan, sedang Mikrokontroler menggunakan EPROM Mikrokontroler

Page 58: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Komponen Mikroprosesor

Arithmetic and Logic Unit (ALU):

untuk mengolah / memanipulasi data

Control Unit:

untuk menentukan waktu, urutan, dan kecepatan dari operasi

Register:

untuk menyimpan data sementara meskipun instruksi sedang dieksekusi

Register ALU Control Unit

Program Counter

Memory Address

Accumulator

Status Register

Instruction Register

Page 59: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah
Page 60: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Register

Accumulator : data yang dioperasikan oleh ALU Status register : status dari proses Instruction pointer (IP) : lokasi dari kode Memory address register : alamat dari data Instruction register : instruksi-instruksi dari registerGeneral-purpose register : tempat penyimpanan sementara untuk data atau alamat Stack pointer register (SP) : area khusus dari memori untuk menyimpan alamat. Berlaku sistem FILO

Page 61: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Memori

MemoriAddress

Control Signal

Data

Page 62: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Jenis - Jenis Memori

Untuk menyimpan Firmware:Read Only Memory (ROM) : Fixed programProgrammable ROM (PROM) : One time rogrammableErasable and Programmable ROM (EPROM) : Erasable with Ultraviolet lightElectrically Erasable PROM (EEPROM) : Erasablelectricity

Untuk menyimpan Software :Random Access Memory (RAM) : Read/write memory

Page 63: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

ROM

Diprogram oleh pabrik pembuat IC ROMTidak ada data yang dapat ditulis ke dalam ROMData hanya dapat dibaca dan digunakan untuk program yang permanenData tidak akan hilang meskipun tegangan listrik dihilangkan (bersifat non-Volatile)Misalnya : sistem BIOS, printer, CD-ROM, dll.

Lexmark ROM

Page 64: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

PROM, EPROM, & EEPROM

Isi memori dapat diganti atau diprogram PROM hanya dapat diprogram sekaliEPROM dan EEPROM dapat diprogram kembali setelah isi memori dihapus oleh sinar ultraviolet atau tegangan listrik, seperti Flash memory Misalnya Flash media, cell phone, home appliances, dll.

Page 65: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

PROM, EPROM, & EEPROM

EEPROM Secure Digital

Programmer UV Eraser

Page 66: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

RAM

Untuk menyimpan data sementaraHanya berfungsi jika ada tegangan listrik (Volatile) Data akan hilang jika listrik dihilangkanTermasuk di dalamnya Static RAM, Dynamic RAM, Synchronous DRAM, Rambus DRAM, dll. Misalnya : Computer RAM, printer, dll.

Page 67: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Media Penyimpan Lainnya

Magnetic storage : Hard Disk, Tape, dll.Optical storage : CD-ROM, CD-R, CD-RW, DVD, dll.5 level media penyimpan :

RegisterCacheMemoryHard DiskRemovable Disk

Page 68: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Input / Output

Untuk transfer data antara mikroprosesor dan perangkat luar (peripheral devices)Interface chips (buffers) digunakan untuk mensinkronkan data transfer antara mikroprosesor dan peripheral devicesContoh : port serial, parallel, USB, IEEE 1394, IDE, SCSI, dll.

CPU BufferPeripheral Devices

Data Data

Page 69: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

CPU Intel

4004 8080 Pentium 2

Pentium 3 Pentium 4

Page 70: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Desain IC

Page 71: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Designer Intel 4004

Federico Faggin, chief designer of Intel 4004

Page 72: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Perkembangan CPU Intel

Name Date TransistorsWidth

(micron)

Clock Speed

Data Width MIPS

4004 1971 2.3 K 108 KHz 4 0.06

8080 1974 6 K 6 2 MHz 8/8 0.64

80386 1985 275 K 1.5 16 MHz 32/32 5

Pentium 1993 3.1 M 0.8 60 MHz 32/64 100

Pentium 4 2000 42 M 0.18 1.5 GHz 32/64 1700

2004 169 M ? 3.2 GHZ 64/64 ?

Data Width : x/y = x-bit ALU / y-bit bus

MIPS : Million Instructions Per Second

Page 73: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Sejarah Mikroprosesor

Th. 1946 : Komputer modern pertama dibuat di University of Pennsylvania USA yang disebut ENIAC (Electronics Numerical Integrator and Calculator)ENIAC terdiri dari 17.000 tabung hampa, 500 mil kabel, berat > 30 ton, dapat menjalankan 100.000 operasi per detik, diprogram dengan mengatur jalur kabel pada rangkaiannya

Page 74: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Th. 1948 : Transistor pertama dibuat di Bell Labs, USATh. 1958 : IC (Integrated Circuit) pertama dibuat oleh Jack Kilby dari Texas Instrument, USAPenemuan IC ini mendorong pengembangan IC Digital (1960), dan mikroprosesor pertama oleh Intel (1971)

Page 75: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Penemuan IC ini mendorong pengembangan IC Digital (1960), dan mikroprosesor pertama oleh Intel (1971)Mikroprosesor pertama di dunia adalah Intel 4004 upakanprosesor 4-bitKebanyakan Kalkulator masih berbasis mikroprosesor 4-bit

Page 76: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Th. 1971 : Intel mengeluarkan mikroprosesor 8-bit yaitu Intel 8008Th. 1973 : Intel memperkenalkan mikroprosesor 8-bit modern pertama Intel 8080 (10x lebih cepat dari 8008), dan diikuti Motorola MC6800Th. 1977 : Intel memperkenalkan 8085 yang merupakan mikroprosesor 8-bit terakhir yang dibuat Intel dengan frek.clock dan kecepatan lebih tinggiPerusahaan lain yang mampu menyaingi Intel 8085 adalah Zilog Corporation dengan Z80

Page 77: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Th. 1978 : Intel mengeluarkan mikroprosesor 16-bit yaitu 8086, setahun kemudian mengeluarkan 8088 dengan kecepatan eksekusi dan memori lebih besar dari 8085, serta mulai digunakannya cache memori (sistem antrian yang mengatur pemberian instruksi sebelum menjalankannya)

Intel 8086/8088 disebut juga CISC (Complex Instruction Set Computer) karena jumlah dan kompleksitas instruksinyaTh. 1981 : IBM membuat PC menggunakan mikroprosesor 8088 untuk menjalankan aplikasi seperti spreadsheet dan pengolah kata

Page 78: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Th. 1983 : Intel mengeluarkan mikroprosesor 16-bit 80286, dengan kemampuan memori 16 MBTh. 1986 : Intel mengeluarkan mikroprosesor 32-bit pertama 80386, dengan kemampuan memori 4 GBTh. 1989 : Intel mengeluarkan mikroprosesor 32-bit 80486, dengan kemampuan memori 4 GB + 8K CacheTh. 1993 : Intel memperkenalkan mikroprosesor 32-bit Pentium I, Th. 1997 Pentium II,kemudian berturut-turut Pentium III dan Pentium 4 pada Th. 2000, dimana mulai digunakan teknologi memori RAMBUS menggantikan teknologi SDRAM

Page 79: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor Masa Depan

Perubahan ke teknologi RISCParallel Processing tanpa mengubah set instruksi dengan register yang samaVersi Intel berikutnya Parallel Processing dengan register sendiri-sendiriAkhir Th. 2002 Intel mulai berencana mengeluarkan mikroprosesor 64-bit dgn bus data 128 bit bekerjasama dengan Hewlett Packard

Page 80: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Perkembangan Pemrograman

Bahasa pemrograman pertama adalah Bahasa Mesin terdiri dari kode biner yang disimpan dalam sistem memori komputer sebagai sekelompok instruksi yang disebut program, yang dikembangkan pertama kali oleh John Von Neumann, seorang ahli matematika.

Page 81: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Th. 1950 : Bahasa Assembler diperkenalkan pertama kali ketika komputer UNIVAC mulai muncul. Bahasa Assembler menggunakan kode mnemonicFLOW-MATIC merupakan Bahasa pemrograman tingkat tinggi pertama dibuat oleh Grace HopperTh. 1957 : IBM mengembangkan bahasa FORTRAN (Formula Translator)Th. 1958 : ALGOL (Algoritma Language) diperkenalkan

Page 82: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Bahasa pemrograman pertama yang banyak digunakan untuk aplikasi bisnis adalah COBOL (Computer Business Oriented Language)Pada saat ini, banyak muncul bahasa pemrograman yang lain seperti BASIC, C/C++, PASCAL, dll. Versi baru dari bahasa BASIC, yaitu VISUAL BASIC mungkin akan menggantikan C/C++ atau PASCAL

Page 83: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor

Mikroprosesor / Ir.Sahrum,M.M.

HIMPUNAN INSTRUKSI

83

Page 84: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Desain Set Instruksi

Pekerjaan yang paling signifikan/penting dan kompleks dalam mendesain komputer adalah membuat set instruksi.

Komputer era sebelumnya tidak melakukan perencanaan set instruksi.

Kelemahan desain set instruksi mereka secara drastis mempengaruhi ruang memori utama oleh panjang program (bahasa mesin). Karena itu, desain yang baik, perencanaan awal set instruksi memungkinkan compiler membuat kode objek yang kompak (tersusun baik dan padat) tersimpan pada ruang memori.

Mikroprosesor / Ir.Sahrum,M.M.

84

Page 85: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Seorang arsitektur komputer harus mempertimbangkan aspek-aspek berikut sebelum menyelesaikan set instruksi:

1. Kenyamanan Pemrograman: Jumlah instruksi; pemrogram lebih suka mempunyai sebanyak mungkin instruksi supaya operasi yang tepat dapat dikerjakan oleh rangkaian instruksi. Tetapi mempunyai terlalu banyak instruksi dalam set instruksi menghasilkan desain unit kontrol yang kompleks. Pendekokean instruksi memerlukan sirkuit dan waktu yang besar.

2. Pengalamatan yang fleksibel: pemrogram senang jika memungkinkan semua mode pengalamatan operand ada di dalam arsitektur. Hal ini memberikan fleksibilas yang banyak kepada pemrogram.Walaupun desain unit kontrol menjadi kompleks.

3. Jumlah General Purpose Register (GPR): Jika CPU mempunyai register yang banyak, pemrogram memperoleh pemrosesan dan transfer data yang cepat. Tetapi biaya perangkat keras CPU meningkat dengan banyaknya GPR.

Mikroprosesor / Ir.Sahrum,M.M.

85

Page 86: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> Lanjutan

4. Target Segmen Pasar: sasaran bidang aplikasi untuk komputer memerlukan operasi-operasi khusus untuk pemrosesan data yang efisien. Komputer saintifk harus mempunyai aritmetika floating-point yang tingkat presisinya baik/tidak terlalu jelek. Sedangkan komputer bisnis harus mendukung aritmetika desimal, komputer iburan harus mempunyai operasi-operasi multimedia.

5. Kinerja Sistem: Jika sebuah program mempunyai instruksi sedikit, kinerja sistem meningkat karena waktu yang digunakan oleh CPU dalam pengambilan instruksi berkurang. Untuk program yang pendek, instruksi yang digunakan harus instruksi kompleks. Jadi instruksi tunggal harus dapat melakukan beberapa mikrooperasi. Pemrogram menyadari hal ini mengurangi ukuran program. Tapi di sisi lain menambah kompleksitas unit kontrol dan waktu eksekusi instruksi. Konsep modern arsitektur RISC tidak mendukung instruksi-instruksi kompleks, walaupun semua komputer lama yang berbasis CISCmenggunakan instruksi-instruksi kompleks.

Mikroprosesor / Ir.Sahrum,M.M.

86

Page 87: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

SET INSTRUKSI

1. Intstruksi Transfer Data2. Instruksi Aritmetika3. Instruksi Looping4. Instruksi Jump5. Operasi Stack6. Operasi Logika

Page 88: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

1. TRA

Page 89: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

INSTRUKSI TRANSFER DATA

MOVFormat : MOV [operarand-1],[operand-2]

Operand 1 : Register, Variabel, Lokasi Memory

Operand 2 : Register, Variabel, Lokasi Memory, Bilangan

MOV AH,AL ; menduplikatkan isi register AL ke register AH.

Operand 1 : Register AH

Operand 2 : Register AL

Page 90: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Instruksi Transfer Data (Cont.)

MOV AH,02 ; memasukkan bilangan 02 ke register AHOperand 1 : Register AH

Operand 2 : Bilangan 02

Page 91: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

INSTRUKSI ARITMATIKA

INC (Increment), operasi pertambahan dengan satu

Format : INC [Register/Variabel]

A = A + 1

DEC (Decrement), operasi pengurangan dengan satu

Format : DEC [Variabel/Register]

A = A – 1

Page 92: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Instruksi Aritmetika (Cont.)

Operasi Pertambahan Selain Satu

Format : ADD [operand-1, operand-2] ; menjumlahkan isi operand 1 dengan operand 2 dan hasil disimpan di operand 1

Operand 1 : Register, Variabel

Operand 2 : Register, Variabel, Bilangan

AH ………….. 10

AL ………….. 5 +

AH …………. 15

Page 93: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Instruksi Aritmatika (Cont.)

Operasi Pengurangan Selain SatuFormat : SUB [OPERAND 1, OPERAND 2] mengurangkan isi operand 1 dengan operand 2 dan hasil disimpan di operand 1

Operand 1 : Register, Variabel

Operand 2 : Register, Variabel, Bilangan

AH …….. 15

AL …….. 10 -

AH 5

Page 94: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Instruksi Aritmatika (Cont.)

Operasi Perkalian 8 BitFormat : MUL [Register] mengalikan isi register BL dengan isi register AL dan hasil disimpan di register AX

MUL BL

BL ……… 04

AL ……… 08 x

AX ……... 32

Page 95: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Instruksi Aritmatika (Cont.)

Operasi Perkalian 16 BitFormat : MUL [REGISTER] ;mengalikan isi register BX dengan isi register AX, hasil disimpan di register AX dan DX

MUL BXBX …………… 12900AX …………… 10000 xDX AX … 129000000 = 7B0 6240

DX AX

Page 96: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Instruksi Aritmatika (Cont.)

Operasi Pembagian 8 BitFormat : DIV [Register] membagi isi register AX dengan isi register BL dan hasil disimpan di register AL dan sisa di register AH

DIV BL

hasil sisa

AL AH

BL AX

Page 97: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Instruksi Aritmatika (Cont.)

Operasi Pembagian 16 BitFormat : DIV [Register] membagi isi register DX :AX dengan isi register BX dan hasil pembagian dimasukkan dalam register DX sedangkan sisa hasil pembagian dimasukkan dalam register AX

DIV BX

hasil sisa DX AX

BX DX:AX

Page 98: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

INSTRUKSI LOOPING

LOOP, instruksi Looping

Format : LOOP [lokasi memori]Mengulang instrksi alamat memory * sebanyak 5

kali. Setiap kali pengulangan processor akan mengurangi isi register CX sampai 0. Kemudian proses akan berlanjut ke instruksi di bawah loop.CX = 5

……

……

LOOP *

……..

Page 99: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Instruksi Looping (Cont.)

JMP, instruksi lompatan tak bersyarat

Format : JMP[lokasi memori]Melakukan lompatan tanpa syarat ke lokasi memori

segment : 0103JMP 0103

CMP, instruksi lompatan bersyarat

Format : CMP [operand-1],[operand-2]

Operand-1 : variabel, register

Operand-2 : variabel, register, lokasi memori, bilangan

Page 100: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Instruksi Looping (Cont.)

JE (Jump If Equal) JNE (Jump If Not Equal) JG (Jump If Greater Than) JNG (Jump If Not Greater Than) JNGE (Jump If Not Greater or Equal) JE (Jump If Less Than) JLE (Jump If Less or Equal) JNL (Jump If Not Less Than) JNLE (Jump If Not Less or Equal) JA (Jump if Above) JNA (Jump If Not Above or Equal) JNAE (Jump If Not Above or Equal)

JNS (Jump On Not Sign) JC (Jump On Carry) JNC (Jump On Not Carry) JCXZ (Jump If CX=0) JB (Jump If Below) JBE (Jump If Below or Equal) JNBE (Jump If Not Below or Equal) JZ (Jump On Zero) JNZ (Jump On Not Zero JS (Jump On Sign)

Jenis-jenis Lompatan Bersyarat :

Mikroprosesor / Ir.Sahrum,M.M.

100

Page 101: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

OPERASI STACK

Operasi yang digunakan untuk menyimpan sementara suatu nilai pada alamat offset terakhir pada suatu segment

Stack bersifat LIFO (Last In First Out)

Beberapa contoh perintah yang digunakan dalam operasi stack : PUSH [register 16 bit]

Digunakan untuk menyimnpan nilai di register 16 bit ke dalam stack POP [register 16 bit]

Digunakan untuk mengambil kembali stack,kemudian disimpan di register 16 bit PUSHF

Digunakan untuk menyimpan nilai flag register ke dalam stack POPF

Digunakan untuk mengambil isi stack, kemudian disimpan di dalam flag register F.

Page 102: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

OPERASI LOGIKA

Beberapa Operasi Logika yang digunakan :1. AND 2. OR3. XOR

AND OR XOR

0 0 0 0 0

0 1 0 1 1

1 0 0 1 1

1 1 1 1 0

Page 103: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor

Mikroprosesor / Ir.Sahrum,M.M.

Tipe & Format instruksi

103

Page 104: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

1. Desain Set Instruksi Pekerjaan yang paling signifikan/penting dan

kompleks dalam mendesain komputer adalah membuat set instruksi.

Komputer era sebelumnya tidak melakukan perencanaan set instruksi.

Kelemahan desain set instruksi mereka secara drastis mempengaruhi ruang memori utama oleh panjang program (bahasa mesin). Karena itu, desain yang baik, perencanaan awal set instruksi memungkinkan compiler membuat kode objek yang kompak (tersusun baik dan padat) tersimpan pada ruang memori.

Mikroprosesor / Ir.Sahrum,M.M.

104

Page 105: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Seorang arsitektur komputer harus mempertimbangkan aspek-aspek berikut sebelum menyelesaikan set instruksi:

1. Kenyamanan Pemrograman: Jumlah instruksi; pemrogram lebih suka mempunyai sebanyak mungkin instruksi supaya operasi yang tepat dapat dikerjakan oleh rangkaian instruksi. Tetapi mempunyai terlalu banyak instruksi dalam set instruksi menghasilkan desain unit kontrol yang kompleks. Pendekokean instruksi memerlukan sirkuit dan waktu yang besar.

2. Pengalamatan yang fleksibel: pemrogram senang jika memungkinkan semua mode pengalamatan operand ada di dalam arsitektur. Hal ini memberikan fleksibilas yang banyak kepada pemrogram.Walaupun desain unit kontrol menjadi kompleks.

3. Jumlah General Purpose Register (GPR): Jika CPU mempunyai register yang banyak, pemrogram memperoleh pemrosesan dan transfer data yang cepat. Tetapi biaya perangkat keras CPU meningkat dengan banyaknya GPR.

Mikroprosesor / Ir.Sahrum,M.M.

105

Page 106: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> Lanjutan 4. Target Segmen Pasar: sasaran bidang aplikasi untuk

komputer memerlukan operasi-operasi khusus untuk pemrosesan data yang efisien. Komputer saintifk harus mempunyai aritmetika floating-point yang tingkat presisinya baik/tidak terlalu jelek. Sedangkan komputer bisnis harus mendukung aritmetika desimal, komputer iburan harus mempunyai operasi-operasi multimedia.

5. Kinerja Sistem: Jika sebuah program mempunyai instruksi sedikit, kinerja sistem meningkat karena waktu yang digunakan oleh CPU dalam pengambilan instruksi berkurang. Untuk program yang pendek, instruksi yang digunakan harus instruksi kompleks. Jadi instruksi tunggal harus dapat melakukan beberapa mikrooperasi. Pemrogram menyadari hal ini mengurangi ukuran program. Tapi di sisi lain menambah kompleksitas unit kontrol dan waktu eksekusi instruksi. Konsep modern arsitektur RISC tidak mendukung instruksi-instruksi kompleks, walaupun semua komputer lama yang berbasis CISCmenggunakan instruksi-instruksi kompleks.

Mikroprosesor / Ir.Sahrum,M.M.

106

Page 107: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

2. CPU berbasis Akumulator

Pada mulanya komputer adalah berbasis akumulator. Hal ini merupakan CPU yang sederhana, dimana akumulator berisi satu operand pada instruksi, demikian juga hasilnya disimpan pada akumulator. Isi akumulator disertakan di dalam operasi-0perasi aritmetika seperti penjumlahan, pengurangan dan sebagainya. Hal ini dikenal sebagai mesin satu-alamat.

PDP-8 merupakan minicomputer pertama yang mempunyai jenis CPU seperti ini dan digunakan untuk kendali proses dan aplikasi-aplikasi laboratorium.

Komputer Mark I juga merupakan komputer khas yang berbasis akumulator.

Organisasi CPU secara total telh digantikan dengan diperkenalkan CPU berbasis register yang baru.

Mikroprosesor / Ir.Sahrum,M.M.

107

Page 108: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Keuntungan CPU berbasis akumulator adalah:

1. Isi akumulator diperuntukkan bagi satu operand. Karena itu tidak memerlukan medan alamat operand (untuk satu operand) dalam instruksi. Hal ini menghasilakn instruksi yang pendek dan ruang memori yang sedikit. Karena tidak adanya medan alamat, maka jenis CPU ini mendukung instruksi-instruksi non-alamat dan satualamat. Instruksi satu-alamat mempunyai satu operand di dalam memori utama dan yang lainnya di dalam akumulator.

2. Siklus instruksi menggunakan waktu yang singkat sebab menghemat waktu dalam pengambilan instruksi karena tidak ada siklus pengambilan operand.

Mikroprosesor / Ir.Sahrum,M.M.

108

Page 109: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Kekurangan CPU berbasis akumulator adalah:

1. Ukuran programnya menjadi panjang karena banyak menggunakan instruksi dalam ekspresi-ekspresi kompleks. Karena itu ukuran memori bertambah.

2. Waktu eksekusi program bertambah karena bertambahnya jumlah instruksi dalam program.

Mikroprosesor / Ir.Sahrum,M.M.

109

Page 110: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> Contoh1: Tuliskan sebuah program bahasa rakitan dalam arsitektur CPU

berbasis akumulator untuk menyelesaikan statement X=(A+B)-(C+D)

Solusi: LOAD A : Salin A ke dalam akumulator ADD B : Jumlahkan B dengan isi akumulator dan hasilnya disimpan

di akumulator ( akumulator berisi A+B) STORE T : simpan hasil AB dalam T, suatu lokasi memori sementara LOAD C : salin C ke dalam akumulator ADD D : Jumlahkan D ke dalam akumulator dan simpan hasilnya

dalam akumulator (akumulator berisi C+D) SUB T : Perkurangkan isi akumulator dari T dan simpan hasilnya

dalam akumulator STORE X : Simpan isi akumulator di dalam lokasi memori X.

Mikroprosesor / Ir.Sahrum,M.M.

110

Page 111: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

3. CPU Berbasis Register Pada CPU jenis ini, banyak register yang

digunakan sebagai akumulator. Dengan kata lain, ada lebih dari satu akumulator.

CPU seperti ini mempunyai organisasi register umum GPR (general purpose register). Penggunaan register-register tersebut menghasilkan program yang pendek dengan instruksi yang sedikit. IBM System/360 dan PDP-11 merupakan contoh khas.

Mikroprosesor / Ir.Sahrum,M.M.

111

Page 112: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> Contoh2: Tuliskan sebuah program bahasa rakitan dalam arsitektur CPU

berbasis register untuk menyelesaikan statement X=(A+B)-(C+D)

Solusi:LOAD R1,A : salin A ke dalam registerADD R1,B : Jumlahkan B dengan isi R1 dan hasilnya disimpan di R1LOAD R2,C : salin C ke dalam R2ADD R2,D : Jumlahkan D ke dalam R2 dan simpan hasilnya di R2SUB R1,R2 : perkurangkan isi R2 dan R1 dan simpan hasilnya dalam R1STORE,X : simpan hasil di dalam lokasi memori X

Mikroprosesor / Ir.Sahrum,M.M.

112

Page 113: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Dibandingkan dengan contoh1 terlihat bahwa CPU berbasis register (arsitektur GPR) menghasilkan ukuran program yang lebih pendek daripada CPU berbasis akumulator.

Dan juga program pada CPU yang berbasis akumulator memerlukan lokasi memori untuk menyimpan asil sementara(parsial).

Karena itu diperlukan akses memori tambahan selama eksekusi program.

Jadi, penambahan jumlah register akan menambah efisiensi CPU.

Mikroprosesor / Ir.Sahrum,M.M.

113

Page 114: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

3.CPU Berbasis Stack Stack merupakan daftar yang didorong ke bawah dengan mekanisme

akses LIFO (Last In Firs Out). Stack yang menyimpan operand-operand. Penggunaan stack dapat berada di dalam CPU atau merupakan bagian

dari memori. Suatu register(atau lokasi memori) digunakan untuk menunjuk ke

alamat lokasi kosong pada puncak stack. Register ini dikenal dengan Stack Pointer (SP).

Bila tidak ada yang tersimpan dalam stack, berarti stack kosong dan SP menunjuk ke bagian stack terbawah.

Bila suatu item disimpan di dalam stack, maka dinamakan oerasi PUSH; dan isi SP diturunkan (decrement)

Bila stack penuh, SP menunjuk ke bagian stack teratas. Bila suatu item diambil dari satck(operasi POP),maka SP dinaikkan

(uncrement).Mikroprosesor / Ir.Sahrum,M.M.

114

Page 115: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> Konsep Stack

Mikroprosesor / Ir.Sahrum,M.M.

115

Page 116: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> Operasi Stack

Mikroprosesor / Ir.Sahrum,M.M.

116

Page 117: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Keterangan konsep stack & operasi stack: Item yang terakhr didorong ke dalam stack, akan

keluar pertama jika ada operasi POPberikutnya. Pada CPU berbasis stack, semua operasi oleh CPU

dikerjakan pada isi stack. Demikian halnya,hasil suatu operasi juga disimpan

pada stack. Pada eksekusi suatu instruksi aritmetika seperti ADD,

operand-operand teratas yang di-pop Komputer Burroughs B5000 dan HP 3000 merupakan

contoh dari komputer berbasis stack.

Mikroprosesor / Ir.Sahrum,M.M.

117

Page 118: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Contoh3:

Tuliskan sebuah program bahasa rakitan dalam arsitektur CPU berbasis stack untuk menyelesaikan statement X=(A+B)-(C+D)

Mikroprosesor / Ir.Sahrum,M.M.

118

Page 119: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Dari isi stack, dapat dilihat bahwa stack berubah bil beberapa operasi PUSH mendapat tempat.

Bila suatu instruksi dieksekusi, operand dipindahkan dari stack dan hasilnya menempati posisi pada puncak stack.

Contoh3 menunjukkan bahwa ukuran program untuk komputer berbasis stack lebih besar dibandingkan dengan CPU berbasis register.

Mikroprosesor / Ir.Sahrum,M.M.

119

Page 120: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Keuntungan CPU berbasis Stack adalah:1. Pemrograman mudah/efisiensi compiler tinggi2. Sangat cocok untuk bahasa-bahasa blok-

terstruktur (block-structered language)3. Instruksi tidak mempunyai fieldalamat; instruksi

pendek. Kelemahan CPU berbasis Stack:1. Diperlukan sirkuit hardware tambahan untuk

implementasi stack2. Ukuran program meningkat.

Mikroprosesor / Ir.Sahrum,M.M.

120

Page 121: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

4. Panjang Istruksi Intruksi yang terlalu panjang mempunyai kekurangan:1. Instruksi menempati ruang memori yang lebih besar, yang

meningkatkan kebutuhanmemori sistem2. lebar luas data besar atau pengambilan instruksi lebih

memakan waktu. Kondisi pertama menambah biaya hardware sedangkan yang kedua menambah waktu siklus instruksi.

Instruksi yang terlalu pendek mempunyai kekurangan:1. Terlalu banyak instruksi di dalam program. Karena itu banyak

waktu yang terbuang untuk fase pengambilan2. Ukuran program bertambah. Karena itu kebutuhan memori

bertambah.

Mikroprosesor / Ir.Sahrum,M.M.

121

Page 122: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

5. Format Instruksi Umumnya format instruksi terdiri dari kode

operasi dan operand. Suatu instruksi memberikan palng banyak empat

informasi pada CPU :1. Operasi yang akan dikerjakan oleh instruksi2. Operand (data) yang harus dioperasikan3. Lokasi (memori atau register) di mana hasil

operasi harus disimpan4. Lokasi memori dimana instruksi berikutnya harus

diambilInstruksi Empat-alamat

Mikroprosesor / Ir.Sahrum,M.M.

122

Page 123: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

contoh4 Medan panjang instruksi dan medan alamat operand

masing-masing adalah 36 bit dan 14 bit. Jika instruksi dua-operand yang digunakan sebanyak 240, berapa banyak instruksi satu-operand yang memungkinkan?

Solusi:Panjang instruksi = 36 bitsebuah instruksi dua-operand membutuhkan 28 bituntuk alamat operand (2x14 bit).karena itu Ukuran opcode=36-28 = 8bitTotal instruksi yang mungkin = 2 pangkat 8 = 256Jumlah instruksi satu-operand= 256-240 = 16

Mikroprosesor / Ir.Sahrum,M.M.

123

Page 124: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

6. Lokasi Operand Ada beberapa pilihan dalam menempatkan operand (lokasi operand) yaitu

pada: memori utama, register CPU, I/O port dan pada instruksi itu sendiri. Membiarkan operand dalam register CPU lebih efektif daripada

mengambilnya dari memori utama karena waktu akses register CPU lebih singkat. Hasil ini mengurangi waktu siklus instruksi.

Penempatan operand dalam instruksi digunakan untuk instruksiinstruksi khusus saja.

Isi suatu port dapat digunakan sebagai operand seperti halnya isi suatu lokasi memori.

Ada beberapa instruksi yang tidak mempunyai operand. Contoh yang khas adalan instruksi HALT dan NOOP. Ada beberapa instruksi yang berfungsi untuk menguji status komponen-

komponen hardware seperti register, flip-flop, lokasi memori dsb. Pada kasus ini, tidak terdapat operand,demikian halnya ada beberapa

instruksi yang hanya mencari sejumlah sinyal eksternal.

Mikroprosesor / Ir.Sahrum,M.M.

124

Page 125: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

7.Lokasi hasil pemrosesan

Ada beberapa pilihan dalam menyimpan hasil pemrosesan instruksi yaitu: memori utama, register CPU, poer keluaran dsb.

Beberapa instruksi seperti HALT dan NOOP secara eksplisit tidak mempunyai hasil untuk disimpan sedangkan beberapa instruksi hanya men-set atau mereset flip-flop atau register.

Mikroprosesor / Ir.Sahrum,M.M.

125

Page 126: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

8. Urutan data Little-endian dan Big-endian

Ada dua metode konvensi yang diikuti untuk penempatan informasi dalam memori dan pengalamatan yaitu:

Penempatan dengan Big-endian Penempatan dengan Little-endian Pada metode big-endian, MSB (most significant byte)

disimpan pada alamat bawah dan LSB (least significant byte) disimpan pada alamat atas.

Pada metode litlle-endian,LSB(least significant byte) disimpan pada alamat bawah dan MSB ( Most significant byte) disimpan pada alamat atas.

Mikroprosesor / Ir.Sahrum,M.M.

126

Page 127: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Anggap kita mempunyai sebuah informasi 32-bit

12345678(hexa) yang akan disimpan didalam lokasi memori 1000 ke atas.

Karena terdapat 4-byte, maka informasi menempati alamat 1000 sampai 1003.

Mikroprosesor / Ir.Sahrum,M.M.

127

Page 128: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Jika kita mempunyai data 64-bit (8-byte), maka 4-byte sisanya dilanjutkan lagi dari alamat 1004 ke atas dengan menggunakan cara yang sama.

Metode big-endian lebih natural pada sebagian besar orang karena lebih mudah untuk membaca posisi hex.

Mikroprosesor / Ir.Sahrum,M.M.

128

Page 129: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

9. Tipe Instruksi Instruksi-instruksi diklasifikasikan dalam tipe yang berbeda

berdasarkan faktor-faktor berikut: 1. opcode: kode operasi yang harus dikerjakan oleh

instruksi. 2. Data: tipe data:biner,desimal dan sebagainya 3. Lokasi Operand: memori, register dan sebagianya 4. Pengalamatan Operand: metode penentuan lokasi

operand (alamat) 5. Panjang Instruksi: satu byte, dua byte dan

sebagainya 6. Jumlah Medan alamat: nol alamat, satu alamat,

dua alamat dan sebagainya.

Mikroprosesor / Ir.Sahrum,M.M.

129

Page 130: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Instruksi-instruksi dapat diklasifikasikan ke dalam delapan jenis:1. Instruksi transfer data:instruksi ini menyalin data dari satu register/lokasi

memori ke yang lainnya.2. Instruksi aritmetika: instruksi ini melakukan operasi-operasi aritmetika3. Instruksi Logika: instruksi ini melakukan operasi-operasi logika boolean4. Instruksi transfer kontrol: instruksi ini melakukan modifikasi/mengubah

urutan eksekusi program.5. Instruksi I/O: instruksi ini melakukan transfer antara peripheral eksternal

dan inti sistem(CPU/memori)6. Instruksi Manipulasi String: Instruksi ini melakukan manipulasi string byte,

word, double word dan sebagainya.7. Instruksi translate: instruksi ini melakukan konversi data dari satu format

ke format lain.8. Instruksi kontrol prosesor: instruksi ini melakukan kontrol operasi prosesor.

Mikroprosesor / Ir.Sahrum,M.M.

130

Page 131: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Tabel beberapa contoh instruksi untuk setiap jenis instruksi

Mikroprosesor / Ir.Sahrum,M.M.

131

Page 132: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Tabel beberapa contoh instruksi untuk setiap jenis instruksi lanjutan(1)

Mikroprosesor / Ir.Sahrum,M.M.

132

Page 133: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Tabel beberapa contoh instruksi untuk setiap jenis instruksilanjutan (2)

Mikroprosesor / Ir.Sahrum,M.M.

133

Page 134: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Tabel beberapa contoh instruksi untuk setiap jenis instruksilanjutan (3)

Mikroprosesor / Ir.Sahrum,M.M.

134

Page 135: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Tabel beberapa contoh instruksi untuk setiap jenis instruksilanjutan (4)

Mikroprosesor / Ir.Sahrum,M.M.

135

Page 136: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Tabel beberapa contoh instruksi untuk setiap jenis instruksi

lanjutan (5)

Mikroprosesor / Ir.Sahrum,M.M.

136

Page 137: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Tabel beberapa contoh instruksi untuk setiap jenis instruksi

lanjutan (6)

Mikroprosesor / Ir.Sahrum,M.M.

137

Page 138: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor

Mikroprosesor / Ir.Sahrum,M.M.

MODE PENGALAMATAN

138

Page 139: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mode Pengalamatan Ada dua cara yang biasa digunakan dalam

penempatan operand instruksi yaitu pada lokasi memori utama dan register CPU.

Jika operand ditempatkan pada memori utama, alamat lokasi harus diberikan oleh instruksi dalam medan operand.

Banyak metode yang berguna yang dipakai untuk menentukan alamat operand.

Mode yang berbeda dalam penentuan alamat operand pada instruksi dikenal dengan addressing mode (mode pengalamatan).

Mikroprosesor / Ir.Sahrum,M.M.

139

Page 140: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

lanjutan1 Suatu komputer bisa saja tidak menggunakan semua

mode pengalamatan tersebut. Mode pengalamatanyang populer adalah:1. Pengalamatan immediate2. Pengalamatan langsung (absolute)3. Pengalamatan tak-langsung4. Pengalamatan tak-langsung register5. Pengalamatan register6. Pengalamatan indeks7. Pengalamatan relatig8. Pengalamatan Base dengan indeks dan offset

Mikroprosesor / Ir.Sahrum,M.M.

140

Page 141: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

lanjutan2 Berikut adalah tujuan yang mempengaruhi arsitek komputer

ketika memilih mode pengalamatan :1. Mengurangi panjang instruksi dengan mempunyai medan yang pendek untuk alamat.2. Menyediakan bantuan yang tangguh kepada pemrogram untuk penanganan data kompleks seperti pengindeks-an sebuah array, kontrol loop, relokasi program dan sebagainya.

Mode pengalamatan yang tepat yang digunakan oleh suatu instruksi adalah ditunjukkan pada unit kontrol, ada dua cara yaitu:

1. Medan terpisah dalam instruksi menunjukkan mode pengalamatan yang digunakan, seperti yang diberikan pada gambar dibawah ini.

2. Opcode sendiri yang secara eksplisit menunjukkan mode pengalamatan yang digunakan dalam instruksi.

OPCODE

MODE PENGALAMA

TAN

MEDANOPERAN

D-1

MEDAN OPERAND-2

Mikroprosesor / Ir.Sahrum,M.M.

141

Page 142: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

1. Pengalamatan Immediate

Format instruksi pengalamatan immediate Mode pengalamata immediate merupakan mode pengalamatan

yangtidak melakukan aktifitas pengambilan operand. Pada contoh yang diberikan berikut adalah dalam statement bahasa

rakitan. Tanda # digunakan untuk menunjukkan bahwa konstanta yang mengikuti tanda tersebut adalah immediate operand.

MOVE #26,R1 atau MVI R1,26 isikan(load) ekivalen biner 26 ke register R1

ADD #26,R1 tambahkan ekivalen biner 26 ke dalam R1 dan simpan hasilnya pada R1

CMP #26,R1 atau CMI R1,26 bandungkan isi R1 dengan ekivalenbiner 26

OPCODE OPERAND

Mikroprosesor / Ir.Sahrum,M.M.

142

Page 143: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Keuntungan dan Kelemahan Keuntungan: Operand tersedia di dalam instruksi segera

setelah pengambilan instruksi berakhir. Karena itu siklus instruksi lebih cepat.

Kelemahan: Nilai operand dibatasi oleh panjang medan

operand dalam instruksi Praktek pemrograman kurang fleksibel, karena

setiap perubahan nilai operand memerlukan perubahan pada instruksi.

Mikroprosesor / Ir.Sahrum,M.M.

143

Page 144: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

2. Pengalamatan Langsung

Format instruksi pengalamatan langsung

Karena alamat operand secara eksplisit diberikan di dalam instruksi, mode ini disebut pengalamatan langsung.

OPCODE

ALAMAT MEMORI

OPERAND

MEMORI

Mikroprosesor / Ir.Sahrum,M.M.

144

Page 145: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> lanjutan Contoh statement bahasa rakitan berikut memberikan

ilustrasi mode ini: LOAD R1,X salin isi lokasi memori X ke dalam

register R1 MOV Y,X salin isi lokasi memori X ke dalam

lokasi Y. Kedua operand ini menunjukkan penggunaan mode

pengalamatan langsung. JUMP X transfer kontrol program ke instruksi

pada lokasi memori X dengan mengisikan X ke PC (X bukan operand tetapi alamat pencabangan).

Mikroprosesor / Ir.Sahrum,M.M.

145

Page 146: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> lanjutan

>> Keuntungan & Kerugian Pengalamatan Langsung

Keuntungan: Karena alamat operand tersedia langsung

dalam instruksi, maka tidak dibutuhkan langkah kalkulasi alamat operand.

Karena itu waktu siklus instruksi berkurang. Kekurangan: jumlah bit untuk alamat operand dibatasi oleh

medan operand dalam instruksi

Mikroprosesor / Ir.Sahrum,M.M.

146

Page 147: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

3. Pengalamatan Tak Langsung

Format instruksi pengalamatan tak-langsung memori

Karena mode pengalamatan tak-langsung dapat melalui sebuah lokasi memori atau register, maka dapat dilakukan dengan dua cara, yaitu:

1. Pengalamatan tak-langsung memori: jika sebuah lokasi memori digunakan untuk menyimpan alamat operand.

2.Pengalamatan tak-langsung register: jika sebuah register digunakan untuk menyimpan alamat operand.

Mikroprosesor / Ir.Sahrum,M.M.

147

Page 148: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> lanjutan Instruksi memberikan alamat lokasi (X), dimana lokasi ini

berisialamat lokasi lain (Y) yang merupakan lokasi operand. Hal inidapat direprensentasikan sebagai berikut: <X>=Y, <Y>=operand

Y dikenal sebagai pointer. Nilai Y (alamat) dapat diganti secara dinamis dalam suatu program tanpa mengganti instruksi dengancara melakukan modifikasi sederhana pada isi lokasi X.

Pengalamatan tak-langsung multilevel dapat dimungkinkan. Contoh berikut adalah ilustrasi mode pengalamatan

taklangsung: MOVE (X),R1 isi dari lokasi yang mempunyai alamat

Xdisalin ke register R1

Mikroprosesor / Ir.Sahrum,M.M.

148

Page 149: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> Keuntungan dan Kelemahan pengalamatan tak-langsung

Keuntungan: Mempunyai fleksibilitas dalam program;

perubahan alamat selama program berjalan tanpa mengubah isi instruksi.

Kelemahan: Waktu siklus instruksi bertambah

karenadua akses memori dibutuhkan untuk sebuah pengalamatan tak langsung sengle-level

Mikroprosesor / Ir.Sahrum,M.M.

149

Page 150: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

4. Pengalamatan Tak-langsung Register

Format instruksi pengalamatan tak langsung register

Pada mode ini, register digunakan untuk menjaga alamat dari operand daripada operand itu sendiri.

Jadi register bertindak sebagai alamat memori

Mikroprosesor / Ir.Sahrum,M.M.

150

Page 151: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> Lanjutan Mode ini sangat berguna untuk pengaksesan

cepat lokasi memori utama seperti array. Instruksi dengan mode tak-langsung register

adalah merupakan bagian dari loop. Pertama, alamat awal dari array disimpan di

dalam register. Bila instruksi ditemukan pertama, entry pertama dari array diakses. Kemudian isi register ditambah satu oleh instruksi lain di dalam loop, sebelum mendapati instruksi mode tak-langsungregister.

Mikroprosesor / Ir.Sahrum,M.M.

151

Page 152: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> Keuntungan Pengalamatan Tak-langsung Register

Keuntungan: Pemanfaatan efektif panjang instruksi,

karena nomor register ditentukan dengan sejumlah bit.

Mikroprosesor / Ir.Sahrum,M.M.

152

Page 153: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

5. Pengalamatan Register Format instruksi perngalamatan register Secara konseptual, pengalamatan register mirip

dengan pengalamatan langsung kecuali lokasi memori

digantikan dengan register untuk menyimpan operand.

Instruksi berisi nomor register yang mempunyai operand.

Mode pengalamatan ini sangat berguna untuk suatu program yang panjang dalam penyimpanan hasil-hasil sementara di dalam register daripada di dalam memori.

Mikroprosesor / Ir.Sahrum,M.M.

153

Page 154: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> Lanjutan: Contoh berikut adalah ilustrasi mode

pengalamatan register: ADD R1,R2Jumlah isi register R1 dan R2

dan hasilnya disimpan di R1. Kedua operand menggunakan pengalamatan register.

STORE R1,MEM1 isi dari register R1 disimpan/disalin ke alamat memori MEM1; operand pertama menggunakan pengalamatan register dan operand kedua menggunakan pengalamatan langsung.

Mikroprosesor / Ir.Sahrum,M.M.

154

Page 155: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> Keuntungan dan Kelemahan Pengalamatan Register

Keuntungan: pengambilan operand lebih cepat tanpa

akses memori Kelemahan: Jumlah register terbatas dan karena itu

utilisasi efektif oleh programmer merupakan hal yangesensial.

Mikroprosesor / Ir.Sahrum,M.M.

155

Page 156: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

6. Pengalamatan Indeks Format instruksi

pengalamatan Indeks

Pada mode pangalamatan indeks, alamat operand diperoleh dengan menambahkan sebuah konstanta ke suatu register, yang disebut register indeks.

Instruksi ini mengisi register Ri dengan isi lokasi memori yang alamatnya adalah hasil jumlah isi register Rind dan nilai X

Contoh: LOAD X(Rind),Ri instruksi ini menyalin operand alamat hasil

penjumlahan nilai X dengan nilai register Rind ke dalam register Ri

Mikroprosesor / Ir.Sahrum,M.M.

156

Page 157: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> lanjutan 1: Mode ini berbeda sedikti dengan mode pengalamatan base register. Register indeks berisi sebuah offset atau perpindahan (displacement). Instruksi berisi alamat yang akan ditambahkan pada offset dalam

register indeks, untuk mendapatkan alamat operand efektif. Umumnya medan alamat dalam instruksi memberikan alamat awal

array dalam memori. Register indeks berisi ‘nilai indeks’ untuk operand yaitu selisih antara

alamat awal dan alamat operand. Dengan mengubah register indeks, maka operand dalam array dapat

diakses. Umumnya operand-operand(elemen-elemen array) berada dalam

lokasi yang berurutan. Mereka diakses dengan increment yang sederhana pada register indeks.

Mikroprosesor / Ir.Sahrum,M.M.

157

Page 158: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> lanjutan2: Beberapa CPU mendukung fitur ‘autoindexing’,

yang melibatkan auto-increment (dengan hardware) pada register indeks kapanpun sutu instruksi dengan pengalamatan indeks dieksekusi.

Hal ini mengurangi penggunaan instruksi terpisah dalam menambah(increment) isi register indeks.

Hal ini juga lebih mempercepat aksi serta lebih mengurangi ukuran program. Namun memberikan tanggungjawab tambahan ‘autoindexing’ pada unit kontrol.

Mikroprosesor / Ir.Sahrum,M.M.

158

Page 159: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

7. Pengalamatan Relatif Format instruksi

pengalamatan relatif

Pengalamatan relatif sama seperti pengalamatan indeks kecuali register indeks diganti dengan program counter

(PC). Instruksi ini megisi Ri dengan kandungan lokasi memori

yang alamatnya adalah hasil jumlah program counter (PC) dengan nilai X

Mikroprosesor / Ir.Sahrum,M.M.

159

Page 160: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> Lanjutan3: Pada mode ini,instruksi menetapkan alamat operand (lokasi memori) sebagai posisi relatif dari alamat

instruksi sekarang yaitu isi PC. Karena itu operand terletakpada ‘jarak pendek’ dari isi PC.

Jumlah mode ini digunakan untuk menetapkan alamat pencabangan dalam instruksi branch, alamat pencabangan berada dekat dengan alamat instruksi.

Contoh:JUMP+8(PC)JUMP-8(PC)

Mikroprosesor / Ir.Sahrum,M.M.

160

Page 161: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>> Keuntungan Pengalamatan Relatif

Keuntungan: Jumlah bit dalam medan alamat lebih

sedikit

Mikroprosesor / Ir.Sahrum,M.M.

161

Page 162: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

8. Pengalamatan Base Register

Mode ini digunakan untuk relokasi program di dalam memori (dari satu area ke area lain).

Pada mode pengalamatan base register, instruksi tidak berisi alamat. Dia memberikan perpindahan relatif terhadap area memori sekarang ke area memori yang lain, base register diisi dengan alamat base baru.

Instruksi tidak perlu dimodifikasi/diubah. Dengan cara ini, keseluruhan program atau suatu segment dri program dapat

dipindahkan dari satu area di memori ke yang lain tanpa mempengaruhi instruksi, dengan perubahan sederhana ini base register.

Hal ini penting untuk sistem multiprogramming karena waktu yang berbeda (run), area berbeda dari memori tersedia untuk sebuah program.

Sebuah CPU dapat mempunyai lebih dari satu base register.

Mikroprosesor / Ir.Sahrum,M.M.

162

Page 163: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

>>Format Instruksi & keuntungan Pengalamatan Base Register

Format instruksi pengalamatan base register

Keuntungan: medan alamat operand dalam instruksi

sangat pendek karena dia hanya memberikan offset (perpindahan); alamat operand dikalkulasikan tanpa akses memori.

Mikroprosesor / Ir.Sahrum,M.M.

163

Page 164: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

9. Pengalamatan Stack Pada pengalamatan stack(tumpukan), semua operand

untuk suatu instruksi diambl dari bagian teratas stack. Instruksi tidak mempunyai medan operand. Misalnya, sebuah instruksi ADD hanya memberikan

opcode (ADD). Kedua operand dalam stack, di dalam lokasi yang berurutan. Bila instruksi ADD dieksekusi,dua operand di-pop-off dari stack satu persatu. Setelah penjumlahan, hasilnya di-push ke dalamstack.

Keuntungan: Tidak ada menda operand dalam instruksi, karena itu

instruksinya pendek.

Mikroprosesor / Ir.Sahrum,M.M.

164

Page 165: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor

Mikroprosesor / Ir.Sahrum,M.M.

INTERUPSI

165

Page 166: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Polling & Interupsi

Tinjau ilustrasi berikut, yaitu Sebuah sistem mikroprosesor yang dipasang pada sebuah sistem

kendali suatu proses. Proses tersebut mempunyai beberapa parameter atau variabel yang diukur menggunakan sensor dan tranduser. Sinyal analog dari tranduser kemudian dikonversi ke bentuk digital menggunakan ADC (analog to digital converter) sehingga dapat dibaca oleh komputer.

Proses konversi menggunakan ADC biasanya membutuhkan waktu (waktu konversi) yang cukup signifikan dibandingkan dengan kecepatan mikroprosesor dalam menjalankan suatu instruksi.

Jika proses konversi belum selesai, maka mikroprosesor harus menunggu sampai konversi selesai. Masalahnya adalah apabila komputer dibiarkan menganggur (idle) saat menunggu konversi selesai maka akan banyak waktu yang terbuang sementara sebetulnya kecepatan mikroprosesor yang cukup tinggi masih bisa dimanfaatkan untuk mengerjakan hal yang lain sembari menunggu.

Ketika data hasil konversi tersedia, maka ada 2 kemungkinan yang berhubungan dengan transfer data, yakni ADC secara pasif menunggu sampai mikroprosesor meminta data

darinya (cara POLLING) atau ADC itu sendiri yang secara aktif memberitahu mikroprosesor bahwa

data konversi telah tersedia (cara INTERUPSI).

Page 167: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

polling

Page 168: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Polling

Dengan cara ini, komputer diprogram untuk secara berkala dan bergiliran memeriksa apakah konversi telah selesai dan data di ADC telah tersedia. Biasanya dilakukan dengan cara memeriksa salah satu sinyal atau

pin yang ada di ADC yang menandakan bahwa data hasil konversi telah siap. Apabila sinyal tersebut sudah aktif maka data diambil oleh mikroprosesor, sedangkan bila belum aktif maka akan dibiarkan saja oleh mikroprosesor. Kemudian komputer memeriksa ADC berikutnya dan melakukan hal yang sama.

Demikian seterusnya.

Keuntungan program yang diperlukan dan prinsip kerjanya relatif lebih sederhana,

tidak memerlukan koneksi khusus dengan ADC yang dipakai.

Kekurangan kalau konversinya lambat maka seringkali komputer mendapati data

belum tersedia ketika memeriksa sebuah ADC, sehingga dapat dikatakan banyak pekerjaan yang sia-sia.

Page 169: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

INTERUPSI Interupsi Pada cara ini, memanfaatkan pin INTR atau NMI yang

digunakan untuk menginterupsi kerja mikroprosesor. Komputer dibiarkan melakukan pekerjaan yang telah diprogramkan

tanpa harus memeriksa setiap ADC apakah data telah siap atau belum.

Ketika data telah tersedia, sinyal yang menandakannya pada ADC dimanfaatkan untuk mengaktifkan sinyal INTR atau NMI sehingga komputer menghentikan apa yang sedang dikerjakannya untuk mengambil data hasil konversi dan kemudian meneruskan kembali pekerjaannya yang tadi diinterupsi.

Keuntungan cara ini : adalah komputer dapat lebih efisien dalam memanfaatkan waktu serta pada

program utamanya tidak perlu merisaukan untuk memeriksa piranti luar setiap saat. Kekurangannya

adalah diperlukan koneksi secara khusus dengan piranti yang dipakai serta pemrograman yang lebih kompleks untuk menangani interupsi

Page 170: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah
Page 171: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Tipe Interupsi

Pada mikroprosesor 8086, interupsi dapat berasal dari 3 kemungkinan:

1. dari sinyal yang diberikan oleh perangkat luar melalui pin NMI atau INTR, yang disebut interupsi secara perangkat keras (hardware interrupt)

2. berasal dari eksekusi instruksi interupsi (INT), disebut interupsi secara perangkat lunak (software interrupt)

3. dari suatu kondisi yang ditimbulkan karena suatu eksekusi, misalnya ketika prosesor diminta membagi suatu bilangan dengan nol, maka akan muncul interupsi, hal ini disebut interupsi kondisional

Page 172: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Proses interupsi Pada setiap selesai melaksanakan suatu instruksi, 8086 akan

memeriksa apakah ada permintaan interupsi. Jika ada dan flag interupsi pada mikroprosesor (IF) mempunyai nilai 1 atau set, artinya mikroprosesor mengijinkan adanya interupsi, maka dia akan mengerjakan hal-hal berikut (Gambar III-3):

1. menyimpan register flag ke dalam stack

2. mereset flag interupsi (IF) untuk mencegah interupsi berikutnya

3. mereset flag TF

4. menyimpan register CS dan IP ke dalam stack untuk mencatat posisi program yang sedang dijalankan sekarang

5. mengambil alamat rutin pelayanan interupsi dan kerjakan rutin tersebut sampai ditemui instruksi IRET (interupt return), yang menandai akhir dari rutin tersebut untuk kembali ke program semula

6. mengambil kembali posisi program semula (IP dan CS) dari stack

7. mengambil kembali nilai flag semula

8. jalankan instruksi berikutnya dari posisi sebagaimana sebelum adanya interupsi

Page 173: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah
Page 174: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Priority Interrupt Controller (PIC 8259A)

8086 hanya mempunyai sebuah pin INTR (di samping NMI). Namun seringkali terdapat lebih dari satu piranti yang perlu untuk menggunakan interupsi.

Oleh karena itu diperlukan komponen bantu untuk meningkatkan jumlah sinyal interupsi yang dapat dipakai oleh bermacam piranti.

Dalam hal ini, fungsi tersebut dilakukan oleh IC 8259A Priority Interrupt Controller (PIC) yang mempunyai arsitektur dalam seperti terlihat pada Gambar III-4.

Gambar

Page 175: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah
Page 176: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Koneksi PIC dengan Mikroprosesor

Pin D7-D0 terhubung ke bus data, A0 dan CS dihubungkan ke bus alamat dan

dekoder alamat, sementara RD, WR, INT, dan INTA

dihubungkan ke mikroprosesor pada sinyal yang bersesuaian.

Pin CAS2-CAS0 dan EN/SP digunakan untuk keperluan konstruksi 8259A bertingkat (master-slave) sehingga dapat menambah lagi jumlah interupsi yang tersedia.

Dengan sebuah PIC, kita akan mempunyai 8 interupsi yang dilewatkan pin IR0-IR7.

Page 177: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Sebelum PIC dipakai, terlebih dahulu harus memprogram sebuah kata kendali (control word) untuk inisialisasi dan mengatur kerja IC tersebut, misalnya nomor-nomor interupsi berapa saja yang

dipakai, bagaimana urutan prioritasnya, apakah sinyal interupsi berupa level-trigger

atau edge-trigger, serta apakah diperbolehkan terjadinya

interupsi secara bertingkat.

Page 178: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Standar Sinyal Interupsi

Page 179: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

DIRECT MEMORY ACCESS

(DMA)

Page 180: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

• Teknik Input Output

1. Programmed I/O

2. Interrupt driven I/O

3. Direct Memory Access (DMA)

• Mengapa DMA diperlukan ?

Karena programmed I/O dan interrupt driven I/O: Masih memerlukan keterlibatan CPU , sehingga CPU menjadi sibuk. Transfer rate data terbatas Interrupt-Driven I/O dirasa lebih efisien daripada programmed I/O,

namun Interrupt-Driven masih memerlukan intervensi aktif dari processor.

HISTORY

Page 181: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Instruksi transfer dataInstruksi pemindahan/transfer data yang tersedia

dalam mikroprosesor 8086, yaitu :

mikroprosesor ke memori atau sebaliknya (MOV), register ke port (OUT) dan sebaliknya dari port ke

register (IN). Dengan demikian, untuk memindahkan data dari

memori ke port dilakukan dengan kombinasi instruksi MOV dan OUT.

sedangkan transfer memindahkan data dari port ke memori dilakukan dengan kombinasi instruksi IN dan MOV.

Page 182: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah
Page 183: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Pada aplikasi tertentu, terutama untuk transfer data yang berukuran sangat besar misalnya pemindahan data file dari harddisk ke memori ini tidak efisien.

Transfer data akan menjadi lebih cepat apabila dapat dilakukan secara langsung dari memori ke port atau sebaliknya, tanpa melalui mikroprosesor. Mekanisme ini disebut direct memory access (DMA).

Page 184: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Direct Memory Access

Sebuah prosesor khusus (special purpose processor) yang berguna untuk menghindari pembebanan CPU utama oleh program I/O (PIO).

Definition

Page 185: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Fungsi modul DMA : Dapat menirukan sebagian fungsi prosesor Dapat mengambil alih fungsi prosesor yang

berhubungan dengan transfer data Kapan DMA bekerja ?

Saat prosesor sedang tidak menggunakan bus Saat prosesor dipaksa berhenti sesaat

(suspend) siklusnya “dicuri” oleh DMA disebut cycle stealing

Function of DMA

Page 186: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Direct Memory Access Controlled (DMAC) digunakan untuk mengontrol DMA di sistem komputer

DMAC menghubungkan langsung ke device I/O dan bus sistem. DMAC juga berhubungan dengan CPU.

DMAC menggunakan IC 8237

Implementing DMA

Page 187: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Blok diagram DMAC 8237

Page 188: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Urutan sinyal proses DMA Pada saat data akan diambil dari harddisk, disk controller mengirimkan sinyal DREQ ke 8237 DMA controller kemudian mengirimkan sinyal HRQ (hold

request), yaitu permintaan untuk meminjam bus, kepada mikroprosesor melalui kaki HOLD.

Mikroprosesor merespon permintaan tersebut dengan memutuskan hubungan dirinya ke bus dan mengirimkan sinyal HLDA (hold acknowledge) ke 8237 .

Setelah menerima sinyal tersebut, 8237 kemudian memindahkan switch ke bawah sehingga bus sekarang terhubung ke 8237. Dengan demikian kendali terhadap bus berada di tangan 8237.

Page 189: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Lanjutan -- urutan sinyal proses DMA

DMA controller kemudian mengirimkan alamat memori di mana data dari harddisk akan disimpan.

Selanjutnya, 8237 mengirimkan sinyal DACK ke disk controller untuk memberitahu agar siap mengirimkan data.

Kemudian, 8237 mengaktifkan sinyal pada bus kendali, yaitu MEMW (memory write), yang akan mengaktifkan memori dengan alamat yang dituju untuk menerima data, dan (I/O read), yang akan mengaktifkan disk controller untuk mengirimkan data.

Data kemudian ditransfer secara langsung dari port I/O ke memori tanpa melalui mikroprosesor maupun DMA controller.

Page 190: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Setelah jumlah data yang ditransfer , 8237 menonaktifkan sinyal HRQ ke mikroprosesor dan membebaskan bus dengan cara menaikkan kembali ketiga switch tadi.

Transfer secara DMA dari memori ke port I/O dapat dilakukan dengan cara yang mirip dengan di atas, namun kali ini DMA controller mengaktifkan sinyal MEMR (memory read), yang akan mengaktifkan memori dengan alamat yang dituju untuk mengirimkan data, dan IOW (I/O write), yang akan mengaktifkan port I/O untuk menerima data.

Page 191: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Keunggulan dari DMA :Performance komputer sistem ditingkatkan

dengan transfer data langsung antara memori dan I/O devices, tidak melibatkan CPU

CPU dibebas tugaskan dari transfer dataTransfer data jadi lebih cepat

Kelemahan dari DMA :Pada burst mode transfer data, CPU tidak aktif

untuk waktu yang lama

Page 192: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor

Mikroprosesor / Ir.Sahrum,M.M.

Studi kasusArsitektur Dasar µP 8086, 8088,

80286, 80386, dan Pentium

192

Page 193: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Outline

Mikroprosesor 80186/80188 Mikroprosesor 80286 Mikroprosesor 80386 Mikroprosesor PENTIUM

193Mikroprosesor / Ir.Sahrum,M.M.

Page 194: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80186/80188

Arsitektur1. Lebar data bus diantaranya sebagai berikut :

1. Mikroprosesor 80186 mempunyai bus data 16 bit

2. Mikroprosesor 80188 mempunyai bus data 18 bit

2. Struktur Register Internal dari 80186/80188 dan 8086/8088 secara virtual adalah sama.

3. Vektor Interupsi tambahan yang tidak digunakan dalam mikroprosesor 8086/8088 dan

4. Beberapa Built-In I/O yang sangat handal.

194Mikroprosesor / Ir.Sahrum,M.M.

Page 195: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80186/80188 (lanj)

195Mikroprosesor / Ir.Sahrum,M.M.

Page 196: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80186/80188 (lanj)

Intruksi Set1. Push Immediate (PUSHA dan POPA) :

Pemuatan awal stack dengan informasi.2. Integer Immendiate Multiplication

(IMUL) : Memungkinkan isi dari suatu integer atau lokasi memori untuk dimultiplied oleh byte.

3. Operant antara lain : tujuan, byte yang dekat, sumber.

196Mikroprosesor / Ir.Sahrum,M.M.

Page 197: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80186/80188 (lanj)

4. Shift and Rotate (SHL, SHR, ROL, ROR dan lainnya) : Dapat menggunakan hitungan yang dekat.

5. String I/O : INS dan OUTS, serta INSB dan OUTSB untuk mengirimkan byte data. INSW dan OUTSW untuk mengirimkan kata data.

6. BOUND : Mengecek batas bagian dari memori.

7. Enter dan Leave : Membuat dan meninggalkan frame stack untuk bahasa dengan level yang lebih tinggi.

197Mikroprosesor / Ir.Sahrum,M.M.

Page 198: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80286

Arsitektur Mikroprosesor 80286 adalah versi

mikroprosesor 8086 tingkat tinggi yang dirancang untuk multiuser dan lingkungan multitasking.

Mikroprosesor ini dapat mengalamatkan 16 Mbyte memori fisik dan 1 Gbyte virtual memori dengan menggunakan unit manajemen memori yang ditempatkan dalam mikroprosesor.

Mikroprosesor 80286 dioptimalkan untuk melaksanakan instruksi dengan putaran jam yang lebih sedikit dibandingkan dengan 8086.198Mikroprosesor / Ir.Sahrum,M.M.

Page 199: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80286 (lanj)

199Mikroprosesor / Ir.Sahrum,M.M.

Page 200: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80286 (lanj)

Intruksi Set1. Clear Task-switch Flag Instruction (CLTS) :

Jika 0 terjadi bit flag, sedangkan 1 dan koprosesor 80287 digunakan oleh task maka akan terjadi interupsi (tipe 9). Intruksi ini digunakan dalam program sistem dan hanya dilakukan dalam mode yang terlindung pada level istimewa nol.

2. Load Access Right (LAR) : Membaca segment dan menempatkan copy dari kanan akses ke dalam register 16 bit.

200Mikroprosesor / Ir.Sahrum,M.M.

Page 201: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80286 (lanj)

3. Load Segment Limit (LSL) : Memuat register yang ditentukan pemakai dengan batas segmen. Register ke-2 menunjukkan pemilih segmen yang mengalamatkan dimasukkan kedalam register pertama.

4. Adjust Requested Priviledge Level (ARPL) : Mengetes pemilih hingga level sektor yang diperlukan, yang istimewa, tidak terlanggar.

5. Verify for Read Access (VERR) : Menguji apakah segmen yang ditunjukkan oleh operandnya dapat dibaca atau tidak.

6. Verify for Write Access (VERW) : Menguji apakah segmen yang ditunjukkan oleh operandnya dapat dituliskan.

201Mikroprosesor / Ir.Sahrum,M.M.

Page 202: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80286 (lanj)

Mode Operasi1. Mode Real2. Mode Virtual

Mode Real Bit A19 – A0 yang aktif dan digunakan

untuk mengalamatkan 1 Mbyte memory. Hubungan Alamat A23-A20 berisi logika 0,

sehingga hanya 1 Mbyte memori yang pertama dapat dialamatkan.

Berfungsi secara sempurna tanpa adanya perubahan.

202Mikroprosesor / Ir.Sahrum,M.M.

Page 203: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80286 (Lanj)

Mode Virtual Mengalamatkan suatu lokasi dalam

rentangan alamat 16 Mbyte. Dikontrol oleh Memori Manajemen Unit Mengalamatkan ruang alamat virtual dari

1 Gbyte (jika diperlukan). Pengalamatan virtual diselesaikan oleh

MMU (Memori Manajemen Unit)

203Mikroprosesor / Ir.Sahrum,M.M.

Page 204: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80286 (Lanj)

204Mikroprosesor / Ir.Sahrum,M.M.

Page 205: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80286 (Lanj)

205Mikroprosesor / Ir.Sahrum,M.M.

Page 206: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80386

Arsitektur Mikroprosesor 80386 merupakan versi 32 bit

penuh dari mikroprosesor 16 bit 8086/80286 atau yang terdahulu dan merepresentasikan perkembangan besar pada aritektur peralihan dari arsitektur 16 bit ke arsitektur 32 bit.

Bersamaan dengan ukuran word yang lebih besar ini adalah banyaknya perbaikan dan fitur – fitur tambahan. 80386 juga mencakup registrasi ekstended 32 bit bus alamat dan data 32 bit.

206Mikroprosesor / Ir.Sahrum,M.M.

Page 207: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80386 (lanj)

Feature 80386 adalah : multitasking, manajemen memori, memori virtual dengan atau tanpa paging (pemberian nomor), perlindungan software, dan sistem memori yang besar.

Versi 80386 umum tersedia 80386DX dan 80386SX, yang merupakan versi dengan bus diperkecil dari 80386. Sedangkan versi 80386EX memakai sistem bus AT, kontroler RAM dinamik, logika seleksi chip yang dapat diprogram, 26 pin alamat, 6 pin data dan 24 pin I/O.

207Mikroprosesor / Ir.Sahrum,M.M.

Page 208: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80386 (lanj)

Level Tegangan 80386 yang bervariasi, sehingga membuat Mikroprosesor ini tersedia dalam beberapa kecepatan clock

208Mikroprosesor / Ir.Sahrum,M.M.

Page 209: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80386 (lanj)

Sistem MemoriSistem memori fisik dalam 80386 mempunyai ukuran 4 Gbyte dan dapat dialamatkan sedemikian, sehingga memori dibagi kedalam empat bank memori, dengan masing-masing bank berisi 1 Gigabyte. Karena dengan lebar 32 bit merupakan path bus data antara mikroprosesor dan memorinya adalah 32 bit.

Sistem I/OKeuntungan utama dari I/O yang dipetakan memori adalah bahwa beberapa ruang memori terkurangi ke peralatan I/O, sedangkan sistem I/O yang diisolasi, tidak ada satupun ruang memori yang diarahkan ke I/O. dimana I/O yang diisolasi adalah bahwa hanya instruksi IN atau OUT untuk mengirim/mengambil dari I/O. 209Mikroprosesor / Ir.Sahrum,M.M.

Page 210: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80386 (lanj)

Memori dan Sinyal Kontrol I/O Sinyal M/IO digunakan untuk

menunjukkan apakah putaran bus akan mengirim-kan data memori atau data I/O.

Sinyal W/R jika berlogika 0 untuk melakukan operasi pembacaan, dan logika 1 akan melakukan operasi penulisan.

Sinyal ADS digunakan untuk kuantitas dua kontrol Sinyal sebelumnya diatas.

210Mikroprosesor / Ir.Sahrum,M.M.

Page 211: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80386 (lanj)

211Mikroprosesor / Ir.Sahrum,M.M.

Page 212: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80386 (lanj)

212Mikroprosesor / Ir.Sahrum,M.M.

Page 213: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80386 (lanj)

Arsitektur Memiliki peralatan yang terintegrasi

tinggi yang berisi ± 1.2 Juta transistor. Dialokasikan dalam sirkuit Memori

Manajemen Unit. Koprosesor numerik yang lengkap dan

kompatibel dengan 80x87. Memori chace dengan kecepatan tinggi

yang berisi 8 Kbyte memori.

213Mikroprosesor / Ir.Sahrum,M.M.

Page 214: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80386 (lanj)

Arsitektur 80486 identik dengan 80386, oleh karena itu ilustrasi register – register pada 80486 tidak ada perbedaan dengan mikroprosesor 80386.

Design RISC (ReducedIntruction Set Computer) dari 80486 akan mengurangi jumlah waktu yang diperlukan untuk melakukan beberapa instruksi ke satu cycle clock saja. MMU (Memori Manajemen Unit) memungkinkan 80486 untuk mengakses segmen dalam beberapa ukuran hingga 4Gbyte. MMU juga menyediakan 4 level proteksi pada bilangan PL0 hingga PL3.

214Mikroprosesor / Ir.Sahrum,M.M.

Page 215: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80386 (lanj)

215Mikroprosesor / Ir.Sahrum,M.M.

Page 216: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor 80386 (lanj)

216Mikroprosesor / Ir.Sahrum,M.M.

Page 217: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor PENTIUM

Arsitektur Global Struktur cache yang lebih kompleks untuk cache data

dan intruksi lain Prosesor integer dual lebih akurat yang dapat melakukan

dua instruksi per clock (secara bersamaan) Bus data yang lebih lebar, dimana ditambah dari 32 bit

menjadi 64 bit. Sehingga instruksi akan lebih besar kemungkinan untuk melakukan dalam waktu yang bersamaan.

Koprosesor numerik yang lebih cepat yang beroperasi sekitar lima kali lipat lebih cepat dari koprosesor numerik 80486 atau mikroprosesor versi sebelumnya.

Logika prediksi percabangan yang dapat memungkinkan program bercabang dieksekusi dengan lebih efisien.

Tehnologi MMX (Multimedia Extention) yang dirancang untuk mengeksekusi instruksi dengan kecepatan tinggi dan hanya di khususkan untuk device (peralatan) multimedia.

217Mikroprosesor / Ir.Sahrum,M.M.

Page 218: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor PENTIUM (lanj)

Pentium Pro Arsitektur internal dapat menjadwalkan sampai

lima instruksi untuk eksekusi dan unit floting point yang masih lebih cepat lagi.

Cache untuk tingkat 2 adalah 256 Kbyte / 512 Kbyte. Dan cache tingkat satu adalah 16 Kbyte.

Terdapat bus alamat 36 bit, yang memungkinkan akses ke memori sampai dengan 64 Gbyte.

Catu daya +3,3 Volt dengan arus maksimum 9,9 mA untuk 150 MHz Pentium Pro untuk masukan, dan Arus 48 mA pada tingkat logika 0 untuk keluaran (output).

218Mikroprosesor / Ir.Sahrum,M.M.

Page 219: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor PENTIUM (lanj)

Pentium IICache pada Pentium pro tidak ditemukan lagi, karena mikroprosesor pentium II di kemas dalam bentuk papan rangkaian yang tercetak yang berbeda dari bentuk sebelumnya.

Pentium III Sistem bus antara 133 MHz atau 100 MHz Terdapatnya Advanced Tranfer Cache sebesar

256 Kbyte dalam kemasan Level 2 (L2) dengan Error Correcting Code (ECC).

Terdapat Data Prefetch Logic (DPL) sebagai antisipasi jika membutuhkan data

219Mikroprosesor / Ir.Sahrum,M.M.

Page 220: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor PENTIUM (lanj)

Pentium IV Terdapat mPGA-487 Support pada intel 850 dan 845 family. Terdapat cache 12 K micro-op trace

cache dan 8 Kbyte L1 data cache pada addition ke L2 cache memori.

220Mikroprosesor / Ir.Sahrum,M.M.

Page 221: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor PENTIUM (lanj)

221Mikroprosesor / Ir.Sahrum,M.M.

Page 222: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor PENTIUM (lanj)

222Mikroprosesor / Ir.Sahrum,M.M.

Page 223: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Mikroprosesor PENTIUM (lanj)

Intruksi Set Pentium

Pentium ProTambahan Intruksi adalah : FCMOV, CMOV

Pentium IITambahan intruksi adalah : SYSENTER, SYSEXIT, FXSAVE, FXRSTOR

223Mikroprosesor / Ir.Sahrum,M.M.

Page 224: MIKROPROSESORdocshare04.docshare.tips/files/30959/309596002.pdf · 2017. 2. 23. · Mikrokontroler Untuk bekerja, mikroprosesor perlu dukungan RAM, ROM dan unit I/O, sehingga jumlah

Referensi

16-bit Micro-processors Architecture,Software and Interface Techniques, Walter A.Triebel, Avtar Singh

The Intel Microprocessors 8086/8088, 80186/80188, 80286, 80386, 80486, Pentium, and Pentium Pro Processor Architecture, Programming, and Interfacing. Barry B. Brey

http://www.intel.com/ http://www.hardwarebible.com/Microprocessors/8086.htm http://www.cms.dmu.ac.uk/ http://www.cs.uakron.edu http://www.engr.sjsu.edu/

224Mikroprosesor / Ir.Sahrum,M.M.