Anda di halaman 1dari 16

MAKALAH

MODE PENGALAMATAN

Diajukan untuk memenuhi salah satu tugas mata kuliah Organisasi


Arsitektur Komputer

DOSEN PENGAMPU: Amer Sharif S.Si, M.Kom.

KELOMPOK 6

1. Atikah Shabrina Siregar 231401096


2. Annisa Putri Aprilia 231401036
3. Chyntia Claudia 231401006
4. Damai Silalahi 231401126
5. Jason Sanjaya 231401066

PROGRAM STUDI S1 ILMU KOMPUTER


FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
KATA PENGANTAR

Puji syukur kami panjatkan kepada Tuhan Yang Maha Esa, karena atas limpahan
rahmatnya penyusun dapat menyelesaikan makalah ini tepat waktu tanpa ada halangan
yang berarti dan sesuai dengan harapan.
Ucapan terima kasih kami sampaikan kepada Bapak Amer Sharif S.Si, M.Kom
sebagai dosen pengampu mata kuliah Organisasi Arsitektur Komputer yang telah
membantu memberikan arahan dan pemahaman dalam penyusunan makalah ini.
Kami menyadari bahwa dalam penyusunan makalah ini masih banyak
kekurangan karena keterbatasan kami. Maka dari itu penyusun sangat mengharapkan
kritik dan saran untuk menyempurnakan makalah ini. Semoga apa yang ditulis dapat
bermanfaat bagi semua pihak yang membutuhkan.

Medan,26 Oktober 2023

Kelompok 6

1
DAFTAR ISI

KATA PENGANTAR.................................................................................................- 1 -
DAFTAR ISI...............................................................................................................- 2 -
BAB I...........................................................................................................................- 3 -
PENDAHULUAN.......................................................................................................- 3 -
1.1 Latar Belakang..............................................................................................- 3 -
1.2 Rumusan Masalah.........................................................................................- 3 -
1.3 Tujuan Penulisan...........................................................................................- 4 -
BAB II.........................................................................................................................- 5 -
PEMBAHASAN..........................................................................................................- 5 -
2.1 Pengertian Pengalamatan...................................................................................- 5 -
2.2 Pengertian Immediate addressing......................................................................- 6 -
2.3 Kelebihan Immediate Adressing........................................................................- 7 -
2.4 Kekurangan Immediate Adressing.....................................................................- 7 -
2.5 Contoh Immediate Adressing.............................................................................- 8 -
2.6 Pengertian Indirect Adressing............................................................................- 8 -
2.7 Kelebihan Indirect Adressing.............................................................................- 9 -
2.8 Kekurangan Indirect Adressing........................................................................- 10 -
2.9 Contoh Indirect Adressing...............................................................................- 10 -
BAB III......................................................................................................................- 11 -
KESIMPULAN..........................................................................................................- 11 -
DAFTAR PUSTAKA................................................................................................- 12 -

2
BAB I
PENDAHULUAN

1.1 Latar Belakang


Dalam era informasi modern dan dunia komputasi yang terus berkembang,
pemahaman yang mendalam terkait konsep pengalamatan menjadi esensial bagi para
profesional IT dalam merancang, mengimplementasikan, dan mengelola sistem
komputer. Pemahaman tersebut menjadi semakin signifikan ketika kita membahas dua
jenis pengalamatan khusus, yaitu pengalamatan langsung (immediate) dan
pengalamatan tidak langsung (indirect). Pengalamatan berperan penting dalam eksekusi
program, memungkinkan akses dan manipulasi data dengan efisien. Dalam konteks ini,
pemilihan antara pengalamatan immediate dan indirect dapat memiliki dampak besar
terhadap optimalisasi kode dan kinerja sistem secara keseluruhan. Para pengembang
perangkat lunak perlu mempertimbangkan dengan cermat kapan dan bagaimana
menggunakan masing-masing jenis pengalamatan ini agar dapat menghasilkan solusi
yang efektif dan efisien.

Keberhasilan penggunaan pengalamatan indirect dan immediate juga memiliki


