Você está na página 1de 14

PERCOBAAN 2

I.

JUDUL : REGISTER / MEMORI

II.

ALAT DAN BAHAN


-

III.

SEPERANGKAT MIDICOM LN 85 V3.0

TUJUAN
-

Memahami berbagai register dan fungsi-fungsinya


Memahami penggunaan register dan memori sebagai pemindahan
data

IV.

DASAR TEORI
Mikroprosesor 8085 mempunyai bermacam-macam register,

berkapasitas 8 bit dan apabila dua register digabungkan dapat membentuk


sebuah pasangan register dengan kapasitas 16 bit. Disamping itu tersedia pula
register dengan kapasitas khusus 16 bit.
Accumulator

Register
Bendera

PSW

Register B

Register C

Pasangan
Register BC

Register D

Register E

Pasangan
Register DE

Register H

Register L

Pasangan
Register HL

Program
Counter

Stack Pointer

Gambar 1.1. Macam-macam Register


Tiap register mempunyai fungsi khusus yang tidak dipunyai oleh
register lain, namun semuanya merupakan tempat penyimpanan data
sementara dalam suatu rutin program.
Fungsi khusus masing-masing register dapat dijelaskan sebagai
berikut :
-

Register A
Register ini dikenal juga dengan nama akumulator, fungsi sebagai
tempat menyimpan data pada perhitungan matematika, logika, dan
proses pembacaan/pengisian data pada memori. Disamping itu,
pada perintah masukan/ keluaran, perbandingan, penggeseran data
juga disimpan pada akumulator.

Register F
Register ini berfungsi sebagai bendera pada operasi logika,
aritmatika, pengeseran, perbandingan dan lain-lain. Tiap bitnya
mempunyai fungsi tersendiri. Bit tersebiut digunakan sebagai
penanda pada rutin perancangan.

Register B,C,D,E,H,L
Register ini berfungsi sebagai tempat penyimpanan sementara data
8 bit pada proses pemrograman. Fungsinya selain sebagai tempat
penyimpanan data 16 bit, juga dapat digunakan sebagai penunjuk
suatu alamat memori, misalnya pasangan register HL sebgai
penunjuk alamat register M.

Register PC

Program counter (PC) merupakan penunjuk alamat akan dijalankan


oleh CPU. Pasangan register ini akan bertambah nilainya secara
otomatis sesuai dengan alamat perintah yang akan diajankan
berikutnya.
-

Register SP
Regiater ini berfungsi sebagai penunjuk alamat memori, yaitu
tempat menyimpan alamat kembali untuk perintah CALL dan
tempat menyimpan data pada perintah PUSH-POP.

Register M
Register ini sebetulnya adalah memori, karena penunjukkan data
pada memori harus berdasarkan alamatnya, maka pada register M
ini menunjukkan alamat ditentukan oleh pasangan register HL.

V.

PERCOBAAN
V.1 Latihan 1 membuat program di lamat 7000 untuk pemindahan data
dari register HL ke memori (register M).
Org 7000
MVI L,00
MVI H,80
MVI M,AA
RST 1
V.2 Latihan 2 membuat program di alamat 7100 untuk pemindahan
data dari register ke register, dari register ke memori (register M)
atau sebaliknya dari memori ke register.
Org 7100
MVI L,00
MVI H,80
MVI A,M
MVI L,01
MVI H,80
MVI M,A
RST 1

V.3 Latihan 3 membuat program di alamat 7200 untuk pengisian data


