Anda di halaman 1dari 9

Siti Mustawa Informatika : Jurnal Ilmiah AMIK Labuhan Batu

Vol.1 No.1 /Januari/2013

PERANGKAT LUNAK PEMBELAJARAN


OPERASI ARITMATIKA PADA MIKROPROSESOR INTEL
8088/8086 DENGAN METODE CBT (Computer Based Training)

Oleh :

Siti Mustawa
Dosen Prodi Manajemen Informatika, AMIK Labuhanbatu
Rantauprapat, Medan; siti_mustawa@yahool.co.id

Abstract

Dewasa ini kecerdasan buatan berkembang pesat melaju bersama kecepatan


perkembangan teknologi computer yang dari hari ke hari semakin berkembang. Manusia selalu
berupaya untuk memudahkan dalam memecahan setiap permasalahan yang di hadapi. Salah
satu aplikasi untuk memecahkan setiap masalah adalah perunak lunak pembelajaran mede
pengalamatan dan operasi aritmatika pada mikroprosesor intel 8086/8088, prosesor Intel
8088/8086 merupakan mikroprosesor yang menjadi mesin bagi mikrokomputer IBM PC/XT
dan paling banyak digunakan pada saat ini.
Prosesor ini sering disebut dengan singkat sebagai “8088” atau “8086”. Walaupun
perangkat keras 8088 sedikit berbeda dengan 8086, tetapi keduanya dapat dipandang sama dari
sisi pemrograman Intel 8088/8086 adalah prosesor 16 bit, artinya lintasan data dan register-
nya berukuran 16 bit. 8086 merupakan mikroprosesor 16-bit dengan bus data 16-bit dan 8088
merupakan mikroprosesor 16-bit dengan bus data 8-bit. Mode pengalamatan dan operasi
aritmatika pada bahasa Assembly ini dapat mengamati perubahan isi register yang terjadi
dalam pembelajaaran proses instruksinya.
Perangkat Lunak ini dapat digunakan untuk memahami mode pengalamatan register
dan pengalamatan segera serta beberapa operasi aritmatika pada mikroprosesor intel
8088/8086. Perangkat Lunak dijadikan sebagai media pendukung dalam proses pembelajaran
mikroprosesor dasar.

Keyword: osdata, xs4all, googlesyndication, Comcast.

I. PENDAHULUAN langsung. Dalam mempelajari bahasa Assembly,


kita harus menghafalkan semua register dan
Prosesor Intel 8088/8086 merupakan mengerti kegunaannya masing–masing. Register
mikroprosesor yang menjadi mesin bagi adalah sebagian kecil memori komputer yang
mikrokomputer IBM PC/XT dan kompatibelnya. dipakai untuk tempat penampungan data dengan
Prosesor ini sering disebut dengan singkat sebagai ketentuan bahwa data yang terdapat dalam register
“8088” atau “8086”. Walaupun perangkat keras dapat diproses dalam berbagai operasi dengan
8088 sedikit berbeda dengan 8086, tetapi keduanya melihat berapa besar kemampuan menampung
dapat dipandang sama dari sisi pemrograman Intel register tersebut. Register dapat dibagi dalam lima
8088/8086 adalah prosesor 16 bit, artinya lintasan golongan yaitu general purpose register (AX, BX,
data dan register-nya berukuran 16 bit. CX dan DX), segment register (CS, DS, SS dan ES),
Kebanyakan instruksi dalam program pointer register (IP, SP dan BP), index register (SI
bahasa Assembly membutuhkan operand yaitu data dan DI) dan flag register.
yang akan diolah. Cara menentukan atau Penulis tertarik untuk mempelajari tentang
memperoleh harga operand ini disebut sebagai operasi aritmatika pada bahasa Assembly dan
modus pengalamatan (addressing mode). Modus mengamati perubahan isi register yang terjadi.
pengalamatan terbagi atas beberapa macam antara
lain, pengalamatan register, pengalamatan segera,
pengalamatan langsung dan pengalamatan tak

17 | P a g e
Siti Mustawa Informatika : Jurnal Ilmiah AMIK Labuhan Batu
Vol.1 No.1 /Januari/2013

II. PEMBAHASAN buku-buku. Menurut sudut pandang CAI,


