Anda di halaman 1dari 14

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

Rangkuman Mata Kuliah Microprocesor Minggu ke-1


MATERI MICROPROCESOR
Mikroprosesor Intel 8085 adalah sebuah Mikroprosesor 8-bit yang akan dipelajari pada Mata
pelajaran Mikroprosesor di Semester 3 ini.
Traner praktikum : midicom lucas nulle jerman

8085 register
Sistem minimum
Set instructions
Mnemoics : singkatan instruksi dalam bahasa asembling
Algorima : urusan langkah-langkah yang harus dilakukan untuk melakukan fungsi tertentu
Flowchart / diagram alir
Program dam bahasa rakitan
Program dengan loop
Program transfer data
Program penjumlahan
Program pengurangan
Program perkalian
Program pembagian
Program konversi data
Program konversi bialngan
Program dengan subroutine
Program dengan interupsi
Program delay
Program dengan tabel data
Pemrograman 1/0 (input output)
Pemrograman unit peraga 7 segment
Pemograman ADC dan DAC
Pemrograman DC Volt meter
Program kalkulator sederhana
Pemograman wave generator
Pemrograman sinyal/wave recorder
Dll

8085 REGISTER
1. Register-Register Pada Intel 8085
Register adalah sebuah rangkaian yang digunakan untuk menyimpan Data. Mikroprosesor
Intel 8085 menggunakan Bahasa Pemrograman Assembly. Assembly ini merupakan bahasa
tingkat menengah ( Middle ), berada di antara Bahasa Tingkat Rendah ( Low Level Language )
dan Bahasa Tingkat Tinggi ( High Level Language ). Secara garis besar walaupun
Mikroprosesor Intel 8085 merupakan prosesor 8-bit namun register-registernya dibagi menjadi
2 bagian, yaitu Register 8-bit dan Register 16-bit
a. Register 8-bit

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

Register 8-bit ini yang membedakan hanyalah pada bagian penyimpanan data, yaitu
penyimpanannya 8-bit biner, atau 2-bit hexa. Register 8-bit pada Intel 8085 terdiri dari :

Register A

Register B
Register C
Register D
Register E
Register H
Register L

Register akumulator : untuk menyimpan data


baik input, proses, output, data sementara
akan tersimpan diakumulator
Register umum (general : untuk menyimpan
data sementara

Register I

Register F

Flag register : untuk mengirim isyarat/status


dari prosesor

Register I (Instruction) : berfungsi sebagai


perintah, yang diterapkan untuk sistem secara
intern (internal)

Register 8-bit ini dapat dihubungkan menjadi register 16-bit namun dengan konfigurasi tertentu,
yaitu :
1) Register BC
2) Register DE
3) Register HL

Program :
Urutan instruksi-instruksi yang disusun sedemikian rupa sehingga dapat dijalankan.

Fetch
Decode
Execute

: Mengambil intruksi
: Menerjemahkan intruksi
: Dilaksanakan

Memory
Fetch

Register I

Decode

Execut
e

Keterangan :
Program yang tersusun secara lima kotak merupakan program yang berisi perintah untuk suatu
fungsi tertentu dalam sebuah memory yang memiliki langkah langkah sebelumnya ada empat kotak,
tiga kotak, dst. Merupakan urutan program yang di mulai dari satu program, yang kemudian di
ambil untuk di instruksikan di register I oleh jalur fetch, yang selanjutnya di artikan (decode) untuk
kemudian di jalankan (execute) dan seterusnya untuk program ke dua, ke tiga, ke empat, dan ke
lima. Urutan perintah harus benar dan penyelesaiannya berurutan.
-

Register menampung 8 bit membutuhkan 8 Flip flop

b. Register 16-bit
Register 16-bit memiliki tempat penyimpanan yang lebih besar yaitu 16-bit data atau 4-bit hexa.
Register 16-bit ini terdiri dari :

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

1) Register SP ( Stack Pointer )


Stack artinya tumpukan atau susunan data.
SP berfungsi untuk mengatur penyusunan/penumpukan data dalam unit memory

