22
PERCOBAAN 2 I. JUDUL : REGISTER / MEMORI II. ALAT DAN BAHAN - SEPERANGKAT MIDICOM LN 85 V3.0 III. 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

Laporan Ke 2

Embed Size (px)

DESCRIPTION

laporan

Citation preview

PERCOBAAN 2

I. JUDUL : REGISTER / MEMORI

II. ALAT DAN BAHAN

SEPERANGKAT MIDICOM LN 85 V3.0

III. 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.

PSWRegister BenderaAccumulator

Register CPasanganRegister BCRegister B

Register DRegister EPasanganRegister DE

Register HRegister LPasanganRegister 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 ARegister 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 FRegister 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,LRegister 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 PCProgram 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 SPRegiater ini berfungsi sebagai penunjuk alamat memori, yaitu tempat menyimpan alamat kembali untuk perintah CALL dan tempat menyimpan data pada perintah PUSH-POP.

Register MRegister 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,00MVI H,80MVI M,AARST 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,00MVI H,80MVI A,MMVI L,01MVI H,80MVI M,ARST 1

V.3 Latihan 3 membuat program di alamat 7200 untuk pengisian data 16 bit ke pasangan register secara langsung.Org 7200

LXI H,8000LXI B,8001LXI D,8002RST 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,0000MVI D,DDMVI E,EEXCHGRST 1

V.5 Latihan 5 membuat program di alamat 7400 untuk mengirim data dari memori dengan alamat adr" ke akumulator.Org 7400

LDA 8000LXI H,8002MOV M,ARST 1

V.6 Latihan 6 membuat program di alamat 7500 untuk mengirim data dari akumulator ke memori dengan alamat adr.Org 7500

LXI H,0000LXI D,AACCLHLD 8000XCHGLHLD 8002RST 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 8000SHLD 8005LHLD 8003SHLD 8007RST 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,8000MOV B,MMVI D,80MVI E,03LDAX DRST 1

V.9 Latihan 9 membuat program di alamat 7700 untuk mengisi data pasangan register BC dan De ke akumulator.Org 7700

MVI B,80MVI C,03STAX BRST 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) InstruksiMOV r1, r2adalah 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. InstruksiMOV r, Mberfungsi 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.InstruksiMOV 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 registerBasalnya isinya08. setelah dilakukan instruksi (MVIB,0A) maka isi dari si registerBmenjadi0A.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 untukmemindahkan 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. instruksiLXI (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 PRAKTIKUMSISTEM MIKROPROSESOR

Nama: Dwi Riska SariNim: 061330320943Kelas: 4 EDJurusan/Prodi: Teknik Elektro/Teknik ElektronikaKelompok: 4 Instruktur: AMPERAWAN, S.T, M.T

LABORATORIUM TEKNIK ELEKTROPROGRAM STUDI TEKNIK ELEKTRONIKAPOLITEKNIK NEGERI SRIWIJAYAPALEMBANG2015