LAPORAN PRAKTIKUM MIKROPROSESOR Z2-MC8088 I Z2-MC8088 SEBAGAI SUATU SISTEM TRAINER

17
LAPORAN PRAKTIKUM MIKROPROSESOR Z2-MC8088 I Z2-MC8088 SEBAGAI SUATU SISTEM TRAINER DISUSUN OLEH: ROFIQOH NUR HASNAH 425 11 025 3A TKJ JURUSAN TEKNIK ELEKTRO 1

Transcript of LAPORAN PRAKTIKUM MIKROPROSESOR Z2-MC8088 I Z2-MC8088 SEBAGAI SUATU SISTEM TRAINER

LAPORAN PRAKTIKUM MIKROPROSESOR

Z2-MC8088 I

Z2-MC8088 SEBAGAI SUATU SISTEM TRAINER

DISUSUN OLEH:

ROFIQOH NUR HASNAH

425 11 025

3A TKJ

JURUSAN TEKNIK ELEKTRO

1

POLITEKNIK NEGERI UJUNG PANDANG

2013

Z2-MC8088 I

Z2-MC8088 SEBAGAI SUATU SISTEM TRAINER

I. TUJUAN

Mengenal trainer Z2-MC8088

Mengoperasikan trainer Z2-MC8088

Membedakan Register, RAM, dan ROM.

II.TEORI DASAR

Pendahuluan

Sebuah mikrokomputer adalah sebuah perangkat elektronik

yang sangat kompleks dan serba guna. Dimana sistem yang

digunakan adalah sebuah mikroprosessor sebagai elemen utama

yang mempunyai kemampuan sebagai CPU (Central Processing

Unit).

Mikroprosessor bersifat dapat diprogram (programmable)

sehingga dengan menggunakan perangkat keras (hardware) yang

sama atau hampir sama dapat diperoleh dan dibuat beberapa

fungsi yang berbeda hanya dengan mengganti atau merubah

programnya.

Sebuah Mikrokomputer minimum harus berisi elemen-elemen

sebagai berikut:

CPU (Central Processing Unit)

2

Memory (RAM dan ROM)

Bus (Alamat, Data dan Pengendali)

Elemen-elemen I/O

Fungsi dari Elemen-elemen diatas adalah:

CPU

CPU adalah otak dari komputer. Ia mengontrol semua

aktivitas dalam sistem, mengaktifkan memory dan elemen I/O.

CPU itu sendiri terdiri dari suatu elemen dengan fungsi-

fungsi khusus. Diantaranya adalah ALU (Arithmetic Logic

Unit), register-register dan program counter (PC).

MEMORI

Memori berisi semua program dan data. ROM (Read Only

Memory) biasanya berisi set-set program pendukung (program-

program monitor) yang diberikan oleh pabrik pembuat

mikrokomputer. Data dalam ROM tidak dapat hilang karena

bersifat permanen. RAM (Random Access Memory) dapat ditulis

kembali dan mudah dihapus, tanpa sumber.

Data yang ada akan hilang atau hancur. Daerah RAM dari

suatu mikrokomputer adalah daerah yang diizinkan untuk

pemakai melalui program-programnya.

BUS

Bus adalah satu set kabel-kabel paralel. Untuk Intel

8088 kita membutuhkan saluran alamat 16 bit, data 16 bit

dan pengendali 18 bit, sehingga kita memiliki satu Address

3

Bus 16 bit, satu Data Bus 16 bit dan satu Control Bus 18

Bit.

I/O

Tidak ada komputer yang dapat bekerja tanpa elemen

input-output. Elemen-elemen ini dihubungkan ke sistem Bus,

tetapi juga mempunyai hubungan-hubungan ke luar melalui

inface. Kita juga mengenal ada dua macam sistem komunikasi

yaitu serial (lewat UART) dan paralel (lewat PIO).

Fungsi Dasar Sebuah Mikroprosessor

Sebuah Mikroprosessor hanya dapat bekerja bila ada

sebuah program (perangkat lunak). Kejadian sederhana

seperti menyalakan sebuah LED, atau pembacaan sebuah kunci

yang dibentuk oleh sebuah program. Untuk membuat penggunaan

Z2-8088 yang lebih nyaman, pembuat (ELETTRONIKA VENETA &

INL SPA) menyertakan sejumlah program (monitor subroutine)

yang dapat dieksekusi dengan kunci-kunci fungsi. Semua

program-program ini terdapat dalam EPROM (Erasable

Programmable Read Only Memory) dengan fungsi-fungsi ini

dimungkinkan untuk menulis isi memory atau isi register.

Bus alamat terdiri dari 16 bit. Ini berarti kita dapat