16 bit ke pasangan register secara langsung.
Org 7200
LXI H,8000
LXI B,8001
LXI D,8002
RST 1
V.4 Latihan 4 membuat program di alamat 7300 untuk penukaran data
pasangan register DE dengan HL. Data pada register E ditukar ke
data pada register L sedangkan pada register D ditukar ke data
pada register H.
Org 7300
LXI H,0000
MVI D,DD
MVI E,EE
XCHG
RST 1
V.5 Latihan 5 membuat program di alamat 7400 untuk mengirim data
dari memori dengan alamat adr" ke akumulator.
Org 7400
LDA 8000
LXI H,8002
MOV M,A
RST 1
V.6 Latihan 6 membuat program di alamat 7500 untuk mengirim data
dari akumulator ke memori dengan alamat adr.
Org 7500
LXI H,0000
LXI D,AACC
LHLD 8000
XCHG
LHLD 8002
RST 1
V.7 Latihan 7 membuat program di alamat 7600 untuk mengirim data
2 byte ke memori dengan alamat adr, yaitu data yang ada pada

register L dikirim ke alamat Adr dan data pada register HL


dikirim ke alamat Adr + 1.
Org 7600
LHLD 8000
SHLD 8005
LHLD 8003
SHLD 8007
RST 1
V.8 Latihan 8 membuat program di alamat 7700 untuk mengisi
akumulator dengan data dari memori yang alamatnya ditunjukan
oleh pasangan register HL dan DE.
Org 7700
LXI H,8000
MOV B,M
MVI D,80
MVI E,03
LDAX D
RST 1
V.9 Latihan 9 membuat program di alamat 7700 untuk mengisi data
pasangan register BC dan De ke akumulator.
Org 7700
MVI B,80
MVI C,03
STAX B
RST 1
VI.

Analisa Percobaan
Register merupakan alat penyimpanan yang kecil yang
mempunyai kecepatan akses yang cukup tinggi, yang digunakan untuk
menyimpan data dan/atau intruksi yang sedang diproses. Memori ini
bersifat sementara, biasanya digunakan untuk menyimpan saat diolah
ataupun data untuk pengolahan selanjutnya. Secara analogi, register
ini dapat diibaratkan sebagai ingatan diotak bila kita melakukan
pengolahan data secara manual, sehingga otak dapat diibaratkan
sebagai CPU, yang berisi ingatan-ingatan, suatu kendali yang

mengatur seluruh kegiatan tubuh dan mempunyai tempat untuk


melakukan perhitungan dan perbandingan logika.
MOV (Move) Instruksi MOV r1, r2 adalah instruksi untuk
mentransfer data dari r2 (register sumber) ke r1 (register tujuan).
Pengertian kata mentransfer di sini adalah menggandakan atau
mengkopi, karena pada akhir pelaksanaan instruksi, isi register
tujuan jadi sama dengan isi register sumber.
Instruksi MOV r, M berfungsi untuk mentransfer data dari lokasi
memori yang alamatnya berada pada pasangan register HL ke suatu
register 8 bit. Alamat memori M ditunjukkan oleh isi pasanganregister
HL.
Instruksi MOV M, r merupakan kebalikan dari instruksi MOV r,
M.Instruksi MOV M, r ini akan memindahkan data 8 bit yang berada
pada suaturegister ke suatu lokasi memori yang alamatnya
ditunjukkan oleh pasanganregister HL.
Instruksi MVI r, data 8 bit dan instruksi MVI M, data 8 bit.
Instruksi MVI M, 8 bit, digunakan untuk mengisi data 8 bit pada suatu
lokasi memori yang alamatnya ada pada register HL. misalnya kalau
register B asalnya isinya 08. setelah dilakukan instruksi (MVI B,0A)
maka isi dari si register B menjadi 0A.
Instruksi STA dipergunakan untuk menyimpan data yang berada
pada akumulator (register A) ke dalam unit memori pada lokasi alamat
(4 digit heksadesimal dari belakang mnemonik STA). Instruksi LDA
digunakan untuk memindahkan data 8 bit dari unit memori lokasi
alamat tertentu ke akumulator (register A).
LHLD (Load H & L Registers Directly from Memory)
Berfungsi menyalin data memori pada alamat yang spesifik.
Instruksi SHLD (Store H & L Registers Directly in Memory)
Berfungsi menyimpan data register H & L langsung dalam
memori.X dalam nama instruksi transfer data menunjukkan bahwa
itu berhubungan dengan sepasang register (16 bit).

