FORMAT INSTRUKSI
Sebuah format instruksi
mendefinisikan susunan bit-bit dari sebuah instruksi.sebuah format instruksi
harus menyertakan sebuah opcode dan, baik secara implisit ataupun eksplisit, 0
atau lebih operan. setiap operan eksplisit direferensikan menggunakan jenis
pengalamatan yang telah dibahas sebelumnya. Format yang digunakan harus, baik
secara implisit atau eksplisit, mengindikasikanjenis pengalamatan yang
digunakan. Sebagian besat set instruksi memiliki lebih dari satu format
instruksi.
a. Panjang instruksi
Salah
satu isu terbesar yang harus dihadapi adalah panjang format instruksi.Keputusan
ini berpengaruh dan dipengaruhi oleh, organisasi memori, struktur bus,
kompleksitas processor dan kecepatan processor.Keputusan ini juga menentukan
kekayaan dan fleksibilitas sebuah mesin dalam pandangan seorang programmer
bahasa assembly.
Pertimbangan
dasar panjang instruksi salah satunya terletak pada pilihan apakah memiliki
instruksi yang powerful atau memilih untuk menghemat ruang memori.Pertimbangan
lainya, adalah pilihan apakah panjang sebuah instruksi harus sama dengan lebar
jalur komunikasi memori (data bus) atau salah satunya (panjang instruksi atau
lebar jalur) harus merupakan kelipatan dari yang lainya (contoh lebar jalur = 2
x panjang instruksi). feature penting lain yang perlu di perhatikan adalah
panjang instruksi harus merupakan kelipatan panjang karakter (word). Dengan
demikian, tidak ada bit yang tidak digunakan.
b. Alokasi Bit
Isu
penting berikutnya setelah panjang bit adalah bagaimana kita mengalokasikan
bit-bit dalam sebuah format. Jumlah opcode yang lebih berarti jumlah bit yang
lebih pada instruksi, ini juga berarti jumlah bit untuk alamat makin berkurang.
Salah satu teknik alokasibit adalah dengan menentukan bit opcode bersifat
dinamis (dengan ketentuan minimum jumlah bit). Pada sistem dengan panjang
instruksi tetap, ini berarti pengurangan bit untuk operan.
Gambar 1. Format Instruksi PDP-10
Beberapa faktor yang mempengaruhi
penentuan bit alamat diantaranya :
- Jumlah jenis pengalamatan
- Jumlah Operan
- Register vs memory
- Jumlah set register
- Rentang alamat
- Granulitas hardware
c. Variasi Panjang Instruksi
Sesuai
dengan namanya, teknik ini mengijinkan instruksi untuk memiliki panjang yang
berbeda-beda.Dengan demikian maka teknik ini dapat mengakomodasi format
instruksi yang berbeda-beda, bersifat lebih fleksibel, efesien serta
ringkas.Penggunaan teknik ini juga tetap memerlukan agar sebuah instruksi
berkorelasi secara integral dengan panjang sebuah word.Semua kemampuan teknik
ini secara otomatis menaikkan kompleksitas processor.
Gambar 2. Format Instruksi x86
BAHASA ASSEMBLY
Sebuah processor dapat memahami
dan mengeksekusi instruksi dalam bahasa mesin.instruksi tersebut pada dasarnya
merupakan bilangan biner yang tersimpan dalam komputer. jika seorang programmer
ingin membuat program dalam bahasa mesin secara langsung, artinya sama dengan
menuliskan semua sintak (berikut data) kedalam bentuk biner. Tentu saja hal ini
sangat berpotensi menimbulkan kesalahan.Untuk mengurangi kesalahan, nilai biner
bisa kita sederhanakan kedalam bentuk heksadesimal.Namun tetap saja tidak mudah
mengingat begitu banyak bilangan sekalipun berbentuk heksadesimal.
Untuk
memudahkan dan lebih manusiawi, kita dapat memberikan simbol berupa nama
singkat (disebut juga mnemonic) untuk setiap nilai heksadesimal. Penyimbolan
berlaku bukan hanya pada perintah, tetapi juga pada operan.Bahasa hasil dari
penyimbolan inilah yang kemudian disebut sebagai bahasa assembly.
Gambar 3. Komputasi Mesin ke Bahasa Assembly
Pengembangan bahasa assembly merupakan cikal
bakal terciptanya evolusi teknologi komputer. Bahasa ini merupakan langkah
pertama untuk sampai pada bahasa tingkat tinggi seperti yang kita gunakan saat
ini.
No comments:
Post a Comment