2) Register PC ( Pointer Counter )


MSB LSB
KETERANGAN
B
C
Akses hanya ke accumulator
D
E
H
L
Akses luas dan merupakan gabungan register yang paling kuat
PC : Merupakan register 16 bit yang berfungsi untuk menunjuk pada alamat, tempat
tersimpannya instruksi berikutnya yang akan dilaksanakan oleh prosesor.
Sebagai instruction pointer pada 8086 register, PC di sebut dengan atau berubah menjadi IP
(Instructon Pointer).
3) Pasangan Register ( Register Pair)
Merupakan penggabungan dari register 8 bit yang sudah ada. Gabungan dari register general
sehingga kapasitasnya menjadi 16 bit dengan posisi yang sudah di tentukan.
MSB
B

LSB
C

MSB

LSB

MSB

LSB

8 Bit

8 Bit
SB

Paling Hebat aksesnya

16

4) Peranan Flag Register (Register F)


Berfungsi memberitahukan status dari prosesor saat itu berkaitan dengan tanda bilangan,
parity,carry/borrow, auxiliary carry.
Table Flag Register
b7
S

b6
Z

b5
-

b4
AC

b3
-

b2
Pe

Keterangan :
S

: Sign bit

(Nilai biner dari operasi paling kiri, selalu bit ke 7)

: Zero bit

1 bila hasil sama dengan 0


0 bila hasil bukan 0

: Biasanya 0

b1
-

b0
Cy

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

Ac

