R-FORMAT
op
|
rs
|
rt
|
rd
|
shamt
|
funct
|
6 bits
|
5 bits
|
5 bits
|
5 bits
|
5 bits
|
6 bits
|
- op: kod operasi
- rs: sumber register pertama
- rt: sumber register kedua
- rd: destinasi register
- shamt: digunakan dengan arahan peralihan dan putaran
- funct: mengandungi kod kawalan yang diperlukan untuk membezakan arahan yang berbeza bagi arahan yang megunnakan kod operasi yang sama
- R-format digunakan apabila semua data nilai-nilai yang digunakan terletak di register
Jadual MIPS register |
Contoh:
add $t0, $s0, $s1
Special
|
$s0
|
$s1
|
$t0
|
0
|
Add
|
0
|
16
|
17
|
8
|
0
|
32
|
000000
|
10000
|
10001
|
01000
|
00000
|
100000
|
- boleh dituliskan dalam bentuk hexadecimal
- contoh: 1111 1100 1010 1000 0110 0100 0010 0000 = FCA8 6420
Pertukaran antara nombor hexadecimal & binary |
I-FORMAT
op
|
rs
|
rt
|
Constant or address
|
6 bits
|
5 bits
|
5 bits
|
16 bits
|
- op: kod operasi
- rs, rt: sumber & destinasi register
- constant: nilai 16 bit (–2^15 to +2^15 – 1)
Contoh kod operasi:
Mnemonic
|
Type
|
Opcode
|
Funct
|
add
|
R
|
0x00
|
0x20
|
addi
|
I
|
0x08
|
NA
|
addiu
|
I
|
0x09
|
NA
|
addu
|
R
|
0x00
|
0x21
|
and
|
R
|
0x00
|
0x24
|
andi
|
I
|
0x0C
|
NA
|
beq
|
I
|
0x04
|
NA
|
bne
|
I
|
0x05
|
NA
|
div
|
R
|
0x00
|
0x1A
|
divu
|
R
|
0x00
|
0x1B
|
j
|
J
|
0x02
|
NA
|
jal
|
J
|
0x03
|
NA
|
jr
|
R
|
0x00
|
0x08
|
lbu
|
I
|
0x24
|
NA
|
lhu
|
I
|
0x25
|
NA
|
lui
|
I
|
0x0F
|
NA
|
lw
|
I
|
0x23
|
NA
|
mfhi
|
R
|
0x00
|
0x10
|
mflo
|
R
|
0x00
|
0x12
|
mfc0
|
R
|
0x10
|
NA
|
mult
|
R
|
0x00
|
0x18
|
multu
|
R
|
0x00
|
0x19
|
nor
|
R
|
0x00
|
0x27
|
xor
|
R
|
0x00
|
0x26
|
or
|
R
|
0x00
|
0x25
|
ori
|
I
|
0x0D
|
NA
|
sb
|
I
|
0x28
|
NA
|
sh
|
I
|
0x29
|
NA
|
slt
|
R
|
0x00
|
0x2A
|
slti
|
I
|
0x0A
|
NA
|
sltiu
|
I
|
0x0B
|
NA
|
sltu
|
R
|
0x00
|
0x2B
|
sll
|
R
|
0x00
|
0x00
|
srl
|
R
|
0x00
|
0x02
|
sub
|
R
|
0x00
|
0x22
|
subu
|
R
|
0x00
|
0x23
|
sw
|
I
|
0x2B
|
NA
|
No comments:
Post a Comment