Anda di halaman 1dari 8

PRAKTIKUM V

INSTRUKSI LOGIKA
A. Tujuan Instruksional khusus
1. Mahasiswa dapat mengetahui instruksi-instruksi logika
2. Mahasiswa mampu membuat program untuk operasi logika yang terdapat pada register
3. Mahasiswa mampu membuat program untuk operasi logika yang terdapat pada alamat memori
4. Mahasiswa mampu menggunakan berbagai instruksi logika dalam pemograman

B. Dasar Teori
Pada percobaan ini kita akan berlatih menggunakan berbagai instruksi logika. Instruksi-instruksi
yang termasuk ke dalam kelompok instruksi logika diantaranya ANA, ANI, XRA, XRI, CMA, ORA,
ORI, CMP, CPI, CMC, RLC, RRC, RAL,RAR, dan STC. Adapun penjelasan setiap instruksi tersebut
sebagai berikut:

1. Instruksi ANA dan ANI


Instruksi ANA digunakan untuk melakukan operasi logika AND 8 bit. Pada operasi tersebut, isi
register A (akumulator) akan di-AND-kan dengan isi register 8 bit atau isi lokasi memori yang
alamatnya ditunjukkan oleh pasangan register HL. Sedangkan instruksi ANI digunakan untuk
melakukan operasi AND pada isi register A (akumulator) dengan data langsung 8 bit (immediate
data).
Penulisan pada program:
ANA reg ; yaitu melakukan operasi AND untuk data pada register A dengan data pada register yang
disebutkan.
ANI data ; yaitu melakukan operasi AND untuk data pada register A dengan data 8 bit
Contoh:
ANA B ; yaitu melakukan operasi AND untuk data pada register A dengan data pada register B
ANI 07H ; yaitu melakukan operasi AND untuk data pada register A dengan data 07H

Tabel 4.1 Operasi ANA dan ANI


Mnemonik Symbol operasi
ANA A A = A AND A
ANA B A = A AND B
ANA C A = A AND C
ANA D A = A AND D
ANA E A = A AND E
ANA H A = A AND H
ANA L A = A AND L
ANA M A = A AND [(H)(L)]
ANI 57h A = A AND 57h
2. Instruksi ORA dan ORI

1
Instruksi ORA digunakan untuk melakukan operasi logika OR 8 bit. Pada operasi tersebut, isi
register A (akumulator) akan di-OR-kan dengan isi register 8 bit atau isi lokasi memori yang
alamatnya ditunjukan oleh pasangan register HL. Sedangkan instruksi ORI digunakan untuk
melakukan operasi logika OR pada isi register A (akumulator) dengan data langsung 8 bit (immediate
data )
Penulisan pada program:
ORA reg ; yaitu melakukan operasi OR untuk data pada register A dengan data pada register yang
disebutkan.
ORI data ; yaitu melakukan operasi OR untuk data pada register A dengan data 8 bit
Contoh:
ORA B ; yaitu melakukan operasi OR untuk data pada register A dengan data pada register B
ORI E1H ; yaitu melakukan operasi OR untuk data pada register A dengan data E1H.

Tabel 4.2 Operasi ORA dan ORI

Mnemonik Symbol operasi


ORA A A = A OR A
ORA B A = A OR B
ORA C A = A OR C
ORA D A = A OR D
ORA E A = A OR E
ORA H A = A OR H
ORA L A = A OR L
ORA M A = A OR [(H)(L)]
ORI 56h A = A OR 56h

3. Instruksi XRA dan XRI


Instruksi XRA digunakan untuk melakukan operasi logika XOR 8 bit. Pada operasi tersebut, isi
register A (akumulator) akan di-XOR-kan dengan isi register 8 bit atau isi lokasi memori yang
alamatnya ditunjukan oleh pasangan register HL. Sedangkan instruksi XRI dipergunakan untuk meng-
XOR-kan isi register A (akumulator) dengan data langsung 8 bit (immediate data).
Penulisan pada program:
XRA reg ; yaitu melakukan operasi XOR untuk data pada register A dengan data pada register yang
disebutkan.
XRI data ; yaitu melakukan operasi OR untuk data pada register A dengan data 8 bit
Contoh:
XRA B ; yaitu melakukan operasi XOR untuk data pada register A dengan data pada register B
XRI E1H ; yaitu melakukan operasi XOR untuk data pada register A dengan data E1H.