: Auxilary Carry bit = Carry tambahan (ada tidaknya carry dari satuan ke puluhan,
0 jika tidak ada, 1 jika ada.

PE

: Parity Even bit = (mendeteksi jumlah logic 1 pada hasil operasi, 1 jika genap,0
jika ganjil). Bit yang ditambahkan untuk mengetahui apakah ada data yang salah
atau tidak.

Cy

: Carry / Borrow bit (ada tidaknya carry pada hasil operasi paling kiri,1 jika ada,
0 jika tidak ada)

Contoh :
Penjumlahan bilangan biner
10101100

11111001 +
110100101
Cy sign bit
Jika menjumlahkan 8 bit dengan 8 bit maka hasil juga harus 8 bit dan disimpan di
akumulator
S
=1
Z
=1
Ac
=1
PE
=1
Cy
=1
Desimal
37
29 +
66

Misal :

BCD
Cy
Ac
0011 0111
0010 1001 +
0110 0000
0000 0110 +
0110 0110

12
12 +
00

Z=1

Apakah memberi carry? Jika ia


+6 untuk satuan
Apakah puluhan lebih dari 9? Jika
tidak +00

6
6
Catatan :
1 Lihat satuan apakah hasilnya lebih dari 9 , dan apakah satuan memberi carry
pada puluhan, jika iya maka satuan di tambahkan 6
2 Lihat puluhan apakah hasil lebih dari 9, apakahpuluhan memberi carry pada
ratusan, jika tidak maka puluhan di tambahkan 0
3 Mengapa factor koreksi 0 dan 6
Decimal : 0,1,2,3,4,5,6,7,8,9,10
Heksa
: 0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,10 (dari 9-10 ada 6 variable/huruf)
4 Dari hasil di atas di dapatkan S=0,Z=O,Ac=1,Pe=1(yang di hitung hasil akhir
setelah mendapat factor koreksi), Cy=0
Desimal

BCD

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

0
1
2
3
4
5
6
7
8
9
10

0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F

RANGKUMAN PRAKTIKUM
Langkah-langkah menghidupkan modul medicom
1. Tekan tombol power
2. Ketika dihidupkan akan ada 4 LED yang menyala, jika salah satunya ada yang mati maka
ada modul medicom tersebut tidak benar atau ada yang salah
3. Lalu seven segmennya harus dalam keadaan mati, jika ada yang nyala maka harus direset
4. Lalu hidupkan monitor dengan menarik powernya, lalu akan muncul tanda minus berwarna
hijau
5. Lalu tekan tombol spasi pada keyboard untuk memunculkan menu, akan ada perintahperintah pada procesor atau pada sistem.
6. Tampilkan menu tersebut, jika menu tidak jelas bisa diatur tampilannya dengan pengaturan
cahaya (aturlah secukupnya) jangan terlalu terang, karena akan boros pemakaian yang
menyebabkan monitor tersebut pendek umurnya, karena monitor tersebut memancarkan
elektron.
Perintah pertama ialah Register (R) yang berkaitan dengan data pada suatu register.
Ketika ditekan R : Register, maka monitor akan bertanya Register mana? (ketik register yang
dia kenal A B C D E H L F)
Contoh :
Register C
Tekan CR (Carriet Ritten) umumnya dikeyboard sama saja dengan ENTER
Didalam register ada urutannya A B C D E H L F

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

Contoh : (Catatlah setiap register yang muncul!)


A = 7C
B = 89
C = 2A
D = 5D
E = 77
F = F3
H = 8F
L = AD
Lalu tekan ESC : untuk memutuskan perintah lama, menjalankan perintah baru
Harus ada dua kursor yang muncul dimonitor, yang satu diam dan yang satu lagi berkedip
Lalu kita menginginkan register A maka akan muncul
A = 64 jika kita menginginkan nilainya 7C maka tambahkan saja disampingnya untuk merubah
nilai tersebut jadi apa yang kita inginkan
Contoh langkah-langkahnya :
Tekan ESC

Maka akan muncul seperti ini

A
A 64 7C

Tekan CR maka akan berubah menjadi A 7C

CR

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

Praktikum :
1

Power Switch
Untuk menjalankan modul midicom, terlebih dahulu menyalakan tombol power switch
yang terletak pada samping kiri atas pada modul midicom, pastikan tombol menyala ketika
di tekan tombol ON, dengan power port terhubung ke terminal dan monitor mendapat
tegangan. Indikator dari modul midicom yang normal (siap dijalankan), yaitu :
Ketika di ON kan lampu pada 7 segment display dalam keadaan mati, jika terdapat
salah satu atau beberapa lampu yang menyala, maka tekan tombol riset yang terdapat di
sebelah kiri bawah pada modul midicom
Indicator pada lampu LED yang berjumlah 4 harus menyala, jika tidak ada yang
menyala atau salah satu tidak menyala, maka modul tidak dalam keadaan normal atau
tidak siap untuk di jalankan, hal ini terjadi karena tegangan supply tidak masuk akibat
kerusakan pada sistem modul midicom (kesalahan teknis)

Monitor
Monitor harus mendapat atau diberi tegangan supply dengan port yang terhubung
pada terminal, untuk menjalankan monitor terlebih dahulu menghidupkan monitor terlebih
dahulu dengan menarik tombol yang terdapat pada sebelah kanan display monitor, terdapat 2
tombol yang dapat di fungsikan, untuk menghidupkan layar monitor dari tombol pada
bagian atas, dengan indicator lampu pada monitor menyala yang kemudian terlihat kursor
bertanda minus (-) berwarna hijau yang berkedip kedip, kemudian atur lampu kursor agar
tidak terlalu terang, lampu layar monitor yang terang dapat mengakibatkan mudahnya
kerusakan pada monitor, hal ini dikarenakan lampu layar monitor menggunakan elektron
yang ditembakan ke layar monitor untuk pencahayaannya. Jika digunakan terlalu banyak,
elektron-elektron tersebut dapat mudah habis dan membuat layar monitor menjadi redup
untuk selanjutnya rusak.

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

Peta Memory MIDICOM


0000 H
5FFF H
6000 H
6FFF H
7000 H
FFFF H

EPROM
SISTEM
(RAM)
USER
(RAM)

Keterangan :
Untuk melihat data yang ada di memory maka harus ada alamat memory yang ingin di lihat.
Memory yang terdapat pada modul MIDICOM yaitu ,
a EPROM
adalah memory yang data memorinya tidak bisa di ubah, dengan batas alamat memory
antara 0000 H sampai 5FFF H, EPROM sendiri memiliki silsilah keluarga induk dari
b

ROM PROM EPROM EEPROM .


RAM
Adalah memory yang data memorynya dapat di ubah, RAM di bedakan menjadi 2 yaitu,
SISTEM (RAM)

dan USER (RAM), SISTEM (RAM) adalah ketika dimana data

memory dapat berubah namun hanya pada sistemnya, dengan alamat memory dari 6000
H sampai 6FFF H, pada keadaan tertentu data memory tidak dapat di ubah pada batas
alamat memory transisi atau sekitar alamat 6000 H, sedangkan pada USER (RAM) data
dapat di ubah sesuai dengan keinginan USER atau pengguna yang ingin di masukan
pada data memory dengan batas alamat memory dari 7000 H sampai FFFF H, yang dari
batas tersebut memiliki lebih dari 40.000 lokasi memory.
4

Menu Perintah
Setelah mengatur intensitas cahaya lampu layar monitor telah di tetapkan atau siap,
kemudian untuk menjalankan program program microprosesor perlu adanya perintah
perintah program, untuk menampilkan perintah program pada layar monitor tekan tombol
space bar (spasi) hingga muncul tampilan menu perintah pada layar monitor yang
merupakan perintah pada sistem dan prosesor (sistem midicom)
a Perintah R (Read/Set Register)
Perintah yang berfungsi untuk melihat data yang tersimpan pada register. Ketikan
tombol R untuk menjalankan perintah R. hingga muncul kata Register_ yang artinya
menanyakan register mana yang akan di lihat dengan nama register yang di kenal.

Contoh :
ketik R => A => CR

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

CR merupakan tombol perintah untuk memasukan kode data pada register atau memory
ENTER , Maka akan terlihat data memory yang terdapat pada register

A 00, yang

artinya dalam register A terdapat data 00. Untuk melakukan perintah selanjutnya lihatlah
pada layar monitor jika pada layar monitor terlihat kursor berada di samping dari data
A 00_ itu menandakan bahwa monitor atau memory belum siap untuk menerima
perintah baru, untuk memberikan perintah baru tekan tombol ESC(Escape) hingga
muncul tampilan kursor -_ dengan kursor bawah berkedip kedip, itu menandakan
bahwa monitor atau program siap menerima perintah baru.
Example : pada register A yang tadinya berisi data 00 ingin di ubah menjadi 7C maka
prosesnya, tekan R=>A 00 7C => CR , maka dengan menjalankan kembali perintah A
b

untuk register A data akan berubah menjadi A 7C.


Perintah M (Memory)
Adalah perintah yang berfungsi untuk melihat dan mengganti data yang ada pada
memory, dengan mengetahui terlebih dahulu alamat memorinya.
Contoh :
Untuk melihat data memori pada alamat memori 7733,
Langkah pertama untuk memutuskan perintah lama dan menjalankan perintah baru
dengan menekan tombol ESC (escape) => CR=> M=> 7733=> CR, maka akan terlihat
data pada alamat memory 7733 adalah FF, tekan CR beberapa kali dan lihat data pada
alamat memory lainya secara berurutan. Untuk mengganti data pada alamat memory
7733 menjadi data 32, maka tekan ESC=> M => 7733=> CR => ketik 32 di samping
data awal=> CR=> ESC => M=> 7733=> CR, maka pada alamat memory akan terlihat
data berganti menjadi 7733 32. Hal ini di karenakan data yang di ubah berapa pada
alamat memory yang berada pada RAM USER.

Perintah L (List Memory)


Adalah perintah yang berfungsi untuk menampilkan data memory dengan jarak yang
jauh.
Contoh :
1 Untuk menampilkan lebih dari 256 data dari 7000 sampai dengan70FF, yaitu
ESC=> L => Tuliskan alamat awal (7000) => CR => Tuliskan alamat akhir (70FF)
=> CR. Maka akan menampilkan 16 data pada layar monitor dengan data lain yang
belum terlihat, untuk menampilkan data lain tersebut klik

Mengganti tampilan perintah L dari 7700 7709


ESC => M => 7700 => ketik 30 => CR (sampai dengan 7709 39)
ESC => L => 7700 => CR => 7709 => CR

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

maka akan muncul 7700 sampai dengan 7709 dengan data 30 sampai 39, yang juga
merupakan angka ASCII dari 0sampai dengan 9.
Koe ASCII 30 1
41 A
61 a
P
O
L
B
A
N
50
4F
4C
42
41
4E
Catatan untuk mengganti data pada alamat memory harus pada memory RAM
d

USER.
Perintah C (Copy)
Adalah perintah untuk mengcopy data dari lokasi memori ke lokasi memori lainnya, atau
satu blok memory lebih dari satu data.
Contoh :
Mengcopy data dari 7700 sanpai dengan 7709 ke lokasi memori 7900 sampai dengan
7909 agar data sama dari 0-9.
ESC=> C =>CR=> alamat awal (7700)=>CR=>alamat akhir (7709)=>CR=>alamat
tujuan awal (7900)=>CR=>L=>CR=> alamat tujuan awal (7900)=>CR=>alamat tujuan
akhir (7909)=> CR
Maka akan menampilkan data pada alamat memory 7900 sampai dengan 7909 sama

dengan data dari alamat memory 7700 sampai dengan 7709 yaitu 0-9
Perintah Fill
Adalah perintah yang berfungsi untuk mengisi data sama pada satu blok memory yang
banyak misalnya 1000 kali dengan data yang sama.
ESC =>F => alamat awal=>CR=>alamat akhir=>ketik 15 =>CR
Maka data akan menampilkan data memory yang sama.
Perintah I (Insert)
Adalah perintah yang berfungsi menyisipkan data, apabila da data yang terlewat untuk
menambahkan data tersebut ke dalam susunan data di antaranya. Dalam praktikum
terdafat kesalah teknis yaitu modul MIDICOM tdak berfungsi dengan baik, kesalahan
tersebut menambah satu data baru 00 pada data yang akan di sisipkan, sehingga untuk
mengatasi hal ini jika data yang akan disispkan di kurangi satu jumlahnya sehingga yang
tersisip di antara data tersebut berjumlah sesuai yang di inginkan. Misalnya ingin
menyisipkan 3 data, namun dalam perintah program hanya menyisipkan 2 data saja,
tetapi hasil akhir akan mendapat 3 ssipan data di antara data data tersebut.

Perintah GO
Adalah perintah yang berfungsi untuk menjalankan instruksi suatu program secara
langsung hingga bertemu stop atau perintah akhir.
Perintah T (trase)
Adalah perintah

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

A (Assembler) berfungsi untuk merubah kode rakitan (mnemonic) menjadi kode


hexa(biner) yang dimengerti oleh perangkat MIDICOM. Beberapa instruksi yang
dimengerti oleh mnemonic;
- MVI (menginput data)
- MOV (memindahkan data)
- ADD (operasi penjumlahan)
- RST (reset)
- SUB (operasi pengurangan)
- ACI (operasi penjumlahan dengan di sertai bilangan carry).

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

2. Register-Register Pada Intel 8085


Register adalah sebuah rangkaian yang digunakan untuk menyimpan Data, secara garis besar
walaupun Mikroprosesor Intel 8085 merupakan prosesor 8-bit namun register-registernya dibagi
menjadi 2 bagian, yaitu :
c. Register 8-bit
Register 8-bit ini yang membedakan hanyalah pada bagian penyimpanan data, yaitu
penyimpanannya 8-bit biner, atau 2-bit hexa. Register 8-bit pada Intel 8085 terdiri dari :
1) Register A (Accumulator)
2) Register B
3) Register C
4) Register D
5) Register E
6) Register H
7) Register L
8) Register F (Flag)
Register 8-bit ini dapat dihubungkan menjadi register 16-bit namun dengan konfigurasi tertentu,
yaitu :
4) Register BC
5) Register DE
6) Register HL
d. Register 16-bit
Register 16-bit memiliki tempat penyimpanan yang lebih besar yaitu 16-bit data atau 4-bit hexa.
Register 16-bit ini terdiri dari :
5) Register PC ( Pointer Counter )
6) Register SP ( Stack Pointer )
3. Flag Register
Pada Intel 8085 terdapat Register khusus yang menunjukkan flag dari setiap hasil dari proses yang
diinput user. Pada Flag Register ini hanya digunakan 5-bit sedangkan 3-bit lainnya tidak digunakan.
7