dampak langsung pada kualitas pengembangan perangkat lunak. Kemampuan untuk
membuat keputusan yang tepat mengenai penggunaan pengalamatan dalam desain dan
implementasi kode dapat membantu menciptakan solusi yang tidak hanya efisien dalam
eksekusi program, tetapi juga mudah dipelihara dan diperbarui. Oleh karena itu,
pembahasan mendalam mengenai konsep pengalamatan, terutama dalam konteks
immediate dan indirect, memberikan nilai tambah tidak hanya bagi para profesional
industri IT yang selalu mencari efisiensi, tetapi juga bagi mahasiswa dan akademisi
yang sedang menjalani proses pembelajaran. Makalah ini diharapkan dapat menyajikan
analisis yang komprehensif dan memberikan pandangan yang jelas terkait peran dan
dampak kedua jenis pengalamatan tersebut dalam lingkup teknologi informasi modern.

1.2 Rumusan Masalah


1. Apa yang dimaksud dengan mode pengalamatan ?
2. Jelaskan metode pengalamatan indirect dan immediate !
3. Apa contoh dari pengalamatan indirect dan immediate ?

3
4. Apa kekurangan dan kelebihan pengalamtan indirect dan immediate ?

1.3 Tujuan Penulisan

Makalah ini bertujuan untuk mendalami konsep dan perbedaan antara mode
pengalamatan immediate dan indirect dalam konteks arsitektur komputer. Fokus utama
penulisan adalah menjelaskan secara rinci karakteristik dan prinsip dasar dari kedua
mode pengalamatan ini. Selain itu, tujuan lainnya adalah menganalisis keuntungan dan
kelemahan yang terkait dengan penggunaan mode immediate dan indirect, termasuk
dampaknya terhadap kinerja program dan efisiensi pengolahan data. Makalah ini juga
akan menelusuri implementasi konkret mode pengalamatan ini pada arsitektur
komputer tertentu, memberikan wawasan mendalam tentang bagaimana konsep
tersebut diterapkan dalam praktiknya. Seluruh makalah ini juga bertujuan untuk
memberikan kontribusi pada pemahaman komunitas ilmu komputer tentang peran dan
aplikasi mode pengalamatan dalam konteks pengolahan data modern dan evolusi
arsitektur komputer.

4
BAB II
PEMBAHASAN

2.1 Pengertian Pengalamatan


Mode pengalamatan merupakan aspek arsitektur set instruksi dalam sebagian
besar desain unit pemroses pusat (CPU). Berbagai mode pengalamatan yang
didefinisikan dalam arsitektur set instruksi tertentu menentukan bagaimana instruksi
bahasa mesin dalam arsitektur tersebut mengidentifikasi operan dari setiap instruksi.
Mode pengalamatan menentukan cara menghitung alamat memori efektif operan
dengan menggunakan informasi yang disimpan dalam register dan/atau konstanta yang
terkandung dalam instruksi mesin atau di tempat lain.
Dalam pemrograman komputer, mode pengalamatan menarik terutama bagi
mereka yang menulis dalam bahasa rakitan dan penulis penyusun. Set instruksi
ortogonal juga berkaitan dengan kemampuan instruksi apa pun untuk menggunakan
mode pengalamatan apa pun.
Suatu variasi mode pengalamatan (addressing mode) dapat digunakan untuk
menentukan suatu alamat tempat untuk dimana operand akan di fetch. Beberapa teknik
ini dapat meningkatkan kecepatan pelaksanaan instruksi dengan menurunkan jumlah
referensi pada memori utama dan meningkatkan jumlah referensipada register
kecepatan tinggi. Mode pengalamatan ini menjabarkansuatu aturan untuk
menginterpretasikan atau memodifikasi field alamat dari instruksi sebelum operand
direferensikan. Teknik-teknik pengalamatan yang umum digunakan :
Immediate addressing,Direct addressing,Indirect addressing,Register
addressing,Register indirect addressing,Displacement addressing,Stack addressing

5
2.2 Pengertian Immediate addressing
Bentuk pengalamatan yang paling sederhana, di mana operand langsung ada pada
instruksi Format intruksi. Mode pengalamatan immediate addressing sangat umum
dipakai karena harga yang akan disimpan dalam memori langsung mengikuti kode
operasi dalam memori. Mode ini digunakan saat suatu harga atau konstanta diketahui
saat program dibuat dan tidak akan dirubah selama eksekusi program. Operasi dengan
mode ini membutuhkan dua byte instruksi, satu untuk kode operasi dan satu lagi untuk
data byte. Dengan kata lain, tidak diperlukan pengambilan harga dari alamat lain untuk
disimpan.
Bentuk pengalamatan ini yang paling sederhana :
 Operand benar-benar ada dalam instruksi atau bagian dari instruksi (operand
sama dengan field alamat).
 Umumnya bilangan akan di simpan dalam bentuk komplemen dua.
 Bit paling kiri sebagai bit tanda.
 Ketika operand dimuatkan ke dalam register data, bit tanda akan di geser ke kiri
 hingga maksimum word data.
 Operand = address field
 Contoh :
 ADD 5
 Tambah nilai 5 ke isi akumulator
 5 adalah operand
