Multiplication and Division with Integers

Kategori: MIPS , 13 Ekim 2019 , JanFranco


Tam sayılarla çarpma ve bölme işlemleri yaparken aşağıdaki instruction'ları kullanacağız:


-mult

Syntax: mult $s, $t
Encoding: 0000 00ss ssst tttt 0000 0000 0001 1000
$lo register'ına $s * $t sonucu yazılır. mflo $t0 operasyonu ile lo register'ındaki değeri $t0'a atabiliriz.


-mul

Syntax: mul $d, $s, $t
$lo ve $d register'larına $s * $t işleminin sonucu yazılır.


-div

Syntax: div $s, $t
Encoding: 0000 00ss ssst tttt 0000 0000 0001 1010
$lo register'ına $s / $t işleminin sonucu, $hi register'ına $s % $t işleminin sonucu yazılır. mflo ve mfhi opcode'ları ile buradaki değerleri taşıyabiliriz. Örnek yapalım:


	.text
li $t0, 13
li $t1, 24

mult $t0, $t1
mflo $t2

div $t1, $t0
mflo $t3
mfhi $t4
Sonuçlar:


$t2	->	312
$t3	->	1
$t4	->	11


Sonraki Yazı: Functions in MIPS
Yorumlar

Henüz bir yorum bulunmuyor.
Yorum bırakın