masalah utamanya adalah bagaimana
Percobaan penggunaan komputer untuk menyusun bahan-bahan instruksi yang akan
proses belajar dimulai di Amerika Serikat pada ditampilkan oleh komputer dengan cara yang
akhir tahun 1950-an dan awal tahun 1960-an. paling efektif. Ada tiga jenis CAI yaitu :
Kemudian penelitian selanjutnya dilakukan oleh a. Drill and Practice
Harvard University bekerja sama dengan IBM pada Merupakan cara yang paling mudah, terdiri
tahun 1965. Setelah munculnya komputer mikro, dari tahap-tahap penampilan permasalahan,
sistem pengajaran dengan komputer menjadi penerimaan respon pengguna, pemberian hasil
semakin meluas pada pengembangan perangkat analisis, umpan balik, dan pemberian
lunak pembelajaran yang dikenal dengan istilah pertanyaan lain. Secara umum jenis ini tidak
perangkat lunak pembelajaran. Perangkat lunak menampilkan informasi baru tapi memberikan
pembelajaran dengan komputer muncul dari latihan dari konsep yang sudah ada.
sejumlah disiplin ilmu, terutama ilmu komputer dan b. Tutorial
psikologi. Dari ilmu komputer dan matematika Jenis ini berisi konsep atau prosedur yang
muncul program-program yang membuat semua disertai dengan pertanyaan atau latihan pada
perhitungan dan fungsi lebih mudah dan akhir dari pelatihan. Selama pelatihan,
bermanfaat. Sedangkan dari ilmu psikologi muncul komputer mengajarkan informasi-informasi
pengetahuan mengenai teori belajar, teknik belajar, yang baru kepada siswa seperti layaknya
serta motivasi yang baik. seorang guru pembimbing. Setelah itu,
Tujuan utama dari perangkat lunak pemahaman siswa diukur melalui serangkaian
pembelajaran adalah : tes dan komputer melanjutkan pengajaran
1. Peningkatan pengawasan. berdasarkan hasil pengukuran tadi.
2. Penggunaan sumber daya. c. Socratic
3. Individualisasi. Berisi komunikasi antara pengguna dan
4. Ketepatan waktu dan tingkat ketersediaan. komputer dalam natural language. Jenis ini
5. Pengurangan waktu latihan. sebenarnya berasal dari penelitian dalam
6. Perbaikan hasil kerja. bidang intelijensia semu (artificial
7. Alat yang nyaman dipakai. intelligence). Socratic mampu melakukan
8. Pengganti cara belajar. interaksi dalam natural language dan bisa
9. Peningkatan kepuasan belajar. memahami apa yang ditanyakan pengguna.
10. Pengurangan waktu pengembangan.
Jenis pemakaian komputer untuk perangkat Mode Pengalamatan Data
lunak pembelajaran digolongkan menjadi tiga Instruksi pengalamatan data yang sering
bagian, yaitu : dipakai adalah instruksi MOV. Instruksi MOV
1. Pengujian. merupakan instruksi yang umum dan fleksibel.
Dalam jenis ini, komputer digunakan untuk Instruksi ini akan meng-copy data dari sumber ke
memberikan penilaian dan analisis tes, tujuan sehingga sumber tidak pernah berubah tetapi
membuat soal tes, membuat nilai acak, tes tujuan hampir selalu berubah. Instruksi ini tidak
interaksi, dan tes adaptasi. Jenis ini sering mempengaruhi register flag Sumber dan tujuan
disebut dengan Computer Assisted Testing sering disebut sebagai operand.
(CAT). Mode pengalamatan data yang digunakan
2. Manajemen. dengan instruksi ini mencakup :
Jenis pemakaian ini disebut dengan Computer 1. Pengalamatan register (register addressing).
Managed Instruction (CMI), dimana Pengalamatan ini digunakan untuk
komputer digunakan untuk mengatur memindahkan salinan dari byte atau word dari
kemajuan peserta pelatihan dan alat-alat yang register atau lokasi memori sumber ke dalam
dipakai. CMI biasanya digunakan untuk register atau lokasi memori tujuan. Contoh :
meningkatkan pengawasan dan efisiensi MOV CX, DX akan menyalin isi dari register
dalam sistem pelatihan. DX ke dalam register CX.
3. Instruksi. 2. Pengalamatan segera (immediate
Sering disebut dengan Computer Assisted addressing).
Instruction (CAI). Jenis ini menganggap Pengalamatan ini digunakan untuk
komputer sebagai media penyimpanan memindahkan data yang berukuran byte atau
instruksi sama seperti slide, tape, video atau word langsung ke dalam register tujuan.
18 | P a g e
Siti Mustawa Informatika : Jurnal Ilmiah AMIK Labuhan Batu
Vol.1 No.1 /Januari/2013