Diagram Immediate addressing :

6
2.3 Kelebihan Immediate Adressing
a) Tidak Memerlukan Referensi Memori Tambahan:
Pada immediate addressing, nilai operand disertakan langsung dalam instruksi.
Oleh karena itu, tidak diperlukan referensi memori tambahan untuk mendapatkan
nilai operand. Hal ini dapat mengurangi beban pada memori dan mempercepat
eksekusi instruksi.
b) Menghemat Siklus Instruksi:
Karena nilai operand langsung tersedia dalam instruksi, tidak perlu melakukan
akses ke memori tambahan untuk mendapatkan data. Ini menghemat siklus
instruksi yang biasanya diperlukan untuk mengakses memori. Akibatnya, eksekusi
instruksi menjadi lebih efisien dan lebih cepat.
c) Penyederhanaan Program:
Immediate addressing dapat membuat kode program lebih sederhana dan mudah
dibaca karena nilai-nilai langsung disertakan dalam instruksi. Ini dapat
meningkatkan keterbacaan kode dan memudahkan pemahaman program.
d) Pemrograman dengan Ukuran Bilangan yang Dibatasi:
Kelemahan immediate addressing adalah ukuran operand atau nilai yang dapat
disertakan dalam instruksi dibatasi oleh ukuran field alamat. Ini berarti nilai yang
dapat diwakili dalam instruksi memiliki batasan tertentu, tergantung pada arsitektur
komputer dan format instruksi.
e) Kecepatan Eksekusi yang Tinggi:
Karena instruksi dapat dieksekusi tanpa perlu mengambil data dari memori
eksternal, immediate addressing dapat meningkatkan kecepatan eksekusi program.
Ini terutama bermanfaat dalam situasi di mana akses memori merupakan bottleneck
dalam kinerja sistem.

2.4 Kekurangan Immediate Adressing


1. Penggunaan Ruang Memori yang Tinggi:
Mode immediate memerlukan penyimpanan nilai konstan dalam instruksi. Hal
ini dapat mengakibatkan peningkatan penggunaan ruang memori, terutama jika
nilai konstan tersebut sering digunakan dalam program.

7
2. Keterbatasan pada Fleksibilitas:
Mode immediate sering kali cocok untuk operasi sederhana dan langsung.
Namun, untuk operasi yang lebih kompleks atau berulang, mode ini mungkin
kurang fleksibel dibandingkan dengan mode lain yang memungkinkan untuk
dinamisme nilai operand.
3. Penyusunan Program yang Kurang Efisien:
Pemakaian terlalu banyak mode immediate dalam sebuah program dapat
membuat program menjadi kurang efisien karena menyebabkan perulangan
nilai konstan yang sama di beberapa instruksi.

2.5 Contoh Immediate Adressing


Dalam arsitektur prosesor Intel (yang merupakan arsitektur CISC - Complex
Instruction Set Computing), immediate addressing digunakan dalam instruksi untuk
memberikan nilai langsung kepada instruksi tersebut. Berikut adalah contoh
penggunaan immediate addressing pada prosesor Intel x86 menggunakan bahasa
assembly:
 Misalnya, kita ingin memuat nilai langsung ke dalam register pada prosesor
Intel x86:

Instruksi ‘MOV’ digunakan untuk memindahkan (move) nilai 10 secara langsung ke


dalam register AX. Angka 10 merupakan nilai yang diberikan secara langsung
(immediate) kepada instruksi tersebut.

 jika kita ingin menambahkan nilai langsung ke dalam register:

Instruksi ‘ADD’ di atas akan menambahkan nilai 20 secara langsung ke dalam register
BX.
8
Dalam arsitektur ARM (RISC - Reduced Instruction Set Computing), immediate
addressing juga digunakan untuk memberikan nilai langsung kepada instruksi. Berikut
adalah dua contoh penggunaan immediate addressing pada prosesor ARM dalam
bahasa assembly:

 Instruksi ‘LDR (Load Immediate)’ digunakan untuk memuat (load) nilai


