LAPORAN PRAKTIKUM MIKROPROSESOR Z2-MC8088 I Z2-MC8088 SEBAGAI SUATU SISTEM TRAINER
-
Upload
independent -
Category
Documents
-
view
2 -
download
0
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