Mode Pengalamatan
Mode pengalamatan merupakan metode penentuan alamat operand
pada instruksi. Operand instruksi diletakan pada memori utama dan register
CPU. Tujuan yang mempengaruhi arsitektur komputer ketika memilih mode
pengalamatan:
- Mengurangi
panjang instruksi dengan mempunyai medan yang pendek untuk alamat.
- Menyediakan
bantuan yang tangguh kepada pemrogram untuk penanganan data kompleks
seperti pengindeksan sebuah array, control loop, relokasi program dan
sebagainya.
Teknik Pengalamatan
- Immediate
Addressing
- Direct
Addressing
- Indirect
Addressing
- Register
addressing
- Register
indirect addressing
- Displacement
addressing
- Stack addressing
A. Immediate Addressing (Pengalamatan Segera)
Adalah bentuk pengalamatan yang paling sederhana.
Penjelasan :
- Operand
benar-benar ada dalam instruksi atau bagian dari intsruksi
- Operand
sama dengan field alamat
- Umumnya
bilangan akan disimpan dalam bentuk complement dua
- Bit
paling kiri sebagai bit tanda
- Ketika
operand dimuatkan ke dalam register data, bit tanda digeser ke kiri hingga
maksimum word data
Keuntungan :
- Tidak
adanya referensi memori selain dari instruksi yang diperlukan untuk
memperoleh operand
- Menghemat
siklus instruksi sehingga proses keseluruhanakan akan cepat
Kekurangan :
- Ukuran
bilangan dibatasi oleh ukuran field
Contoh :
ADD 7 ; tambahkan 7 pada akumulator
B. Direct Addressing (Pengalamatan Langsung)
Penjelasan :
- Teknik
ini banyak digunakan pada komputer lama dan komputer kecil
- Hanya
memerlukan sebuah referensi memori dan tidak memerlukan kalkulus khusus
Kelebihan :
- Field
alamat berisi efektif address sebuah operand
Kekurangan :
- Keterbatasan
field alamat karena panjang field alamat biasanya lebih kecil dibandingkan
panjang word
Contoh :
ADD A ; tambahkan isi pada lokasi alamat A ke akumulator
C. Indirect Addressing (Pengalamatan tak langsung)
Penjelasan :
- Merupakan
mode pengalamatan tak langsung
- Field
alamat mengacu pada alamat word di alamat memori, yang pada gilirannya
akan berisi alamat operand yang panjang
Kelebihan :
- Ruang
bagi alamat menjadi besar sehingga semakin banyak alamat yang dapat
referensi
Kekurangan :
- Diperlukan
referensi memori ganda dalam satu fetch sehingga memperlambat proses
operasi
Contoh :
ADD (A) ; tambahkan isi memori yang ditunjuk oleh isi alamat
A ke akumulator
D. Register addressing (Pengalamatan Register)
Penjelasan :
- Metode
pengalamatan register mirip dengan mode pengalamatan langsung
- Perbedaanya
terletak pada field alamat yang mengacu pada register, bukan pada memori
utama
- Field
yang mereferensi register memiliki panjang 3 atau 4 bit, sehingga dapat
mereferensi 8 atau 16 register general purpose
Keuntungan :
- Diperlukan
field alamat berukuran kecil dalam instruksi dan tidak diperlukan
referensi memori
- Akses
ke register lebih cepat daripada akses ke memori, sehingga proses eksekusi
akan lebih cepat
Kerugian :
- Ruang
alamat menjadi terbatas
Contoh :
E. Register indirect addressing (Pengalamatan
tak-langsung register)
Penjelasan :
- Metode
pengalamatan register tidak langsung mirip dengan mode pengalamatan tidak
langsung
- Perbedaannya
adalah field alamat mengacu pada alamat register
- Letak
operand berada pada memori yang dituju oleh isi register
- Keuntungan
dan keterbatasan pengalamatan register tidak langsung pada dasarnya sama
dengan pengalamatan tidak langsung
- Keterbatasan
field alamat diatasi dengan pengaksesan memori yang tidak langsung
sehingga alamat yang dapat direferensi makin banyak
- Dalam
satu siklus pengambilan dan penyimpanan, mode pengalamatan register tidak
langsung hanya menggunakan satu referensi memori utama sehingga lebih
cepat daripada mode pengalamatan tidak langsung
Contoh :
F. Displacement addressing
Penjelasan :
- Menggabungkan
kemampuan pengalamatan langsung dan pengalamatan register tidak langsung
- Mode
ini mensyaratkan instruksi memiliki dua buah field alamat, sedikitnya
sebuah field yang eksplisit
- Operand
berada pada alamat A ditambahkan isi register
- Tiga
model displacement
- Relative
addressing : register yang direferensi secara implisit adalah Program
Counter (PC)
- Alamat
efektif didapatkan dari alamat instruksi saat itu ditambahkan ke field
alamat
- Memanfaatkan
konsep lokalitas memori untuk menyediakan operand-operand berikutnya
- Base
register addressing : register yang direferensi berisi sebuah alamat
memori dan field alamat berisi perpindahan dari alamat itu
- Referensi
register dapat eksplisit maupun implisit
- Memanfaatkan
konsep lokalitas memori
- Indexing
: field alamat mereferensi alamat memori utama, dan register yang
direferensikan berisi pemindahan positif dari alamat tersebut
- Merupakan
kebalikan dari mode base register
- Field
alamat dianggap sebagai alamat memori dalam indexing
- Manfaat
penting dari indexing adalah untuk eksekusi program-pprogram iteratif
Contoh :
Field eksplisit bernilai A dan field imlisit mengarah pada
register
G. Stack addressing
Penjelasan :
- Stack
adalah array lokasi yang linier = pushdown list = last-in-firs-out
- Stack
merupakan blok lokasi yang terbaik
- Btir
ditambahkan ke puncak stack sehingga setiap blok akan terisi secara
parsial
- Yang
berkaitan dengan stack adalah pointer yang nilainya merupakan alamat
bagian paling atas stack
- Dua
elemen teratas stack dapat berada di dalam register CPU, yang dalam hal ini
stack pointer mereferensi ke elemen ketiga stack
- Stack
pointer tetap berada dalam register
- Dengan
demikian, referensi-referensi ke lokasi stack di dalam memori pada
dasarnya merupakan pengalamatan register tidak langsung













Tidak ada komentar:
Posting Komentar