konstan langsung ke dalam register.

Dalam contoh ini, ‘LDR’ digunakan untuk memuat nilai konstan 0x25 ke dalam
register R1 menggunakan immediate addressing.
 Instruksi aritmatika, seperti ‘ADD’, juga dapat menggunakan immediate
operand untuk melakukan operasi penambahan dengan nilai langsung.

Pada contoh di atas, “#10” adalah immediate operand yang digunakan untuk
melakukan penambahan langsung dengan nilai 10 ke nilai dalam register R3, dan
hasilnya disimpan di register R2.

2.6 Pengertian Indirect Adressing


Mode pengalamatan indirect addressing sangat berguna karena dapat memberikan
fleksibilitas tinggi dalam mengalamati suatu harga. Mode ini pula satu-satunya cara
untuk mengakses 128 byte lebih dari RAM internal pada keluarga 8052. Contoh: MOV
A,@R0. Dalam instruksi tersebut, 89C51 akan mengambil harga yang berada pada
alamat memori yang ditunjukkan oleh isi dari R0 dan kemudian mengisikannya ke
akumulator. Mode pengalamatan indirect addressing selalu merujuk pada RAM internal
dan tidak pernah merujuk pada SFR. Karena itu, menggunakan mode ini untuk
mengalamati alamat lebih dari 7Fh hanya digunakan untuk keluarga 8052 yang
memiliki 256 byte spasi RAM internal.
Karakteristik:
 Memerlukan space address yang besar.
 2n dimana n adalah panjang word
9
 Dapat dibuat nested (bersarang), multilevel dan cascade (bertumpuk).
Contoh : EA = (((A)))
 Pengaksesan memory yang multiple untuk mendapatkan operand sehingga
mengakibatkan proses mode ini agak lebih lambat.
Diagram Indirect :

2.7 Kelebihan Indirect Adressing


a. Jumlah lokasi memori yang dapat diacu lebih banyak:
Direct addressing memungkinkan referensi langsung ke lokasi memori tertentu tanpa
memerlukan langkah tambahan. Ini dapat meningkatkan efisiensi dan kecepatan akses
data.
b. Hanya membutuhkan satu referensi memori:
Setiap instruksi atau data dapat diakses langsung melalui satu referensi memori
tanpa perlu langkah tambahan seperti perhitungan atau dereferensi.
c. Tidak memerlukan kalkulasi alamat yang khusus:
Direct addressing tidak melibatkan perhitungan alamat tambahan atau dereferensi,
sehingga dapat mengurangi kompleksitas perangkat keras dan meningkatkan
kecepatan eksekusi program.
d. Ruang bagi alamat menjadi besar sehingga semakin banyak alamat yang dapat direferensi:
Direct addressing tidak memerlukan penyimpanan alamat referensi tambahan,
sehingga dapat meningkatkan kapasitas alamat yang dapat diakses dalam ruang
memori yang tersedia.

10
2.8 Kekurangan Indirect Adressing
1. Overhead Tambahan:

Penggunaan mode indirect dapat menambah overhead pada eksekusi instruksi


karena melibatkan langkah tambahan untuk mengakses alamat memori yang
sebenarnya.

2. Kompleksitas Program yang Meningkat:

Program-program yang menggunakan mode indirect cenderung memiliki


kompleksitas yang lebih tinggi karena pengelolaan alamat yang disimpan dalam
lokasi memori tertentu, yang dapat menyulitkan pemahaman dan pemeliharaan
program.

3. Resiko Kesalahan Pemrograman:

Penggunaan mode indirect dapat meningkatkan risiko kesalahan pemrograman


terutama dalam manajemen alamat memori. Jika alamat yang disimpan tidak benar,
dapat menyebabkan kesalahan atau anomali dalam hasil program.

4. Keterbatasan Akses ke Register:

Pada beberapa arsitektur, mode indirect mungkin memiliki keterbatasan akses ke


register tertentu yang dapat digunakan sebagai alamat, yang membatasi fleksibilitas
dalam penentuan alamat operand.

2.9 Contoh Indirect Adressing


Di dalam arsitektur Intel x86 (CISC - Complex Instruction Set Computing),
terdapat beberapa cara untuk menerapkan indirect addressing. Dua contoh dari teknik
tersebut adalah:

 Pada Intel x86, register indirect addressing digunakan untuk merujuk ke alamat
memori yang disimpan dalam sebuah register.