Instruksi STAX rp digunakan untuk menyimpan isi akumulator


kelokasi memori yang alamatnya ditunjukkan oleh suatu pasangan
register (rp).
Instruksi LDAX rp berfungsi mengisi akumulator dengan data
8 bit dari lokasi memori yang alamatnya ditunjukkan oleh suatu
pasangan register.
instruksi LXI (Load Register Pair with Immediate data)Instruksi
LXI rp, d16 ; berfungsi mengisi register pair (rp) dari nilai data d16
(alamat 16 bit).
Instruksi XCHG (Exchange H & L with D & E)Berfungsi
menukar register H & L dengan register D & E.
Pada percobaa pertama fungsi MVI L,00 sebagai pemindah data
register 00 ke alamat L, kemudian data pada MVI H,80 berfungsi
sebagai data register 80 yang berpindah ke alamat H. MOV M,A
adalah data register yang ada pada alamat A dipindahkan ke alamat
memori M dan RST 1 berfungsi sebagai pemberhentian data terakhir.
Pada job kedua berfungsi untuk memindahkan data dari register
ke register, dari register ke Memori (Register M) atau sebaliknya dari
memori ke register. MVI L,00 merupakan data pada register 00
dipindahkan ke alamat L. kemudian H,80 merupakan data register 80
yang dipindahkan ke alamat H. MOV A,M merupakan data yang ada
pada alamat memori dipindahkan ke alamat register A. perubahan data
pada alamat L yang ada sebelumnya adalah 00 setelah diubah ke MVI
L,01 data register pada alamat L berubah menjadi 01. Kemudian data
pada alamat H datanya tidak berubah karena data register nya tidak
dirubah sama sekali. Kemudian fungsi MOV M,A adalah data yang
ada pada alamat A berpindah ke alamat Memori. RST 1 sebagai
pemberhentian data terakhir .
Pada job ke tiga ini kita membuat program pada alamat 7200
berfungsi untuk pengisian data pada 16 bit ke pasangan register secara
langsung. LXI H,8000 merupakan pengisisan data register pada
alamat HL. pada alamat H yang berisikan data register 80 kemudian

pada alamat L berisikan data register 00. Kemudian LXI B,8001


merupakan pengisian data register pada alamat BC. Pada alamat B
data register berisikan data 80 kemudian data pada alamat C berisikan
data register 01. LXI D,8002 merupakan pengisian data pada alamat
DE. Pada alamat D berisikan data register 80 kemudian data alamat E
berisikan data register 02. RST 1 sebagai pemberhentian data terakhir
pada program.
Pada job ke 4 kali ini kita membuat program pada alamat 7300
sebagai penukaran data pasengan register DE dengan HL. Data pada
register E ditukar ke data register L sedangkan pada register D ditukar
ke data register H. LXI H,0000 merupakan data pada alamat HL yang
berisikan data register H adalah 00 dan pada alamat register L adalah
00. MVI D,DD merupakan data register DD berpindah ke alamat D.
MVI E,EE merupakan data register EE yang pindah ke alamat E.
XCHG merupakan pengubah data pada alamat HL ke DE, pada
prinsip kerjanya alamat pada register D berpindah ke alamat register H
ataupun sebaliknya kemudian pada alamat register L berpindah ke
alamat E ataupun sebaliknya. RST 1 berfungsi untuk pemberhentian
data terakhir.
Pada job ke 5 kali ini kita membuat program pada alamat 7400
untuk mengirim data dari memori dengan alamat adr ke akumulator.
LDA 8000 berfungsi sebagai pemindahan dari register 8000 ke alamat
A. LXI H,002 merupakan data register yang ada pada alamat HL
yakni pada alamat H adalah 80 kemudian pada alamat L adalah 02.
MOV M,A merupakan data yang ada pada alamat A berpindah ke
alamat memori M. RST 1 pemberhentian data terakhir.
Pada job ke 6 ini kita membuat program dialamat 7500 untuk
mengirim data dari akumulator kememori dengan alamat adr. LXI
H,0000 merupakan data pada alamat HL yang berisikan alamat H
adalah 00 dan alamat L adalah 00. LXI D, AACC merupakan data
pada alamat DE yang berisikan alamat pada D adalah AA dan alamat
E adalah CC. LHLD 8000 merupakan data yang ada pada alamat A