AC

PE

Cy / Bw

Keterangan :
S
: Sign Bit / Sign Flag
Z
: Zero Bit / Zero Flag
AC
: Auxiliary Carry Bit / Half Carry Bit
PE
: Parity Even Flag

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

Cy/Bw : Carry Flag / Borrow Flag


a. Sign Bit
Sign Bit adalah Bagian Bit ke-7 dari data yang merepresentasikan Nilai Positif atau Negatif
dari hasil pemrosesan.
S akan Set ( berlogika 1 ), jika hasil akhir dari pemrosesan data adalah bernilai Negatif ( 1 )
S akan Reset / Clear ( berlogika 0 ), jika hasil akir dari pemrosesan data bernilai Positif ( 0 )
Contoh :
1

Sign Bit

Sign Bit Bernilai 1, karena pada 10110111 bilangan tersebut bernilai negatif.
b. Zero Bit
Zero Bit adalah bagian bit ke-6 yang berhubungan dengan hasil yang bernilai 0.
Z akan Set ( berlogika 1 ), jika hasil akhir pemrosesan data tidak bernilai 0.
Z akan Reset / Clear ( berlogika 0 ), jika hasil akhir pemrosesan data bernilai 0.
Contoh :
1

Zero Bit

Zero Bit bernilai 0, karena hasilnya bukan 000000000, melainkan 10110111