Tabel 4.3 Operasi XRA dan XRI

2
Mnemonik Symbol operasi
XRA A A = A XOR A
XRA B A = A XOR B
XRA C A = A XOR C
XRA D A = A XOR D
XRA E A = A XOR E
XRA H A = A XOR H
XRA L A = A XOR L
XRA M A = A XOR [(H)(L)]
XRI 78h A = A XOR 78h

4. Instruksi CMA
Instruksi CMA (complement the accumulator) digunakan untuk melakukan komplemen isi
akumulator, yaitu mengubah setiap bit dalam akumulator dengan nilai kebalikannya. Dalam operasi
logika yaitu melakukan operasi NOT pada isi register A yang berisi data 8 bit. Hasil operasi akan
diletakkan kembali ke register A.
Penulisan pada program:
CMA ; melakukan operasi NOT pada isi register A.
Contoh :
MVI A, 12H ; mengisi register A dengan data 12H
CMA ; melakukan operasi NOT untuk data 12 H, sehingga hasil eksekusi adalah ED

5. Instruksi CMP dan CPI


Instruksi CMP reg adalah membandingkan isi reg.A dengan isi register yang disebutkan..
sedangkan instruksi CPI data adalah membandingkan isi reg. A dengan data 8 bit yang disebutkan.
Karena hanya membandingkan maka isi reg. A ataupun isi register bandingannya tidak mengalami
perubahan isi/datanya. Perintah ini hanya mempengaruhi bit-bit status pada reg. flag dan untuk dipakai
bersama perintah-perintah bersyarat. Proses perbandingan yang dilakukan sama dengan proses
pengurangan pada perintah SUB reg.
Penulisan pada program:
CMP reg ; membandingkan isi register A dengan data pada register yang disebutkan.
CPI data ; membandingkan isi register A dengan data 8 bit.

Contoh :
MVI A 03H
MVI B 02H
CMP B ;membandingkan isi register A dengan B : 03 – 02 = 01 H
;status flag: Sign=0 (positif), zero=0(tidak 0), parity=0(ganjil), CY=0 (tdk terdapat carry)

6. Instruksi STC
3
Instruksi STC (Set Carry), adalah instruksi set bit Carry menjadi 1. Dengan perintah ini kita
bias memastikan bahwa Carry sekarang ini adalah 1.

7. Instruksi CMC
Instruksi CMC (Complemen Carry Flag), digunakan untuk meng-inverskan bit carry
sebelumnya. Perintah ini digunakan setelah perintah STC untuk memastikan bahwa Bit carry adalah 0
(nol).
Penulisan pada program:
CMC ; invers bit carry
Contoh:
STC ; set bit carry =1
CMC ; bit CY=0

8. Instruksi RAR dan RAL


Instruksi RAR adalah menggeser isi register A ke kanan 1 bit, bit LSB akan dimasukkan ke
carry sedangkan isi carry yang sebelumnya dimasukkan ke bit MSB. Instruksi RAL adalah menggeser
isi register A ke kiri 1 bit, bit MSB akan dimasukkan ke carry sedangkan isi carry yang sebelumnya
dimasukkan ke bit LSB.

9. Instruksi RRC dan RLC


Instruksi RRC adalah menggeser isi register A ke kanan 1 bit, bit LSB akan dimasukkan ke
carry dan bit LSB akan dimasukkan ke bit MSB. Sedangkan instruksi RLC adalah menggeser isi
register A ke kiri 1 bit, bit MSB akan dimasukkan ke carry sedangkan bit MSB akan dimasukkan ke
bit LSB.

C. Daftar Alat dan Bahan


PC yang telah terinstal Software Microprocessor 8085 Simulator

D. Keselamatan Kerja
Selama melaksanakan praktikum Sistem Mikroprosesor ini mahasiswa diwajibkan mengikuti
langkah-langkah keselamatan berikut ini:
1. Sebelum praktikum dimulai, masing-masing praktikan menyiapkan jobsheet.
2. Pastikan hubungan kabel power pada komputer sudah tersambung dan tidak ada kabel
yang terbuka, kemudian hidupkan (turn on) MCB panel pada meja praktikum.