Contoh : instruksi MOV AL, 22H menyalin displacement. Contoh : MOV AX, [BX+4].
bilangan 22H ke dalam register AL. Instruksi ini mengisi AX dengan data yang
3. Pengalamatan langsung (direct addressing). alamat segmen datanya dibentuk oleh BX
Pengalamatan ini memindahkan byte atau ditambah 4.
word antara lokasi memori dan register. 7. Pengalamatan base relatif-plus-index
Kumpulan instruksi tidak menyediakan Pengalamatan ini memindahkan data yang
pemindahan data antara memori ke memori berukuran byte atau word antara register dan
kecuali pada instruksi MOVS. Contoh : lokasi memori yang ditunjuk oleh suatu
instruksi MOV CX, LIST menyalin isi dari register basis dan register indeks ditambah
lokasi memori LIST ke dalam register CX. displacement. Contoh : MOV AX,
4. Pengalamatan register tidak langsung ARRAY[BX+DI]. Instruksi ini menggunakan
(indirect addressing). sebuah alamat yang dibentuk oleh
Pengalamatan ini memindahkan byte atau penambahan ARRAY, BX dan DI.
word antara register dan lokasi memori yang Karena mode pengalamatan yang diambil
alamatnya ditunjuk oleh suatu register indeks hanya berupa pengalamatan register dan segera
atau register basis. Register indeks dan basis maka pembahasan kali ini hanya dibatasi pada
adalah BP, BX, DI, dan SI. Contoh : MOV pengalamatan register dan segera.
AX, [BX] menyalin data 16-bit dari alamat
offset segmen data yang alamatnya ditunjuk 1. Pengalamatan Register (Register Addressing)
oleh register BX ke dalam register AX.
5. Pengalamatan base-plus-index. Pengalamatan register merupakan bentuk
Pengalamatan ini memindahkan data yang pengalamatan data yang paling dikenal dan lebih
berukuran byte atau word antara register dan mudah untuk dipakai. Register 8 bit yang dipakai
lokasi memori yang ditunjuk leh register yaitu : AH, AL, BH, BL, CH, CL, DH, dan DL.
basis (BP atau BX) ditambah dengan isi Sedangkan register 16 bit yang dipakai yaitu : AX,
register indeks (DI atau SI). Contoh : BX, CX, DX, SP, BP, SI, dan DI. Pengalamatan
instruksi MOV [BX+DI], CL menyalin isi antara register 8 bit dan 16 bit tidak diijinkan dan
register CL yang berukuran byte ke dalam akan mengeluarkan pesan kesalahan pada saat
lokasi memori segmen data yang ditunjuk dilakukan perakitan.
oleh BX ditambah DI.
6. Pengalamatan register relatif (relative
register addressing).
Pengalamatan ini memindahkan data yang
berukuran byte atau word antara register dan
lokasi memori yang ditunjuk oleh suatu
register indeks atau basis ditambah

Beberapa contoh instruksi pengalamatan register :


Tabel. Contoh instruksi pengalamatan register
Bahasa Assembly Ukuran Operasi
MOV AL, BL 8 bit Menyalin isi register BL ke register AL
MOV CH, CL 8 bit Menyalin isi register CL ke register CH
MOV AX, CX 16 bit Menyalin isi register CX ke register AX
MOV SP, BP 16 bit Menyalin isi register BP ke register SP
MOV DS, AX 16 bit Menyalin isi register AX ke register DS
MOV SI, DI 16 bit Menyalin isi register DI ke register SI
MOV BX, ES 16 bit Menyalin isi register ES ke register BX
MOV ES, DS – Tidak diijinkan (segmen ke segmen)
MOV BL, DX – Tidak diijinkan (ukuran berbeda)
MOV CS, AX – Tidak diijinkan (register segmen tidak boleh
merupakan register tujuan)
Sumber: (Barry B. Brey, Mikroprosesor Intel 8086/8088/80186/80188/80286/ 80386/80486 : Arsitektur
Pemrograman Antarmuka, Edisi 5, Jilid 2, Penerbit Erlangga, 2003)

19 | P a g e
Siti Mustawa Informatika : Jurnal Ilmiah AMIK Labuhan Batu
Vol.1 No.1 /Januari/2013

2. Pengalamatan Segera (Immediate Addressing)


Mode pengalamatan data lainnya adalah Assembler simbolis memperlihatkan data
pengalamatan segera. Istilah segera menyatakan segera dalam banyak cara. Huruf H ditambahkan
bahwa data segera mengikuti kode operasi kepada data heksadesimal. Jika data heksadesimal
heksadesimal dalam memori. Data segera mulai dengan suatu huruf, assembler memerlukan
merupakan data konstan, sedangkan data yang data yang dimulai dengan 0. Sebagai contoh, untuk
dipindahkan dari register adalah data berubah. merepresentasikan heksadesimal F2, digunakan
Pengalamatan segera bekerja berdasarkan data yang 0F2H dalam bahasa rakitan. Beberapa contoh
berukuran byte atau word. instruksi pengalamatan segera:

Tabel. Contoh instruksi pengalamatan segera


Bahasa Assembly Ukuran Operasi
MOV BL, 44 8 bit Menyalin 44 desimal (2CH) ke dalam BL
MOV AX, 44H 16 bit Menyalin 0044H ke dalam AX
MOV SI, 0 16 bit Menyalin 0000H ke dalam SI
MOV CH, 100 8 bit Menyalin 100 desimal (64H) ke dalam CH
MOV AL, ‘A’ 8 bit Menyalin ASCII A ke dalam AL
MOV AX, ‘AB’ 16 bit Menyalin ASCII BA ke dalam AX. Ini
bukan kesalahan. Karakter ASCII
disimpan sebagai BA, sehingga perlu
dilatih ketelitian saat memilih pasangan
karakter ASCII ukuran word
MOV CL, 11001110B 8 bit Menyalin 11001110 biner ke dalam CL

Sumber: (Barry B. Brey, Mikroprosesor Intel 8086/8088/80186/80188/80286/ 80386/80486, 2003)

