Thursday, 20 December 2012


Branch, jump n target addressing

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 :…



DISEDIAKAN OLEH;
LIM ZERKIE
B031210127

No comments:

Post a Comment