4
3. Pastikan hubungan komputer dengan peralatan lainnya, seperti keyboard dan mouse sudah
terhubung.
4. Hidupkan komputer, dan tunggu sampai sistem operasi selesai loading dan sudah dapat
digunakan.
5. Jalankan hanya software Mikroprocessor 8085 Simulator.
6. Selesai melaksanakan praktikum, matikan komputer dan kembalikan keyboard dan mouse pada
tempatnya, dan matikan MCB pada panel power di meja kerja.
7. Rapikan kursi dan peralatan lainnya, dan bersihkan meja dari segala kertas kerja

E. Langkah Kerja
Langkah- langkah pemograman:
1. Jalankan software Microprocessor 8085 Simulator IDE pada Start Menu

Gambar 4.1 Software microprocessor 8085 simulator IDE

2. Tuliskan program pada lembar kerja secara langsung atau memilih button yang terdapat pada
sisi kanan simulator.
3. Penulisan program:
1.1 Program operasi logika OR, AND, dan XRA
a. Isilah kolom Starting Address dengan data 9000

5
b. Tuliskan program di bawah ini pada editor

c. Jalankan program tersebut baris perbaris dengan menekan toolbar step into
d. Catatlah perubahan yang terjadi pada tampilan General Regs pada tabel 4.5
1.2 Program operasi logika
a. Isilah kolom Starting Address dengan data 9000
b. Inisialisasi isi register sesuai tabel 4.4 berikut:
Tabel 4.4 Inisialisasi data register
No Input Data
A B C D E H L
1 D4 35 4E A2 39 80 00
2 2A 33 43 52 67 80 03
3 3B C1 34 55 45 80 05

c. Tuliskan program di bawah ini pada editor

d. Jalankan program tersebut baris perbaris dengan menekan toolbar step into
e. Catatlah perubahan yang terjadi pada tampilan General Regs pada tabel 4.5
F. Borang Data
Dari setiap langkah praktikum yang telah dikerjakan, isilah tabel dibawah ini:
Tabel 4. 5 Program operasi logika
Mnemoni Flag
No. Input data A B C D E H L
k S Z P

6
Tabel 4.6 Tugas operasi logika
N Output
Input Data Perhitungan
o Data
D E H L A (((D or E) and H)xor L)
1 00 00 00 00
2 00 01 02 03
3 00 10 20 30
4 40 50 60 70
5 A0 A1 A2 A3
6 A4 A5 A6 A7
7 FF FF FF FF

Tabel 4.7 Operasi OR pada blok memori


Input Output
Mnemonik
[D000] [D001] [D002] [D003] [D004] [D005] [D006] [D007] [D008] [D009]
22 22 22 22 22 22
22 33 44 55 66 77
23 34 45 67 89 A0
FF FF FF FF FF FF

G. Pertanyaan dan Tugas


1. Buatlah program untuk menyelesaikan operasi logika untuk data-data heksadesimal yang
berada pada register-register D, E, H dan L. Simpan hasilnya pada register A. Tulis program tersebut
mulai dari alamat 0000h.

A ←( ( ( ( D∨E )∧H ) xor E ) ∧L)

Uji program saudara menggunakan data-data pada tabel 4.6 dan tuliskan hasil perhitungan pada
tabel tersebut.

2. Buatlah program untuk melakukan operasi OR 2 bilangan 24 bit yang berada pada lokasi
memori dengan alamat D002, D001, D000 dan D005, D004, D003. Simpan hasilnya ini pada alamat
D009, D008, D007, D006. Uji program saudara menggunakan data-data pada tabel 4.7 dan tuliskan
hasil perhitungan pada tabel tersebut.

[D002][D001][D000]
[D005][D004][D003]
OR
[D009][D008][D007][D006]

7
MSB LSB

Analisa :
Print screan Hasil percobaan
Analisa daripada praktikum
Kesimpulan.

Kalian harus mengumpulkan file laporan berupa File pdf. Paling telat hari ini Tanggal 18 Maret 2020
Jam 20.00 WIB. Kalau tidak dikumpul, saya anggap kalian tidak hadir/ tidak mengikuti kuliah.
Dengan nama : Lap4_Nama_mahasiswa_kelas.pdf
Saya terima kalian kirimkan ke Email saya : salahuddin.mt@pnl.ac.id
Atau ke WA saya pribadi jangan di group.

Anda mungkin juga menyukai