Operasi Aritmatika Format : SBB Source, Destination. Contoh


Operasi aritmatika dalam bahasa Assembly : ADC AL, BL akan menghasilkan AL =
terdapat banyak variasinya, namun karena instruksi AL + BL + Carry.
aritmatika yang diambil hanya berupa instruksi 3. INC, yaitu instruksi penjumlahan yang
penjumlahan, pengurangan, perkalian, pembagian, menambahkan dengan 1. Format : INC
Increment (INC) dan Decrement (DEC) maka Destination. Contoh : INC AL akan
pembahasan kali ini hanya dibatasi pada beberapa menghasilkan AL = AL + 1.
instruksi sebagai berikut: Berdasarkan mode pengalamatan yang
dipakai, maka instruksi penjumlahan dapat dibagi
1. Penjumlahan menjadi :
Perintah penjumlahan tampil dalam berbagai 1. Penjumlahan register (register addition).
format penulisan dalam beberapa jenis Penjumlahan ini digunakan untuk
mikroprosesor. Instruksi penjumlahan dapat berupa menjumlahkan isi dari beberapa register.
ADD, ADC dan INC. ADD merupakan instruksi Contoh :
penjumlahan dimana carry tidak dimasukkan dalam ADD AL, BL akan menghasilkan AL = AL
perhitungan. Sedangkan ADC merupakan instruksi + BL.
penjumlahan yang memasukkan carry dalam ADC AL, BL akan menghasilkan AL = AL
perhitungan. Inkremen (INC) adalah format khusus + BL + Carry.
dari penjumlahan yaitu menambahkan suatu 2. Penjumlahan segera (immediate addition).
bilangan dengan satu. Penjumlahan ini digunakan untuk
Instruksi penjumlahan terdiri dari 3 macam menjumlahkan isi register dengan nilai
yaitu : konstan.
1. ADD, yaitu instruksi penjumlahan yang Contoh :
tidak menyertakan nilai carry dalam ADD AL, 05H akan menghasilkan AL =
perhitungan. Format : SUB Source, AL + 05H
Destination. Contoh : ADD AL, BL akan ADC AL, 05H akan menghasilkan AL =
menghasilkan AL = AL + BL. AL + 05H + Carry
2. ADC, yaitu instruksi penjumlahan yang
menyertakan nilai carry dalam perhitungan.
20 | P a g e
Siti Mustawa Informatika : Jurnal Ilmiah AMIK Labuhan Batu
Vol.1 No.1 /Januari/2013

2. Pengurangan Namun pembahasan kali ini hanya dibatasi


Ada banyak bentuk pengurangan yang pada bilangan bulat tak bertanda yaitu operasi MUL
ditampilkan dalam kumpulan instruksi. Format- yang memiliki format sebagai berikut : MUL
format ini menggunakan mode pengalamatan data 8 Source. Contoh : MUL 05H akan menghasilkan AX
bit dan 16 bit. Format khusus dari pengurangan = AX * 05H.
DEC yaitu dekremen, digunakan untuk
mengurangkan dengan 1. Seperti halnya instruksi 4. Pembagian
penjumlahan, pengurangan juga memiliki nilai Seperti halnya perkalian, pembagian terjadi
borrow, sehingga instruksi pengurangan terdiri dari pada bilangan 8 bit atau 16 bit. Bilangan ini adalah
3 macam yaitu: bilangan bulat bertanda (IDIV) atau tak bertanda
1. SUB, yaitu instruksi pengurangan yang (DIV). Hasil pembagian selalu dua kali lebarnya
tidak menyertakan nilai borrow dalam dari bilangan yang dibagi. Artinya pembagian 8 bit
perhitungan. Format : SUB Source, membagi bilangan 16 bit dengan bilangan 8 bit.
Destination. Contoh : SUB AL, BL akan Namun pembahasan kali ini hanya dibatasi
menghasilkan AL = AL – BL. pada bilangan bulat tak bertanda yaitu operasi DIV
2. SBB, yaitu instruksi pengurangan yang yang memiliki format sebagai berikut : DIV Source.
menyertakan nilai borrow dalam Contoh : DIV 05H akan menghasilkan AX = AX /
perhitungan. Format : SBB Source, 05H.
Destination. Contoh : SBB AL, BL akan Bilangan Bertanda dan Bilangan Tidak
menghasilkan AL = AL – BL – Borrow. Bertanda
3. DEC, yaitu instruksi pengurangan yang Yang dimaksud dengan bilangan bertanda
mengurangkan dengan 1. Format : DEC adalah bilangan yang mengandung arti plus (+),
Destination. Contoh : DEC AL akan ataupun min (–), sedangkan bilangan tidak bertanda
menghasilkan AL = AL – 1. mengandung arti semua positif.
Berdasarkan mode pengalamatan yang
dipakai, maka instruksi pengurangan dapat dibagi Kapasitas Bilangan
menjadi : Kapasitas bilangan bertanda dan tidak
1. Pengurangan register (register substraction). bertanda ditentukan oleh register Sign Flag dengan
Pengurangan ini digunakan untuk komposisi sebagai berikut :
mengurangkan isi dari beberapa register. 1. Bila Sign Flag menunjukkan 0, maka
Contoh : komposisi bit untuk angka paling besar
SUB AL, BL akan menghasilkan AL = AL adalah : 1111 1111 1111 1111 atau
– BL. desimalnya 65535. Jadi dapat disimpulkan
SBB AL, BL akan menghasilkan AL = AL bahwa bila bilangan itu bilangan tak bertanda,
– BL – Borrow. maka bilangan itu akan berkomposisi bit
2. Pengurangan segera (immediate antara 0000 0000 0000 0000 hingga 1111
substraction). 1111 1111 1111 atau 0000 hexa hingga FFFF
3. Pengurangan ini digunakan untuk hexa.
mengurangkan isi register dengan nilai 2. Bila Sign Flag menunjukkan 1 maka bilangan
konstan. tersebut merupakan bilangan bertanda.
Contoh : Bilangan bertanda mempunyai cara
SUB AL, 05H akan menghasilkan AL = AL perhitungan yang lain dengan bilangan
– 05H bertanda. Untuk bilangan bertanda, bit
SBB AL, 05H akan menghasilkan AL = AL terakhir atau bit ke–16 (bit paling kiri) tidak
– 05H – Borrow dimasukkan dalam hitungan melainkan
merupakan petunjuk apakah bilangan itu
3. Perkalian positif atau negatif. Oleh karena kemampuan
Perkalian dilakukan dalam format byte dan tersebut, maka kapasitas bilangan bertanda
word dan dapat juga bilangan bulat bertanda menjadi berkurang sebagian, yaitu untuk
(IMUL) atau bilangan bulat tak bertanda (MUL). bilangan positif dari 0 sampai 32767 dan
Beberapa bit flag seperti O dan C berubah saat untuk bilangan negatif–1 sampai dengan–
proses perkalian dijalankan dan memberikan hasil 32767.
yang dapat diramalkan sebelumnya. Flag yang lain
juga berubah, tetapi hasilnya tidak bisa diramalkan.