berpindah ke alamat L. Dalam percobaan nya data A adalah 64


kemudian data L sebelumnya adalah 00. Setelah di berikan alamat 64
data L berubah menjadi alamat 64. XCHG merupakan pengubah data
alamat dari HL ke DE dengan metode data D berpindah ke H
kemudian pada data L berpindah ke alamat E. LHLD 8002
memindahkan alamat 8002 ke alamat H. RST 1 sebagai
pemberhentian terkahir alamat.
Pada job ke7 ini membuat program dialamat 7600 untuk
mengirim data 2 byte ke memori dengan alamat adr yaitu data yang
ada pada register L dikirim ke alamat adr dan data pada register HL
dikirim ke alamat adr+1. Dimaksudkan disini LHLD 8000
merupakan data register 8000 yang dipindahkan ke alamat HL.
Kemudian SHLD 8001 merupakan alamat menyimpan data langsung
ke alamat memori. LHLD 8003 data register 8003 yang dipindahkan
ke alamat HL . SHLD 8007 merupakan data register 8007 yang
dipindahkan langsung ke alamat memori. RST 1 merupakan
pemberhentian terkahir untuk pembuatan alamat data.
Pada job ke 8 ini kita membuat program dialamat 7700 untuk
mengisi akumulator dengan data memori yang alamatnya ditunjukan
pada pasangan register HL dengan DE. LXI H,8000 merupakan data
pada alamat HL yang berisikan data pada alamat H adalah 00 dan L
adalah 00. MOV B,M merupakan data pada memori M dipindahkan
ke alamat B. MVI D,80 merupakan data register 80 yang dipindahkan
ke alamat D. MVI E,30 merupakan data register 03 yang dipindahkan
ke alamat E. LDAX D merupakan pasangan register DE yang
dipindahkan ke alamat A. RST 1 merupakan pemberhentian alamat
terakhir.
Pada jon terkahir kali ini kita membuat program pada alamat
7700 untuk mengisi data pasangan register BC dan DE ke akumulator.
MVI B,80 merupakan data register 80 yang dipindahkan ke alamt B/
MVI C,03 merupakan data register 03 yang dipindahkan ke alamat D.

STAX B merupakan data pada alamat A yang dipindahkan ke


pasangan register BC. RST 1 sebagai alamat pemberhentian.
VII.

KESIMPULAN
Dari percobaan diatas dapat saya simpulkan bahwa :
1. Register merupakan alat penyimpanan yang kecil yang
mempunyai kecepatan akses yang cukup tinggi, yang
digunakan untuk menyimpan data dan/atau intruksi yang
sedang diproses.
2. Register A berfungsi sebagai tempat menyimpan data pada
perhitungan matematika, logika, dan proses
pembacaan/pengisian data pada memori.
3. Register B,C,D,E,H,L berfungsi sebagai tempat
penyimpanan sementara data 8 bit pada proses
pemrograman. Fungsinya selain sebagai tempat
penyimpanan data 16 bit, juga dapat digunakan sebagai
penunjuk suatu alamat memori.

VIII. LAMPIRAN

LAPORAN PRAKTIKUM
SISTEM MIKROPROSESOR

Nama

: Dwi Riska Sari

Nim

: 061330320943

Kelas

: 4 ED

Jurusan/Prodi

: Teknik Elektro/Teknik Elektronika

Kelompok

:4

Instruktur

: AMPERAWAN, S.T, M.T

LABORATORIUM TEKNIK ELEKTRO


PROGRAM STUDI TEKNIK ELEKTRONIKA
POLITEKNIK NEGERI SRIWIJAYA
PALEMBANG
2015

Você também pode gostar