Karakteristik Instruksi Mesin

Menurut Kamus Besar Bahasa Indonesia, Karakteristik adalah
ciri-ciri khusus atau mempunyai sifat khas sesuai dengan perwatakan tertentu.
Instruksi adalah perintah atau arahan (untuk melakukan suatu pekerjaan atau
melaksanakan suatu tugas). Mesin adalah perkakas untuk menggerakkan, atau
membuat sesuatu yang dijalankan dengan roda-roda dan digerakkan oleh tenaga
manusia atau motor penggerak yang menggunakan bahan bakar minyak atau tenaga
alam.
Jadi, karakteristik-karakteristik instruksi mesin adalah
ciri-ciri khusus atau sifat khas yang dimiliki oleh instruksi-instruksi atau
kode operasi dalam pemrograman komputer.. Operasi CPU ditentukan oleh
instruksi-instruksi yang dieksekusinya. Instruksi-instruksi ini dikenal sebagai
intruksi mesin atau instruksi computer. Set fungsi dari instruksi-instruksi
yang berbeda yang dapat di eksekusi oleh CPU dikenal sebagai set instruksi CPU.
A. Elemen-elemen Instuksi Mesin
Setiap instruksi harus terdiri dari informasi yang
diperlukan oleh CPU untuk dieksekusi. Gambar langkah-langkah yang terdapat
dalam eksekusi instruksi dan bentuk elemen-elemen instruksi mesin, adalah
sebagai berikut :
Kode Operasi : menentukan operasi-operasi yang akan
dilakukan (misalnya: ADD,I/O). Operasi itu dispesifilan oleh sebuah kode biner,
dikenal sebagai kode operasi.
Acuan Operand Sumber : Operasi dapat melibatkan satu atau
lebih operand sumber, dengan kata lain, operand adalah input bagi operasi.
Acuan Operand Hasil: Operasi dapat menghasilkan sebuah
hasil.
Acuan Instruksi Berikutnya: Elemen ini memberitahukan CPU
posisi instruksi berikutnya yang harus diambil setelah menyelesaikan eksekusi
suatu instruksi. Instuksi berikutnya yang akan diambil berada di memori utama
atau pada system memori virtual, akan berada baik di dalam memori utama atau
memori sekunder. Umumnya, instruksi yang akan segera diambil selanjutnya,
berada setelah instruksi saat itu. Ketika acuan eksplisit dibutuhkan, maka
alamat memori utama atau alamat memori virtual harus disiapkan.
Operand sumber
dan hasil dapat berada di salah satu dari ketiga daerah berikut ini:
Memori Utama atau Memori Virtual: Dengan adanya acuan
instruksi berikutnya, maka alamat memori utama atau memori virtual harus
diketahui.
Register CPU: Dengan suatu pengecualian yang jarang terjadi,
CPU terdiri dari sebuah register atau lebih yang dapat diacu oleh
instruksi-instruksi mesin. Bila hanya terdapat sebuah register saja, maka acuan
ke instruksi tersebut dapat berbentuk implicit. Sedangkan jika terdapat lebih
dari satu register, maka setiap register diberi nomor yang unik, dan instruksi
harus terdiri dari nomor register yang dimaksud.
Perangkat I/O: Instruksi harus menspesifikan modul I/O dan
perangkat yang diperlukan oleh operasi. Jika digunakan I/O memori terpetakan,
maka perangkat ini merupakan memori utama atau memori virtual.
B. Representasi Instruksi
Di dalam computer, instruksi dipresentasikan oleh sehimpunan
bit. Himpunan bit ini dibagi menjadi beberapa bidang, dengan bidang-bidang ini
berkaitan dengan elemen-elemen yang akan memuat instruksi. Layout instruksi ini
dikenal sebagai bentuk instruksi. Contoh yang sederhana ditunjukkan pada
gambar. Pada sebagian besar set instruksi, dapat digunakan lebih dari satu
bentuk. Selama berlangsungnya eksekusi instruksi, instruksi dibaca ke dalam
register instruksi yang terdapat dalam CPU. Untuk melakukan operasi yang
diperlukan, CPU harus dapat mengeluarkan data dari berbagai bidang instruksi.
Opcode direpresentasikan dengan singkatan-singkatan, yang disebut mnemorik,
yang mengindikasikan operasi, contohnya adalah:
-ADD Add (Menambahkan)
-SUB Substract (Pengurangan)
-MPY Multiply (Perkalian)
-DIV Divide (Pembagian)
-LOAD Muatkan data data dari memori
-STOR Simpan data ke memori
Operand-operand juga direpresentasikan secara simbolik.
Misalnya instruksi ADD R,Y Berarti tambahkan niali yang terdapat pada lokasi Y
ke isi register R. Dalam contoh ini, Y berkaitan dengan alamat lokasi di dalam
memori, dan R berkaitan dengan register tertentu. Perlu dicatat bahwa operasi
dilakukan terhadap isi alamat, bukan terhadap alamatnya.
Sehingga adalah mungkin untuk menuliskan program bahasa
mesin dalam bentuk simbolik. Setiap opcode simbolik memiliki representasi biner
yang tetap, dan pemrograman dapat menetapkan masing-masing operand simbolik.
Misalnya, pemrograman dapat memulainya dengan definisi-definisi:
-X=523
-Y=514
dan seterusnya. Sebuah program yang sederhana akan menerima
input simbol ini, kemudian mengkonversiakn opcode dan acuan operand menjadi
bentuk biner, dan akhirnya membentuk instruksi mesin biner.
C. Jenis-Jenis Instruksi
Sebuah instuksi yang dapat diekspresikan dalam bahasa BASIC
atau FORTRAN. X = X+Y Pernyataan ini menginstruksiakna komputer untuk
menambahkan nilai yang tersimpan di Y ke nilai yang tersimpan di X dan
menyimpan hasilnya di X. Variabel X dan Y berkorespondensi dengan lokasi 513
dan 514. Jika kita mengasumsikan set instruksi mesin yang sederhana, maka
operasi ini dapat dilakukan dengan tiga buah instruksi:
1. Muatkan sebuah register dengan isi lokasi memori 513
2. Tambahkan isi lokasi memori ke register
3. Simpan isi register di lokasi memori 513
Suatu komputer harus memiliki set instruksi yang
memungkinkan pengguna untuk memformulasikan pengolahan data atau dengan
memperhatikan kemampuan pemrograman bahasa tingkat tinggi. Agar dapat
dieksekusi, setiap program yang ditulis dalam bahasa program tingkat tinggi
harus diterjemahkan ke dalam bahasa mesin. Jadi, set instruksi mesin harus
dapat mengekspresikan setiap instruksi bahas atingkat tinggi.
Adapun Jenis-jenis instrusi sebagai berikut:
- Pengolahan Data : Instrusi-instruksi aritmatika dan logika
- Penyimpanan Data : Instriksi-instruksi memori
- Perpindahan Data : Instruksi I/O
- Kontrol : Instruksi pemeriksaan dan percabangan
D. Jumlah Alamat
Salah satu cara tradisional dalam menjelaskan arsitektur
prosesor adalah dengan memakai jumlah alamat yang terdapat pada masing-masing
instruksi. Instruksi aritmatika dan logika memerlukan operand yang berjumlah
banyak. Secara virtual, seluruh operasi eritmatika dan logika merupakan
uner/unary (satu operand) atau biner (dua operand). Dengan demikian, memerlukan
maksimum dua alamat untuk acuan operand. Hasil sebuah operasi akan memerlukan
alamat ketiga.
Dengan demikian, instruksi perlu memiliki empat buah acuan
alamat: dua buah operand, sebuah hasil operasi, dan sebuah alamat instruksi
berikutnya. Sebagian besar CPU merupakan variasi satu, dua, atau tiga alamat
dengan alamat instruksi berikutnya merupakan implisit (diperoleh dari pencacah
program). Format tiga alamat tidak umum digunakan, karena instruksi-instruksi
tersebut memerlukan bentuk instruksi yang lebih relatif lebih panjang untuk
menampung acuan-acuan tiga alamat. Sedangkan bentuk dua alamat mengurangi
kebuatuahan ruang akan tetapi menimbulkan kesulitan. Instruksi yang lebih
sederhana adalah instruksi satu alamat. Agar alamat ini dapat berfungsi, alamat
perlu diimplisitkan.
E. Rancangan Set Instruksi
Salah satu hal yang paling menarik tentang rancangan
komputer adalah rancangan set instruksi. Karena rancangan ini mempengaruhi
banak aspek sistem komputer, maka rancangan set instruksi sangat kompleks. Set
instruksi menentukan banyak fungsi yang akan dilakukan oleh CPU dan karena itu
memiliki efek yang sangat menentukan implementasi CPU. Set instruksi merupakan
alat bagi pemrogram untuk mengontrol CPU. Dengan demikian, kebutuhan-kebutuhan
pemrogram harus menjadi bahan pertimbangan dalam merancang set instruksi.
Masalah rancangan fundamental yang paling signifikan meliputi:
Repertoi Operasi: Berapa banyak dan opersai-operasi apa yang
harus disediakan, dan sekompleks apakah operasi itu seharusnya.
Jenis data : berbagai jenis data pada saat operasi
dijalankan
Bentuk instruksi : Panjang instruksi (dalam bit), jumlah
alamat, ukuran bidang, dan sebagainya.
Register : Jumlah register CPU yang dapat diacu oleh
instruksi, dan fungsinya.
Pengalamatan: Mode untuk menspesifikasikan alamat suatu
operand.
Masalah-masalah ini saling berkaitan dan harus diperhatikan
dalam merancang set instruksi.
Kesimpulan
Instruksi mesin (machine intruction) yang dieksekusi
membentuk suatu operasi dan berbagai macam fungsi CPU.
Kumpulan fungsi yang dapat dieksekusi CPU disebut set
instruksi (istruction set) CPU.
Karakteristik instruksi mesin, meliputi:
- Elemen-elemen instruksi
- Representasi instruksi
- Jenis-jenis instruksi
- Penggunaan alamat
- Rancangan set instruksi