21 | P a g e
Siti Mustawa Informatika : Jurnal Ilmiah AMIK Labuhan Batu
Vol.1 No.1 /Januari/2013

Penulisan Bit Bilangan Negatif 3. Tambahan bilangan 1 pada bilangan yang


Pada bilangan bertanda, cara menulis bit telah diubah dan konversi ke heksadesimal
negatif tidak sama dengan bit positif. Cara menulis akan didapat hasil yang diinginkan.
bit bilangan negatif untuk -1 adalah 1111 1111 1111 Sebagai contoh :
1111 dan -2 adalah 1111 1111 1111 1110. Jadi dapat Nilai heksadesimal dari – 20 adalah sebagai
disimpulkan bahwa cara penulisan bilangan negatif berikut :
dimulai dengan bilangan terbesar dalam komposisi Nilai 20 diubah menjadi biner 0000 0000
16 bit yaitu FFFF hexa dan diakhiri bilangan 1000 0001 0100
0000 0000 0000 (8000 hexa) sebagai bilangan Balikkan angka biner diatas menjadi 1111
negatif terbesar – 32768. 1111 1110 1011
Tambahkan dengan 1 dan didapat 1111 1111 1110
Mencari Bilangan Negatif 1100 atau FFEC heksa.
Untuk mempermudah pencarian bilangan
negatif dari heksadesimal dapat dilakukan langkah–
langkah sebagai berikut :
1. Ubah bilangan desimal negatif ke bilangan
biner positif.
2. Ubah setiap angka 0 menjadi 1 dan angka 1
menjadi 0.

Perangkat Keras Mikroprosesor 8088/8086


Pin-Out
MODE
MAKS.
{ MODE
MIN.
} MODE
MIN.
MODE
{ MAKS. }
GND 1 40 VCC GND 1 40 VCC
AD14 2 39 AD15 AD14 2 39 AD15

AD13 3 38 A16/S3 AD13 3 38 A16/S3

AD12 4 37 A17/S4 AD12 4 37 A17/S4


AD11 5 36 A18/S5 AD11 5 36 A18/S5

AD10 6 35 A19/S6 AD10 6 35 A19/S6


AD9 7 34 BHE/S7 AD9 7 34 SSO (HIGH)
AD8 8 33 MN/MX AD8 8 33 MN/MX

AD7 9 32 RD AD7 9 32 RD
CPU CPU
AD6 10 8086 31 RQ/GT0 (HOLD) AD6 10 8088 31 HOLD (HOLD)
AD5 11 30 RQ/GT1 (HLDA) AD5 11 30 HLDA (HLDA)
AD4 12 29 LOCK (WR) AD4 12 29 WR (LOCK)
AD3 13 28 S2 (M/IO) AD3 13 28 IO/M (S2)
AD2 14 27 S1 (DT/R) AD2 14 27 DT/R (S1)

