Pengalamatan / Addressing Modes

Addressing Modes adalah Cara /  mode di mana letak (alamat) operand atau data dari suatu instruksi ditentukan.
Jenis Addressing Modes:
1.      Register mode.
 Operand berada di register CPU.
 Nama register tsb diberikan pada instruksi.
Contoh : Move R2, R1

2.      Absolute (direct) mode.
 Operand berada di lokasi memory.
 Alamat lokasi ini diberikan secara  eksplisit pada instruksi.
Contoh : Move 200, 100
Memindahkan isi memori alamat 200 ke alamat 100

3.      Immediate Mode.
ü  Operand diberikansecaraeksplisitpadainstruksi.
ü  Mode inidigunakanutkmenentukankonstanta address dan data dalam program.
Contoh : Move R0, 200 (Immediate)
menempatkannilai 200 dalam register R0
Dlmbhs Assembly, instruksitsbditulissbg:
Move  R0, #200
4.      Indirect Mode.

ü  Effective address dari operand beradadalam register ataulokasi  memoryutama, yang addressnyamunculdalaminstruksi.
ü  Indirection ditunjukkandenganmenempatkannama register atau memory address dlmtandakurung.

5.      Index  Mode.
ü  Effective address dari operand dihasilkan  dengan menjumlahkan suatu nilai konstanta dengan isi suatu register
ü  Index berada dalam suatu register, baik Special Purpose Register ataupun salah satu dr General Purpose Register, dinamakan index register.
Dua mode yg berguna utk mengakses data item pada lokasi yg berurutan dlm memory:
1.      Autoincrement mode:
Effective address dari operand adalah isi suatu register yg ditentukan dlm instruksi. Setelah mengakses operand, isi register ini di inkremen utk menunjukkan item berikutnya dlm suatu list.
            Misal: (R4)+
            Mode ini memungkinkan utk menghilangkan instruksi.
Contoh Autoincrement addressing mode yg digunakan dlm program penjumlahan beberapa bilangan.

                        Move           R1,N
                        Move           R2,#NUM1                                            
Clear           R0
LOOP             Add             R0,(R2)+
                        Decrement   R1
                        Branch > 0   LOOP
                        Move           SUM,R0
2.      Autodecrement mode
Isi suatu register yang ditentukan dlm instruksi di decremen. Isi ini kemudian digunakan sebagai effective address operand.
                          Misal: - (R4)
- Mode ini memungkinkan utk meng akses operand dg urutan address descending.
- Jadi 2 mode ini dilakukan dg menggunakan 2 instruksi. Dg menggabungkan 2 operasi tsb dlm 1 instruksi maka dapat mengurangi jumlah instruksi yg diperlukan utk melakukan suatu tugas.
Soal.
Register R1 dan R2 sebuah komputer  berisi nilai desimal 1200 dan 4600. Tentukan effective address dan isi tiap register yang terlibat setelah pelaksanaan tiap instruksi di bawah ini yg dilakukan secara sekwensial:
                        Mov       R5,20(R1)    
                        Load        R5,#3000
                        Store        30(R1,R2),R5
                        Add          R5,-(R2)
                        Sub   R5,(R1)+



No comments:

Post a Comment