Pada contoh di atas, [EBX] menunjukkan register indirect addressing, yang artinya
alamat memori yang ingin diakses terletak di dalam register EBX. Nilai yang ada di
alamat memori tersebut akan dimuat ke dalam register EAX.

11
 Indirect addressing juga bisa dilakukan dengan menggunakan pointer atau
alamat memori yang disimpan di lokasi tertentu dalam memori.

Dalam contoh ini, “DWORD PTR “[0x12345678]” menunjukkan bahwa alamat


memori 0x12345678 digunakan sebagai pointer, dan instruksi ini akan mengambil nilai
dari alamat memori tersebut dan memuatnya ke dalam register ESI.

Dalam arsitektur ARM (RISC - Reduced Instruction Set Computing), teknik


indirect addressing juga dapat diterapkan menggunakan register atau alamat memori
yang disimpan dalam sebuah register. Berikut adalah dua contoh dari penggunaan
indirect addressing pada ARM:

Dalam instruksi di atas, “[R4, R5]” menunjukkan bahwa nilai dalam register R4
ditambah dengan nilai dalam register R5, dan hasilnya digunakan sebagai alamat
memori yang ingin diakses. Nilai dari alamat memori tersebut kemudian dimuat ke
dalam register R3.

Dalam contoh di atas, “[R4, #8]” menunjukkan bahwa nilai dalam register R4
ditambah dengan nilai offset 8, dan hasilnya digunakan sebagai alamat memori yang
ingin diakses. Nilai dari alamat memori tersebut kemudian dimuat ke dalam register
R3.

12
BAB III
KESIMPULAN

Berdasarkan hal diatas, dapat disimpulkan bahwa pentingnya pemahaman konsep


pengalamatan, terutama dalam konteks indirect addressing dan immediate addressing,
dalam pengembangan perangkat lunak dan desain arsitektur komputer. Mode
immediate addressing memberikan keuntungan dalam efisiensi eksekusi program dan
penghematan siklus instruksi dengan nilai operand yang disertakan langsung dalam
instruksi. Namun, kelemahannya terletak pada keterbatasan ukuran operand dan
penggunaan ruang memori yang tinggi.

Di sisi lain, mode indirect addressing memberikan fleksibilitas tinggi dan


memungkinkan akses ke lebih banyak lokasi memori. Namun, hal ini menimbulkan
biaya tambahan dan peningkatan kompleksitas program. Maka ketika memilih antara
kedua mode pengalamatan ini diharuskan mempertimbangkan kebutuhan spesifik dan
karakteristik aplikasi, yang mempengaruhi kinerja program, efisiensi pemrosesan data,
dan pemeliharaan kode.

Dalam lanskap pengembangan perangkat lunak modern, pemahaman mendalam


tentang konsep pengalamatan, terutama dalam indirect addressing dan immediate
addressing, memberikan nilai tambah bagi para profesional TI yang selalu mencari
solusi efektif juga bagi pelajar dan cendekiawan yang mengejar pelatihan kejuruan.
Dengan mempertimbangkan perbedaan, kelebihan dan kekurangan keduanya,
diharapkan solusi yang dihasilkan akan lebih efektif dan efisien dalam memenuhi
kebutuhan teknologi informasi saat ini dan masa depan.

Tujuan keseluruhan artikel ini adalah untuk berkontribusi meningkatkan


pemahaman komunitas komputasi tentang peran dan penerapan mode pengalamatan
dalam konteks pemrosesan data modern dan pengembangan arsitektur komputer.

13
DAFTAR PUSTAKA

Barono, O. S. (2012). “Perbedaan antara program COM dan EXE.”. Retrieved from
(https://onnosbarono.wordpress.com/2012/01/13/perbedaan- antara-program-com-
dan-exe/),

Dahriatmoko, A. (2015). Mode Pengalamatan (Online), Retrieved from “Berbagi


Ilmu”.: (http://jejaringberbagi.blogspot.co.id/2015/01/mode-
pengalamatan.html),

Sanjaya, D. (2005). Asyiknya Belajar Struktur Data di Planet C++.

Stallings, W. (2016). Computer Organization And Architecture Designing For


Performance. pearson.

14
Tasmi. (n.d.). Modul Pratikum Bahasa Rakitan (Online), . Retrieved from "Universitas
Sriwijaya". : (http://tasmi.unsri.ac.id/userfiles/modul_rakitan.pdf),

15

Anda mungkin juga menyukai