mengakses 65.536 (2 pangkat 16) lokasi memory masing-masing

satu bit. Karena 1024 dideferensikan sebagai 1 kb

(Kilobyte) maka kita mempunyai daerah memori sebanyak 64

Kilo byte.

Z2-MC8088 terdiri dari 3 EPROM dan 3 RAM berikut ini

adalah peta atau susunan memori yang memperlihatkan kepada

pemakai daerah mana dari memori yang dapat digunakan.

4

Gambar Peta Memory di dalam Z2-MC8088

REGISTER DAN MEMORI

Sebuah mikroprosessor mempunyai ruang penyimpanan data

yang berbeda:

Register

Register dilokasikan dalam CPU (untuk trainer Z2-8088)

seluruh data yang tersimpan dalam register adalah mudah

hilang, ia hanya dapat disimpan sementara. Intel 8088

memiliki 14 register 16-bit. Adapun register-register

tersebut diklasifikasikan dalam:

Register Data, terdiri atas 4 register.

Register Index dan Pointer, terdiri atas 4 register.

4 Segment Register.

Instruction Pointer dan Sebuah Register Flag.

Register data terdiri atas: AH, AL, BH, BL, CH, CL, DH dan

DL yang mana register-register tersebut digunakan untuk

menyimpan data 8-bit atau secara berpasangan dipakai untuk

menyimpan data 16-bit.

Memori

Seperti yang telah digambarkan, kita memiliki memori RAM

dan ROM. ROM adalah sebuah memori permanen. RAM (seperti

register) adalah mudah hilang tetapi mereka di luar CPU

melalui akumulator (register A) Kapasitas RAM adalah sangat

besar jika kita bandingkan dengan register-register, tidak

5

seperti register, memori tidak dapat disambungkan

(aritmetic atau logic) dengan ALU.

Untuk menyimpan data dalam sebuah RAM atau memuatnya

kembali dari sebuah RAM, instruksi set Intel 8088

mempunyai beberapa kemungkinan yang berbeda, yang disebut

Mode – Pengalamatan (Addressing Mode) sebagai contoh

pengalamatan langsung dan tidak langsung.

Direct (Pengalamatan Langsung) dengan :

MOV BYTE[xxxx],AX Simpan AX dalam xxxx (RAM)

MOV AX,[xxxx] Muati AX dengan isi xxxx

Indirect (pengalamatan tak langsung) dengan :

MOV DI,xxxx Simpan DATA dalam xxxx (RAM)

MOV [DI],AL Simpan A dalam alamat dialokasikan

Reg DI

MOV AL,[DI] Muati A dengan isi dari lokasi DI

Contoh:

Apabila bekerja dengan tabel, maka kode pengalamatan ini

sangat berguna karena alamat bisa digunakan sebagai suatu

perhitungan, ia tidak membutuhkan pengalamatan langsung.

III. LATIHAN

3.1. Peta dari hardware trainer Z2-MC8088

6

3.1.1. Identifikasi elemen-elemen berikut yang tergambar

dalam map, tuliskan nomor-nomor dan type-typenya

(dari chip).

Elemen Type

CPU : SAB8088

ROM : ROM 1 FM27C 256Q

ROM 2 M27C 256B

RAM : RAM 1 HM6116-10

RAM 2 EL6116-70

RAM 3 HT6116-70

PIO : ADC0804LCN

UART : NS8250N-B

LCD : MDLS20265SS-07

3.2. Membaca dan menulis memori

3.2.1. Baca isi memori berikut dengan menggunakan tombol

‘M’ (acuan pada short manual).

Alamat Isi

0007B FC H

00800 00 H

017FF 1F H

F4000 F0 H

FBFFF FF H

FFFFF FF H

3.2.2. Sekarang rubahlah isi dari memori-memori diatas ke

harga berikutnya (hexadesimal)

Alamat isi

0007B .. H

7

00800 .. H

017FF .. H

F4000 .. H

FBFFF .. H

FFFFF .. H

Sesudah :

0007B FD H

00800 01 H

017FF 20 H

F4000 F0 H

FBFFF FF H

FFFFF FF H

3.2.3. Apa perbedaan antara alamat-alamat ini?

- Ada.

Alamat manakah yang hanya dapat dibaca, dan mana yang

dapat dibaca dan juga dapat ditulis?

- Yang hanya dapat dibaca: F4000, FBFFF. FFFFF

- Yang dapat ditulis: 007B, 00800,017FF

3.3. Membaca dan menulis register-register

3.3.1. Bacalah isi dari register-register berikut dengan

menggunakan tombol X

Reg: Isi:

AX 0000

