ARSITEKTUR DAN
ORGANISASI KOMPUTER
PRIO HANDOKO, S.KOM., M.T.I.
PART 3:
THE CENTRAL
PROCESSING UNIT
CHAPTER 11
: ADDRESSING MODES
AND FORMATS
Kompetensi Dasar
Arsitektur dan Organisasi Komputer 3
CHAPTER 11:
ADDRESSING MODES
AND FORMATS
Mahasiswa memiliki pengetahuan mengenai format dan modus pengalamatan
Agenda
• Addressing
• x86 and ARM Addressing Modes
• Instruction Formats
• x86 and ARM Instruction Formats
11.1 Addressing
4
Arsitektur dan Organisasi Komputer
Teknik-teknik pengalamatan (addressing): • Immediate
• Direct
• Indirect
• Register
• Register Indirect
• Displacement (Indexed)
5
Arsitektur dan Organisasi Komputer
Immediate
opcode
• Nilai operand muncul pada instruksi
• Operand = nilai yang terdapat pada address field dalam instruksi
• Tidak memiliki referensi memori untuk melakukan fetch data
• Cepat
• Jangkauan terbatas
6
Arsitektur dan Organisasi Komputer
Direct
opcode
Berisikan field alamat yang terdapat dalam instruksi mengacu ke memori
11.1
Addressing (cont…)
• Address field berisikan alamat operand
• EA (effective address) adalah alamat aktual dari lokasi yang berisi operand EA = A
• Membutuhkan satu referensi memori untuk mengakses operand
• Ruang alamat terbatas
11.1
Addressing (cont…)
Indirect
opcode
9
Arsitektur dan Organisasi Komputer
• Pengalamatan tidak langsung • Memiliki ruang alamat yang luas (2N)
• Field alamat berisikan alamat dari alamat
operand EA = (A)
• Membutuhkan dua referensi memori untuk melakukan fetch data; 1 untuk alamat dan 1 untuk nilai yang disimpan
• Lambat
• Membutuhkan multiple access untuk dapat menemukan operand
10
Arsitektur dan Organisasi Komputer
Register
berisikan field alamat yang dalam instruksi yang mengacu kepada register opcode
11.1
Addressing (cont…)
11
Arsitektur dan Organisasi Komputer
• Operand tersimpan dalam register EA = R
• Jumlah register terbatas
• Membutuhkan field alamat yang sangat kecil
• Instruksi lebih ringkas • Fetch instruksi cepat • Tidak mengakses memori
11.1
Addressing (cont…)
12
Arsitektur dan Organisasi Komputer
• Ruang alamat yang terbatas • Multiple registers membantu kinerja • Memiliki kesamaan dengan direct
13
Arsitektur dan Organisasi Komputer
Register Indirect
berisikan field alamat yang dalam instruksi yang mengacu kepada register
opcode
14
Arsitektur dan Organisasi Komputer
• Memiliki kesamaan dengan indirect addressing
• Perbedaan: field alamat mengacu pada register, bukan ke memori EA = (R) • Operand berada pada sel memori yang
menunjukkan ke isi dari register (R) • Memiliki ruang alamat yang luas
• Memiliki lebih sedikit akses ke memori jika dbandingkan dengan insirect addressing
11.1
Addressing (cont…)
Displacement
berisikan field alamat terdapat dalam instruksi mengacu ke memori opcode
berisikan field alamat yang dalam instruksi yang mengacu kepada register
11.1
Addressing (cont…)
• Merupakan perpaduan antara direct dan
register indirect addressing EA = A + (R) • Field alamat menyimpan 2 nilai:
1. A = base value
2. R = register that holds displacement
• Terdapat 3 tipe displacement addressing: 1. Relative addressing
17
Arsitektur dan Organisasi Komputer
Relative Addressing
• Dimana register R = Program counter, PC • EA = A + (PC)
Base Register Addressing
• Khusus di 80x86
• A = holds displacement
• R = menyimpan pointer ke base address
18
Arsitektur dan Organisasi Komputer
Indexing
• Umumnya digunakan untuk prosesyang memiliki iterasi
• A = base • R = displacement • EA = A + R
• Terdapat 3 jenis operasi:
1. Autoindexing 2. Postindexing 3. Preindexing
11.1
Addressing (cont…)
19
Arsitektur dan Organisasi Komputer Autoindexing
Melakukan penambahan/pengurangan secara otomatis index register setelah selesai direferensi
Postindexing
Melakukan penambahan/pengurangan secara otomatis index register setelah proses indirect addressing selesai
Pretindexing
Melakukan penambahan/pengurangan secara otomatis index register sebelum proses indirect addressing
dilakukan
11.1
Addressing (cont…)
20
Arsitektur dan Organisasi Komputer
21
Arsitektur dan Organisasi Komputer Arsitektur dan Organisasi Komputer 22
• Mekanisme penerjemahan alamat pada X86
menghasilkan sebuah alamat yang disebut dengan virtual (AE)
• Virtual atau effective address merupakan offset ke segment
• Alamat awal + offset = linier address (LA)
11.2 Pentium Addressing Mode (cont…)
x86 Addressing Modes
25
Arsitektur dan Organisasi Komputer
• Mendefinisikan representasi bit dalam sebuah instruksi termasuk opcode dan
operand
• Pada umumnya terdapat lebih dari 1 instruksi dalam sebuah instruction set
• Terdiri dari:
• Instruction length
• Allocation of bits
26
Arsitektur dan Organisasi Komputer
Instruction Length
Panjang Instruksi mempengaruhi :
• Memory size
• Memory organization
• Bus structure
• CPU complexity
• CPU speed
11.3 Instruction Format (cont…)
27
Arsitektur dan Organisasi Komputer
Allocation of Bits
Faktor-faktor yang menentukan penggunaan
addressing bit:
• Number of addressing modes
• Number of operands
• Register versus memory
• Number of register sets
• Address range
• Address granularity (alamat mengacu byte, word, dll)
- THANK YOU -