AD1 15 26 S0 (DEN) AD1 15 26 DEN (S0)


AD0 16 25 QS0 (ALE) AD0 16 25 ALE (QS0)

NMI 17 24 QS1 (INTA) NMI 17 24 INTA (QS1)

INTR 18 23 TEST INTR 18 23 TEST


CLK 19 22 READY CLK 19 22 READY
GND 20 21 RESET GND 20 21 RESET

(a) (b)

Gambar (a) Pin-out mikroprosesor 8086; (b) pin-out mikroprosesor 8088


Sumber: (Barry B. Brey, Mikroprosesor Intel 8086/8088/80186/80188/80286/ 80386/80486 : Arsitektur
Pemrograman Antarmuka, Edisi 5, Jilid 2, Penerbit Erlangga, 2003)

22 | P a g e
Siti Mustawa Informatika : Jurnal Ilmiah AMIK Labuhan Batu
Vol.1 No.1 /Januari/2013

Gambar di atas mengilustrasikan pin-out e. RD : Jika sinyal baca berupa logika 0, bus
mikroprosesor 8086 dan 8088. Sebagaimana terlihat data bisa menerima data dari memori atau
jika dibandingkan dengan teliti, secara virtual alat I/O yang dihubungkan ke sistem. Pin
sebenarnya tidak ada perbedaan antara kedua ini naik ke status impedansi tingginya
mikroprosesor ini, keduanya terkemas dalam dual selama acknowledge hold.
in-line package (DIP) 40-pin. f. READY : Input ini dikendalikan untuk
8086 merupakan mikroprosesor 16-bit menyisipkan status tunggu ke timing
dengan bus data 16-bit dan 8088 merupakan mikroprosesor. Jika pin READY diletakkan
mikroprosesor 16-bit dengan bus data 8-bit. pada level logika 0, mikroprosesor
Sebagaimana ditunjukkan oleh pin-out, 8086 memasuki status tunggu dan tetap idle
memiliki koneksi pin AD0-AD15, dan 8088 (tidak bekerja). Jika pin READY diletakkan
memiliki koneksi pin AD0-AD7. Lebar bus data pada level logika 1, tidak memiliki efek
dengan demikian merupakan satu-satunya pada operasi mikroprosesor.
perbedaan utama antara kedua mikroprosesor ini. g. INTR : Interrupt request digunakan untuk
Tetapi, ada satu perbedaan kecil pada salah meminta interrupt perangkat keras. Jika
satu sinyal kontrol. 8086 mempunyai pin M/IO, dan INTR dijaga tetap high ketika IF = 1,
8088 mempunayi pin M/IO. Perbedaan perangkat 8088/8086 memasuki siklus interrupt
keras lainnya terdapat pada pin 34 dari kedua chip: acknowledge (INTA menjadi aktif) setelah
pada 8088, terdapat pin SSO, sementara pada 8086, instruksi pada saat itu telah dijalankan
pin tersebut merupakan BHE/S7. sepenuhnya.
h. TEST : Pin test merupakan input yang dites
Fungsi Pin oleh instruksi WAIT. Jika TEST berupa
Pin-pin yang terdapat dalam mikroprosesor logika 0, instruksi WAIT berfungsi sebagai
8088/8086 : NOP. Jika TEST berupa logika 1, instruksi
a. AD7-AD0 : Jalur bus alamat/data 8088 WAIT menunggu sampai TEST menjadi
terdiri dari bus data alamat yang logika 0. Pin ini biasanya dihubungkan
dimultipleks pada 8088 dan berisi delapan dengan koprosesor numerik 8087.
bit paling kanan dari alamat memori atau i. NMI : Input non-maskable interrupt sama
nomor port I/O jika ALE aktif (logika 1) dengan INTR kecuali interrupt NMI tidak
atau data ketika ALE aktif (logika 0). Pin- memeriksa apakah bit flag IF merupakan
pin ini berada pada status impedansi tinggi logika 1. Jika NMI diaktifkan, input
selama hold acknowledge. interrupt ini menggunakan vektor interrupt
b. A15-A8 : Bus alamat 8088 menyediakan 2.
bit-bit alamat memori paruh atas yang ada j. RESET : Input reset menyebabkan
selama siklus bus. Hubungan alamat ini mikroprosesor mereset dirinya sendiri jika
menuju ke status impedansi tingginya pin ini tetap high selama minimum empat
selama acknowledge hold. periode clock. Jika 8086 atua 8088 direset,
c. AD15-AD8 : Jalur bus alamat/data 8086 akan mulai mengeksekusi instruksi pada
terdiri dari bus alamat/data bagian atau lokasi memori FFFF0H dan mendisabel
pada 8086. Jalur-jalur ini berisi bit-bit interrupt berikutnya dengan meng-clearkan
alamat A15-A8 jika ALE pada logika 1, dan bit flag IF.
hubungan bus data D15-D8. Pin-pin ini k. CLK : Pin clock menyediakan sinyal waktu
memasuki status impedansi tinggi jika (timing) dasar ke mikroprosesor. Sinyal
terjadi hold acknowledge. clock harus memiliki siklus kerja 33 persen
d. A19/S6-A16/S3: Bit-bit bus alamat/status untuk memberikan timing internal yang
di-multipleks untuk memberikan sinyal sesuai untuk 8088/8086.
alamat A19-A16 dan juga bit-bit status S6- l. Vcc : Input catu daya ini menyediakan
S3. Pin-pin ini juga mempertahankan status sinyal +5,0 V, ± 10 % ke mikroprosesor.
impedansi tinggi selama hold acknowledge. m. GND : Hubungan ground merupakan jalur
Bit status S6 selalu tetap merupakan logika kembali catu daya.
0, bit S5 menunjukkan kondisi bit-bit flag n. MN/MX : Pin mode minimum/maksimum
IF, dan S4 dan S3 menunjukkan segmen memilih operasi mode minimum atau
mana yang diakses selama siklus bus pada maksimum untuk mikroprosesor.
saat itu. o. BHE/S7 : Pin bus high enable digunakan
pada 8086 untuk enable bit bus data yang
23 | P a g e
Siti Mustawa Informatika : Jurnal Ilmiah AMIK Labuhan Batu
Vol.1 No.1 /Januari/2013