c. Auxiliary Carry Bit


Auxiliary Carry pada Intel 8085 merupakan istilah khusus yang hanya terdapat pada
mikroprosesor Intel, namun Auxiliary Carry ini bisa juga disebut Half Carry pada
Mikroprosesor lain seperti Motorola atau Zylog. Auxiliary Carry ini merupakan carry yang
terdapat pada pertengahan atau antara Bit ke-3 dan Bit ke-4.
Contoh :
1

10001101
10111001_+
1 01000110
Pada Contoh penjumlahan di atas terdapat Auxiliary Carry bernilai 1, maka Ac bernilai 1.
d. Parity Even Flag
Parity Even Flag bekerja dengan mendeteksi Paritas Genap pada Hasil pemrosesan dari Intel
8085.
Jika Jumlah angka 1 pada hasil berjumlah Genap, maka parity even bernilai logika 1.
Jika Jumlah angka 1 pada hasil berjumlah Ganjil, maka parity even bernilai logika 0.
e. Carry Flag / Borrow Flag
Carry Flaq / Borrow Flag adalah indikator yang menunjukan nilai Carry atau Borrow pada
hasil pemrosesan data pada Intel 8085. Jika terdapat Carry pada proses penjumlahan, dan
Logika lainnya maka akan bernilai 1 Sedangkan jika terdapat Borrow pada proses pengurangan,

Reni Intan Kartini 2 B D3 Teknik Telekomunikasi 2015

maka akan bernilai 1 pula. Carry / Borrow akan bernilai 0 apabila tidak terdapat Carry atau
Borrow.
Contoh :
10001101
10111001_+
1 01000110
Pada Contoh Penjumlahan di atas terdapat Carry yang berada pada bit ke-8 bernilai 1, maka
Pada Carry Flag akan bernilai 1.
Contoh Pemrosesan pada Intel 8085 :
10001101
10001101
10111001_+
10111001 ^
1 01000110
10001001
Penjumlaha
n

AND

10001101
10111001
10111101

10001101
10111001
00110100

10001101
10111001 1 11010100

OR

EX-OR

Pegurang
an

Anda mungkin juga menyukai