Branch addressing
* Arahan cabang adalah dinyatakan
- Opcode, two registers, target address
* Sasaran “branch” kebanyakan berhampiran “branch”
* Formats:
* dengan adanya branch addressing kita dapat menentukan register (seperti LW dan Sw) dan
menambah ia untuk menangani
- penggunaan Instruction Address Register (PC = program counter)
- Kebanyakan branch adalah local (principle of locality)
Jump addressing
* Jump (j and jal) targets boleh berada di mana-mana sahaja dalam segmen teks
- Kodkan alamat penuh dalam pengajaran
* J format ada 26 bits dalam address field
* Untuk mendapatkan 32 bits
- Anggapkan bahawa jump address adalah word address
- 26 + 2 (least significant bits) = 28
- Dapatkan 4 bit yang paling ketara dari computer
- 4 + 26 + 2 = 32
- Hanya boleh “jump” antara 228 = 256 MB block of addresses
* (Pseudo)Direct jump addressing
- Target address = PC31…28 : (address × 4)
Target Addressing Example
- Assume Loop at location 80000
Loop : sll $t1, $s3, 2
add $t1, $t1, $s6
lw $t0, 0($t1)
bne $t0, $s5, Exit
add $s3, $s3, 1
j Loop
Exit :…
LIM ZERKIE
B031210127
No comments:
Post a Comment