paling signifikan selama operasi baca atau 1. Register AX, secara khusus digunakan
tulis. pada operasi aritmatika terutama dalam
p. IO/M atau M/IO : Pin IO/M (8088) atau pin operasi pembagian dan pengurangan.
M/IO (8086) memilih memori atau I/O. 2. Register BX, biasanya digunakan untuk
q. WR : Jalur write merupakan strobe yang menunjukkan suatu alamat offset dari suatu
menunjukkan bahwa 8088/8086 sedang segmen.
mengeluarkan data ke memori atau alat I/O. 3. Register CX, digunakan secara khusus
r. INTA : Sinyal intterupt acknowledge pada operasi looping dimana register ini
merupakan tanggapan terhadap pin input menentukan berapa banyaknya looping
INTR. yang akan terjadi.
s. ALE : Address latch enable menunjukkan 4. Register DX, digunakan untuk
bahwa bus alamat/data 8088/8086 berisi menampung sisa hasil pembagian 16 bit.
informasi alamat.
t. DT/R : Sinyal data transmit/receive 2. Segment Register
menunjukkan bahwa bus data Register yang termasuk dalam kelompok
mikroprosesor sedang mengirim data atau ini terdiri atas register CS, DS, ES, dan SS yang
menerima data. masing–masing merupakan register 16 bit.
u. DEN : Data bus enable mengaktifkan Register–register dalam kelompok ini secara umum
buffer bus data eksternal. digunakan untuk menunjukkan alamat dari suatu
v. HOLD : Input hold meminta direct memory segmen memori.
access (DMA). Register CS (Code Segment) digunakan
w. HLDA : Hold acknowledge menunjukkan untuk menunjukkan tempat dari segmen yang
bahwa 8088/8086 memasuki status hold. sedang aktif, sedangkan register SS (Stack
x. SS0 : Jalur status SS0 ekivalen dengan pin Segment) menunjukkan letak dari segmen yang
S0 pada operasi mikroprosesor mode digunakan oleh stack.
maksimum. Register DS (Data Segment) biasanya
y. S2, S1 dan S0 : Bit-bit status ini digunakan untuk menunjukkan tempat segmen
menunjukkan fungsi siklus bus saat itu. dimana data–data pada program disimpan.
z. RO/GT1 dan RO/GT0 : Pin-pin Umumnya isi register ini tidak perlu diubah kecuali
request/grant ini meminta direct memory pada program residen (program) yang menetap di
access (DMA) selama operasi mode memori walaupun eksekusi program telah berakhir.
maksimum. Register ES (Extra Segment) sesuai dengan
aa. LOCK : Output lock digunakan untuk namanya adalah suatu register tambahan yang tidak
mengunci periferal dari sistem. mempunyai tugas khusus. Register ES biasanya
digunakan untuk menunjukkan suatu alamat di
QS1 dan QS0 : Bit queue status menunjukkan memori, misalkan alamat memori video.
status antrian instruksi internal.
3. Pointer dan Index Register
Register dapat dibagi dalam lima golongan, yaitu : Register IP (Instruction Pointer)
berpasangan dengan CS (CS:IP) menunjukkan
1. General Purpose Register alamat memori tempat dari instruksi selanjutnya
Register yang termasuk dalam kelompok yang akan dieksekusi. Register IP juga merupakan
ini adalah register AX, BX, CX, DX, yang masing– register 16 bit.
masing terdiri atas 16 bit. Register–register ini Register SP (Stack Pointer) yang
mempunyai satu ciri khas, yaitu dapat dipisah berpasangan dengan register SS (SS:SP) digunakan
menjadi 2 bagian dimana masing–masing bagian untuk menunjukkan alamat dari stack, sedangkan
terdiri atas 8 bit, seperti register AX dapat dipecah register BP (Base Pointer) yang berpasangan
menjadi register AH, dan AL. Akhir H dengan register SS (SS:BP) mencatat suatu alamat
menunjukkan High dan akhiran L menunjukkan di memori tempat data berada.
Low. Register SI (Source Index) dan register DI
Secara umum register-register dalam (Destination Index) biasanya digunakan pada
kelompok ini dapat digunakan untuk berbagai operasi untai dengan mengakses secara langsung
keperluan, walaupun demikian ada pula pada alamat memori yang ditunjuk kedua register
penggunaan khusus dari masing-masing register ini.
ini, yaitu :
24 | P a g e
Siti Mustawa Informatika : Jurnal Ilmiah AMIK Labuhan Batu
Vol.1 No.1 /Januari/2013