BX 0000

8

CX 0000

DX 0000

SI 0080

DI 0000

IP 0000

SP 0000

FL 0000

BP 0000

3.3.2. Bersihkan register AX sampai BX dengan cara memuati

dengan ‘0’ seluruhnya.

3.3.3. Apa perbedaan antara sebuah register dengan

memori?

- Register adalah sebuah tempat penampungan sementara

untuk data-

data yng akan diolah oleh prosesor, dan dibentuk

oleh 16 titik elektronis

di dalam chip mikroprosessor itu sendiri

- Memori berfungsi untuk menyimpan data dan program.

Mengapa kita memerlukan register-register?

- Dengan adanya Register untuk tempat-tempat penampungan

data sementara ini, proses pengolahan akan bisa dilakuka

secara jauh lebih cepat dibandingkan apabila data-data

tersebut harus diambil langsung dari lokasi-lokasi

memori.

3.4. Tulis Program Penambahan dalam memori

Tambahkan register BX sampai DX dan masukkan ke

akumulator.

9

Flowchar

tAlamat Mnemonic

0080 0000

0003

0005

0007

0009

MOV AX,00

ADD AX,BX

ADD AX,CX

ADD AX,DX

INT 7

3.4.1. sebelum mengeksekusi program, muati semua register

dan buatlah penambahannya secara manual.

Desimal : Hex :

BX=17 11 H

CX=08 08 H

DX=37 25 H

BX+CX+DX = ……… 3E H

3.4.2. Eksekusi program dengan “G 0” dan “ENTER” (Short

manual)

3.4.3. Periksa hasil perbandingan register AX dengan

penambahan yang anda buat secara manual.

AX= 003E BX+CX+DX (secara manual) = 3E

3.5. Tulis Program kecil sehingga bisa mentransfer isi register BX

3.5.1. Pertama muati register BX dan CX secara manual

dengan tombol “X”.

BX = 09 dan CX = 1B

Kemudian tulis dan jelaskan program berikut :Flowchart Alamat Mnemonic

10

0080: 0100

0102

MOV CX,BX

INT 7

3.5.2. Muati register BX dengan Program sebelum anda

mentransfer data dari BX ke

CX.

Flowchart Alamat Mnemonic

0080: 0100

0103

0106

010A

MOV BX, 56

MOV CX,3F

MOV CX,BX

INT 7

Periksa sekali lagi isi register BX dan CX, sebelum

dan sesudah eksekusi program.

BX = 56 CX = 3F

Operasi-operasi logic antara register dengan akumulator

3.5.3. Tulis program kecil berikut :

Flowchar

tAlamat Mnemonic

0080

:

0000

0003

0004

MOV AX,67

AND AX,BX

INT 7Sekarang muati Register AX dan BX dengan harga-harga

sebagai berikut :

11

AX = 67 H = 0110 0111 b Eksekusi program dan

baca

BX = 5C H = 0101 1100 b

Hasil operasi AND disimpan dalam register AX. Bit demi

bit Reg BX di-AND-kan dengan bit akumulator.

AX = 0100 0100 b = 44 H

3.5.4. Ganti instruksi AND dengan OR (OR AX,BX) eksekusi

kembali program tersebut.

AX = 67 H = 0110 0111 b (sebelum)

B X= 5C H = 0101 1100 b

AX = 7F H = 0111 1111 b (sesudah)

3.5.5. Gantilah instruksi OR oleh instruksi EX-OR (XOR

AX,BX) dan program di eksekusi kembali.

AX = 67 H = 0110 0111 b (sebelum)

BX = 5C H = 0101 1100 b

AX= 3B H = 0011 1011 b (sesudah)

3.6. Penyimpanan isi akumulator dalam lokasi memori

3.7.1. Buat program penambahan (3.4) dan ikuti instruksi

berikutnya:

MOV BYTE[00D0],AL → simpan akumulator dalam alamat

0080:00D0

Flowchart Alamat Mnemonic

12

0080: 020

0 MOV AX,00

ADD AX,BX

ADD AX,CX

ADD AX,DX

MOV [00D0],AL

INT 7

3.7.2. Eksekusilah program dan bacalah isi memori dari

008D0 (0080:00D0) dan bandingkan dengan akumulator

(Reg AX).

0080:00D0 = 3E AX = 003E

3.7. simpan dan muati data secara tidak langsung

3.8.1. Isi lokasi memori berikut ini :

Alamat : Isi :

0080:00D0 55

0080:00D1 56

0080:00D2 57

0080:00D3 58

0080:00D4 59

0080:00D5 5A

3.8.2. Tulis program berikut ini:

Bersihkan daerah memori (0080:00D0 sampai 0080:00D5)

dengan sebuah program.

MOV DI, cccc maksudnya: simpan konstanta cccc dalam

Register Index DI.

13

MOV [DI],AL maksudnya: simpan AL dalam lokasi memori

RAM yang ditunjukkan oleh isi Register DI.

Flowchart Alamat Mnemonic

0080

:

0300

0302

0304

0306

0307

0309

030A

030C

030D

030F

0310

0312

MOV AL, 00

MOV DI,00D0

MOV [DI],AL

INC DI

MOV [DI],AL

INC DI

MOV [DI],AL

INC DI

MOV [DI],AL

INC DI

MOV [DI],AL

INT 7

14

3.8.3. Eksekusi program dengan “G” alamat awal program.

Bacalah lokasi memori berikutnya :

Alamat : Isi :

0080:00D0 00 H

0080:00D1 00 H

0080:00D2 00 H

0080:00D3 00 H

0080:00D4 00 H

0080:00D5 00 H

IV.PERTANYAAN DAN TUGAS

1). Jelaskan instruksi-instruksi yang digunakan pada

program penjumlahan register dan mengapa hasil

operasinya disimpan pada akumulator.

- ADD : digunakan untuk melakukan operasi penjumlahan

8 bit dan 16 bit

- INC : digunakan untuk menambah isi suatu register

atau memori dengan satu nilai. Instruksi ini sangat

potensial digunakan untuk membuat counter cacah

naik.

- AND, OR, dan XOR : digunakan untuk melakukan

operasi logika isi dari akumulator terhadap data

15

suatu register 8 bit atau data immediate, atau data

suatu lokasi memori.

Register digunakan untuk menyimpan data dan instruksi

yang sedang diproses, sementara itu data dan instruksi

lainnya yang menunggu giliran diproses akan disimpan

dalam main memory.

2). Setelah melakukan penjumlahan, maka akan terjadi

penjumlahan register secara bagaimana dan jelaskan hal

tersebut!

- Penjumlahan register terjadi secara terstruktur.

Contoh, ADD AX,BX dimana nilai AX = AX+BX. Atau

bisa di katakan jika hasil penjumlahan AX dan BX

akan di simpan di register AX. Contoh di atas

adalah penjumlahan 16 bit untuk 8 bit bisa di tulis

dengan struktur seperti ini ADD AL,BL dimana hasil

penjumlahan AL (8 bit) dan BL (8 bit) akan di

simpan di register AL.

3). Mengapa transfer data dapat dilaksanakan pada Intel

8088 dan bagaimana cara pengoperasiannya?

- Karena  Intel 8088 menggunakan dua urutan bus

siklus untuk menulis atau membaca 16 data bit

sebagai ganti satu siklus untuk 8086. Ini

menjadikan prosesor  bergerak  lebih lambat, tetapi

ada nilai plus pada perangkat keras yang menjadikan

CPU 8088 kompatibel dengan peripheral 8080/8085.

- Pengoperasiannya secara terstruktur atau berurutan.

4). Dalam proses ALU, dari hasil pengamatan maka operasi

aritmetik dan logik terlaksana secara bagaimana dan

bagaimana prosesnya?

16

- Fungsi ALU unit ini adalah untuk melakukan suatu

proses data yang berbentuk angka dan logika, seperti

data matematika dan statistika. ALU terdiri

dariregister-register untuk menyimpan informasi.

Tugas ALU adalah melakukan perhitungan

aritmatika(matematika) yang terjadi sesuai dengan

instruksi program dan melakukan keputusan dari

operasi sesuai dengan instruksi program yaitu

operasi logika dengan menggunakan operasi Logika.

5). Jelaskan lebih rinci fungsi dari sistem pengalamatan

(Addressing) direct dan indirect serta sebutkan

instruksi-instruksinya.

- Mode pengalamatan adalah bagaimana cara menunjuk

dan  mengalamati suatu lokasi memori pada  sebuah

alamat di mana operand akan diambil. Mode pengalamatan

diterapkan pada set instruksi, dimana pada umumnya

instruksi terdiri dari opcode (kode operasi) dan alamat

- Direct addressing, harga yang akan dipakai diambil

langsung dalam alamat memori lain. Contohnya: MOV

A,30h. Dalam instruksi ini akan dibaca data dari RAM

internal dengan alamat 30h dan kemudian disimpan dalam

akumulator.

- Indirect addressing sangat berguna karena dapat

memberikan fleksibilitas tinggi dalam mengalamati suatu

harga. Mode ini pula satu-satunya cara untuk mengakses 128 byte lebih

dari RAM internal pada keluarga 8052.. 

17