270 likes | 505 Views
Assalamu’alaikum Wr.Wb. KELOMPOK 4. MARSUDI WIDODO (08018321) AMRI FEBRIANTO (08018326) RIZAL PRATAMA P (08018327) INDRAYANTO (08018442) YULI AGUS P (08018443). JENIS – JENIS PENGALAMATAN. A. Apakah Mode Pengalamatan itu?.
E N D
KELOMPOK 4 • MARSUDI WIDODO (08018321) • AMRI FEBRIANTO (08018326) • RIZAL PRATAMA P (08018327) • INDRAYANTO (08018442) • YULI AGUS P (08018443)
A. Apakah Mode Pengalamatan itu? • Mode Pengalamatan adalah bagaimana cara menunjuk sebuah alamat dimana operand diambil. • Mode pengalamatan diterapkan pada set instruksi dimana pada umumnya instruksi terdiri dari opcode (kode operasi) dan alamat .
B. Jenis – Jenis Pengalamatan • Direct • Indirect • Immediate • Register Addressing • Register Indirect Addressing • Displacement Addressing • Stack Addressing
Memori Register 0 52 A 1 1 B 2 12 C 50 3 43 D 51 …………….. …………….. 50 3 Y 51 7 Z 52 10 AC ……………….. IR 100 5 PC 101 6 …………………. 102 15 C. Penerapan Mode Pengalamatan Anggap kita mempunyai contoh register dan memory sebagai berikut, (bagian kiri datanya dan bagian kanan alamatnya).
1. DIRECT • Untuk pemanggilan alamat operand berupa register namanya Register Addressing. Dengan contoh instruksi LOAD C akan menghasilkan Acc <-50, karena alamat C berisi register bilangan 50. • Untuk pemanggilan alamat operand berupa memory namanya Direct Addressing.
Dengan contoh instruksi LOAD 3 akan menghasilkan Acc<-43, karena alamat 3 berisi bilangan 43. • Dengan contoh instruksi LOAD 3 akan menghasilkan Acc<-43, karena alamat 3 berisi bilangan 43. • Hanya memerlukan sebuah referensi memori dan tidak memerlukan kalkulasi khusus. • Keuntungan : • Field alamat berisi efektif address sebuah operand.
Kerugian : • Keterbatasan field alamat karena panjang fied alamat biasanya lebih kecil dibandingkan panjang word.
2. INDIRECT • Mode pengalamatan tidak langsung. • Field alamat mengacu pada alamat word di dalam memori, yang pada gilirannya akan berisi alamat operand yang panjang. • Untuk alamat pemanggilan berupa register namanya Register Indirect Addressing. Dengan contoh instruksi LOAD (D) akan menghasilkan Acc<-7, karena alamat register D berisi alamat memory 51, sedangkan alamat memory 51 berisi bilangan 7.
Untuk pemanggilan alamat berupa operand berupa memory namanya Indirect Addressing. Dengan contoh instruksi LOAD (50) akan menghasilkan Acc<-43, karena alamat memory 50 berisi alamat memory 3, sedangkan alamat memory 3 berisi bilangan 43. • Keuntungan : • Ruang alamat menjadi besar sehingga semakin banyak alamat yang dapat referensi.
Kerugian : • Diperlukan referensi ganda dalam satu fetch, sehingga memperlambat proses operasi.
3. IMMEDIATE • Bentuk pengalamatan ini yang paling sederhana. • Operan benar-benar berada dalam instruksi atau bagian dari instruksi = operand sama dengan field alamat. • Umumnya bilangan akan disimpan dalam bentuk komplemen dua. • Bit paling kiri sebagai tanda.
Ketika operand dimuatkan dalam register data, bit tanda akan digeser kekiri hingga maksimum word data. • Immediate tidak membutuhkan alamat memory/register, karena tempat untuk alamat operand diisi langsung oleh operandnya. • Contoh 1 : LOAD #9, akan menghasilkan Acc<-9. Nilai dibelakang tanda # dianggap sebagai operandnya.
Contoh 2 : ADD Y , #2, #5, akan menghasilkan register Y <-7. Kedua operand adalah 2 dan 5, denagn demikian 2+5=7. • Keuntungan : • Mode ini adalah tidak adanya referensi memory selain dari instruksi yang dipelukan untuk memperoleh operand. • Menghemat siklus instruksi sehingga proses keseluruhan akan cepat. • Kerugian : • Ukuran bilangan dibatasi oleh ukuran field alamat
4. REGISTER ADDRESSING • 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 memilki 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 keregister lebih cepat dari pada akses ke memori, sehingga proses eksekusi akan lebih cepat. • Kerugian : • Ruang alamat menjadi terbatas.
5. REGISTER INDIRECT ADDRESSING • Metode register pengalamatan tidak langsung mirip dengan mode pengalamatan tidak langsung. • Perbedaanya field alamat mengacu pada alamat register. Letak operand berada pada memori yang ditunjuk oleh isi register. • Keuntungan dan keterbatasan pengalamatan 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 pegelamatan register tidak langsung hanya menggunakan satu refensi memori utama sehinnga lebih cepat dari pada mode pengalamatan tidak langsung.
6. DISPLACEMENT ADDRESSING • Menggabungkan pengalamatan langsung dan register tidak langsung. • Mode ini mensyaratkan instruksi memiliki dua buah field alamat, sedikitnya sebuah field yang eksplisit. • Field eksplisit bernilai A dan field implicit mengarah pada register. • Operand berada pada alamat A ditambah isi register.
Tiga model Displacement : 1. Relative Addressing, register yang direferensi secara implicit adalah program counter (PC). • Alamat efektif didapatkan dari alamat instruksi saat itu ditambahkan ke field alamat. • Memanfaatkan konsep lokalitas memori untuk menyediakan operand-operan berikutnya. 2. Base Register Addressing, register yang direferensikan berisi sebuah alamat memori, dan filed alamat berisi perpindahan dari alamat itu. • Referensi register dapat eksplisit maupun implicit. • Memanfaatkan konsep loakalitas memori.
3. Indexing adalah field alamat mereferensi alamat memori utama, dan register yang dideferensikan berisi pemindahan postif dari alamat tersebut. • Merupakan kebalikan dari model base register. • Field alamat dianggap sebagai alamat memori dalam indexing. • Manfaat penting dalam indexing adalah untuk eksekusi program-program iterative.
7. STACK ADDRESSING • Stack adalah array lokasi yang linear = pushdown list = last-in-first-out-queue. • Stack merupakan blok lokasi yang terbalik Blok ditambahkan ke puncak stack sehingga setiap saat 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, dalam hal ini stack pointer mereferensi ke elemen ketiga stack.
Stack pointer tetap berada di dalam register. • Dengan demikian, referensi-referensi ke lokasi stack di dalam memori pada dasarnya merupakan pengalamatan register tidak langsung
Mode Algoritma Keuntungan kerugian Immediate Operand = A Tidak ada referensi memori Besaran operand terbatas Direct eA=A Sederhana Ruang alamat sederhana Indirect eA=(A) Ruang alamat besar Ruang memori ganda Register eA=R Tidak ada referensi memori Ruang alamat terbatas Regist Ind eA=(R) Ruang alamat besar Referensi memori ekstra Displacement eA=A+(R) Fleksibel Kompleks Stack eA=TopOfStack Tidak ada referensi Aplikasi memori terbatas MODE PENGALAMATAN (TABEL)
Mode Algoritma Immediate Operand=A Register eA=R Displacement eA=(SR)+A Base eA=(SR)+(B) Base with Displacement eA=(SR)+(B)+A Scaled index with displacement eA=(SR)+(B)+(I)+A Base with scaled index and displacement eA=(SR)+(I)xS+(B)=A Relative eA=(PC)+A Mode Pengalamatan Pentium • Keterangan • SR = register segment • PC = program counter • A = isi field alamat • B = register basis • I = register indeks • S = factor skala
SEKIAN TERIMA KASIH Jazaa kumullah khairan katsiiraa. Wassalamu’alaikum Wr.Wb