Kumpulan Instruksi MIPS Jenis Instruksi MIPS Instruksi pada

  • Slides: 12
Download presentation
Kumpulan Instruksi MIPS

Kumpulan Instruksi MIPS

Jenis Instruksi MIPS Ø Instruksi pada MIPS dibagi dalam tiga bentuk format yakni: format

Jenis Instruksi MIPS Ø Instruksi pada MIPS dibagi dalam tiga bentuk format yakni: format R, format I, format J v R format terdiri dari tiga register dan function field v I format terdiri atas dua register dan 16 bit long immediate value v J format terdiri atas enam bit opcode yang diikuti oleh 26 bits immediate value 1

Daftar Opcode Ø 0: tipe R (add, sub, and, or, slt) Ø 2: jump

Daftar Opcode Ø 0: tipe R (add, sub, and, or, slt) Ø 2: jump (j) Ø 4: branch (beq) Ø 5: branch (bne) Ø 8: penjumlahan dengan immediate (addi) Ø 17: load upper dengan immediate (lui) Ø 35: load (lw) Ø 43: store (sw) 2

Instruksi dalam MIPS Ø Add – penambahan add $s 1, $s 2, $s 3

Instruksi dalam MIPS Ø Add – penambahan add $s 1, $s 2, $s 3 #jumlahkan isi reg s 2 dengan isi reg s 3 dan simpan hasilnya ke reg s 1 Ø Addi – add immediate addi $sp, 4 #Jumlahkan isi reg sp dengan 4 dan hasilnya simpan di dalam reg sp Ø ADDIU -- Add immediate unsigned Ø ADDU -- Add unsigned Ø AND -- Bitwise and Ø ANDI -- Bitwise and immediate Ø BEQ -- Branch on equal Ø BGEZ -- Branch on greater than or equal to zero 3

Instruksi dalam MIPS 1. BGEZAL -- Branch on greater than or equal to zero

Instruksi dalam MIPS 1. BGEZAL -- Branch on greater than or equal to zero and link 2. BGTZ -- Branch on greater than zero 3. BLEZ -- Branch on less than or equal to zero 4. BLTZ -- Branch on less than zero 5. BLTZAL -- Branch on less than zero and link 6. BNE -- Branch on not equal 1. bne $t 0, $zero, Less #Lompat ke alamat Less jika isi reg t 0 tidak sama dengan nol DIV -- Divide DIVU -- Divide unsigned 4

Instruksi dalam MIPS 1. 2. 3. 4. 5. J -- Jump JAL -- Jump

Instruksi dalam MIPS 1. 2. 3. 4. 5. J -- Jump JAL -- Jump and link JR -- Jump register LB -- Load byte LUI -- Load upper immediate 1. lui $t 0, 255 #isi reg t 0 bagian upper (bit 16 -31) dengan 255 2. Isi $t 0 sesudah instruksi lui $t 0, 255 dieksekusi 6. LW -- Load word 1. lw $s 1, 100($s 2) #isi reg s 1 dengan data dari memori pada alamat hasil jumlahan dari isi reg s 2 dengan 100 (offset) MFHI -- Move from HI MFLO -- Move from LO MULT -- Multiply MULTU -- Multiply unsigned 5

Instruksi dalam MIPS NOOP -- no operation OR -- Bitwise or ORI -- Bitwise

Instruksi dalam MIPS NOOP -- no operation OR -- Bitwise or ORI -- Bitwise or immediate SB -- Store byte SLL -- Shift left logical SLLV -- Shift left logical variable SLT -- Set on less than (signed) slt $t 0, $s 1 #reg t 0 diisi dengan 1 jika isi reg s 0 lebih kecil daripada reg s 1 biasanya diikuti dengan perintah: bne $t 0, $zero, Less SLTI -- Set on less than immediate (signed) slti $t 0, $s 0, 10 #reg t 0 diisi dengan 1 jika isi reg s 0 lebih kecil dari 10 biasanya diikuti dengan perintah: bne $t 0, $zero, Less SLTIU -- Set on less than immediate unsigned SLTU -- Set on less than unsigned 6

Instruksi dalam MIPS SRA -- Shift right arithmetic SRL -- Shift right logical SRLV

Instruksi dalam MIPS SRA -- Shift right arithmetic SRL -- Shift right logical SRLV -- Shift right logical variable SUB – Subtract sub $s 1, $s 2, $s 3 #kurangkan isi reg s 2 dengan isi reg s 3 dan simpan hasilnya ke reg s 1 SUBU -- Subtract unsigned SW -- Store word sw $s 1, 100($s 2) #simpan isi reg s 1 ke memori pada alamat hasil jumlahan dari isi reg s 2 dengan 100 (offset) SYSCALL -- System call XOR -- Bitwise exclusive or XORI -- Bitwise exclusive or immediate 7

Studi Kasus – Instruksi Add Ø Instruksi penjumlahan isi dua register Ø Hasil operasi

Studi Kasus – Instruksi Add Ø Instruksi penjumlahan isi dua register Ø Hasil operasi disimpan dalam register tujuan 8

Studi Kasus – Instruksi BEQ Ø Instruksi percabangan bersyarat Ø Terjadi percabangan jika syarat

Studi Kasus – Instruksi BEQ Ø Instruksi percabangan bersyarat Ø Terjadi percabangan jika syarat dipenuhi Ø Percabangan terjadi dengan mengisikan nilai instruksi target pada PC 9

Studi Kasus – Instruksi OR Ø Melakukan operasi OR pada dua buah input bit

Studi Kasus – Instruksi OR Ø Melakukan operasi OR pada dua buah input bit per bit Ø Hasil operasi disimpan dalam suatu register Ø Contoh operasi OR 10

Referensi Ø Hennessy, John L. dan Patterson, David A. 1998, “Computer Organization and Design:

Referensi Ø Hennessy, John L. dan Patterson, David A. 1998, “Computer Organization and Design: The Hardware/Software Interface”. 2 nd edition. Morgan Kaufmann publisher Inc. San Fransisco. USA Ø http: //chortle. ccsu. edu/Assembly. Tutorial/ Chapter-01/ 11