4. Flag Register 5. SF (Sign Flag), jika digunakan bilangan


Flags register merupakan suatu komposisi bertanda bit ini akan bernilai 1.
register 16 bit dimana komposisi bitnya dapat 6. ZF (Zero Flag), jika hasil operasi
mengecek apakah sesuatu proses itu berfungsi atau menghasilkan nol, maka bit ini akan bernilai
tidak. Sebagai contoh, Sign Flag menunjukkan 1.
apakah suatu bilangan bertanda atau tidak. 7. AF (Auxiliary Flag), digunakan oleh operasi
Adapun flag yang terdapat pada BCD, seperti pada perintah AAA.
mikroprosesor 8088 ke atas adalah sebagai berikut : 8. PF (Parity Flag), digunakan untuk
1. OF (Overflow Flag), jika terjadi overflow menunjukkan paritas bilangan, bit ini akan
pada operasi aritmatika bit ini akan bernilai 1. bernilai 1 bila bilangan yang dihasilkan
2. DF (Direction Flag), digunakan pada operasi merupakan bilangan genap.
untai untuk menunjukkan arah proses. 9. CF (Carry Flag), jika terjadi peminjaman
3. IF (Interrupt enable Flag), mikroprosesor (borrow) pada operasi pengurangan atau
akan mengabaikan interupsi yang terjadi jika bawaan (carry) pada penjumlahan, maka bit
bit ini 0. ini akan bernilai 1.
4. TF (Trap Flag), digunakan untuk proses
pelacakan langkah demi langkah.

Tabel 2.5. Susunan Flag Register 8088


Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Flag OF DF IF TF SF ZF AF PF CF
Sumber: (Barry B. Brey, , Mikroprosesor Intel 8086/8088/80186/80188/80286/ 80386/80486, 2003)

C. Kesimpulan 4. Bagi yang ingin menggunakan system


Setelah menyelesaikan perancangan pembelajaran ini dapat dikembangkan bahasa
perangkat lunak pembelajaran penerapan Assembly, sistem operasi, dan
operasi aritmatika pada mikroprosesor intel pemprosesannya.
8088/8086 ini, penulis menarik kesimpulan
sebagai berikut : DAFTAR PUSTAKA
1. Perangkat Lunak ini dapat digunakan untuk
memahami modus pengalamatan register dan Albert Paul Malvino, Elektronika Komputer
segera serta beberapa operasi aritmatika pada Digital : Pengantar Mikrokomputer, Edisi
mikroprosesor intel 8088/8086. Kedua, Penerbit Erlangga, 1994.
2. Perangkat Lunak dijadikan sebagai media Ario Suryokusumo, Microsoft Visual Basic 6.0,
pendukung dalam proses pembelajaran PT. Elex Media Komputindo, 2001.
mikroprosesor dasar dan system operasi. Barry B. Brey, Mikroprosesor Intel
D. Saran 8086/8088/80186/80188/80286/
Penulis ingin memberikan beberapa saran 80386/80486 : Arsitektur Pemrograman
yang mungkin dapat membantu dalam Antarmuka, Edisi 5, Jilid 2, Penerbit
pengembangan perancangan perangkat lunak Erlangga, 2003.
pembelajaran penerapan operasi aritmatika Hadi, Rahadian, Pemrograman Microsoft Visual
pada mikroprosesor intel 8088/8086 yaitu : Basic dengan menggunakan Windows
1. Modus pengalamatan yang dibahas dapat API, PT. Elex Media Komputindo, Jakarta,
diperbanyak seperti menambahkan mode 2001.
pengalamatan langsung, tidak langsung, Muchlas, Rangkaian Digital, Penerbit Gava Media,
base-plus-index, register relatif dan indeks Yokyakarta, Januari 2005.
berskala. Soepono Soeparlan, Mikroprosesor 8088/8086,
2. Operasi yang dibahas dalam aplikasi dapat 80186, 80286, 80386, dan 80486
diperbanyak seperti menambahkan operasi :Arsitektur, Pemrograman, dan
aritmatika lainnya, operasi perbandingan, dan Interfacing, Penerbit Gunadarma, Jakarta
sebagainya. 1995.
3. Mikroprosesor yang digunakan dapat lebih
dari 16-bit.

25 | P a g e

Anda mungkin juga menyukai