Проблема умножения MIPS - PullRequest
       1

Проблема умножения MIPS

0 голосов
/ 19 сентября 2011

В MIPS, как я могу перевести это выражение в MIPS?

y = 2x+3z (x, y, z - переменные)

Я использую multi $t0,$s0, 2 # $s0 stores x and $s1 stores y., чтобы показать 2x.Это правильно?

1 Ответ

2 голосов
/ 19 сентября 2011

Предположим, что:
х в $ s0
z находится в $ s1
у будет в $ s2

add $s2, $s0, $s0    # x*2 in $s2
add $t0, $s1, $s1    # z*2 in $t0
add $t0, $t0, $s1    # z*3 in $t0
add $s2, $s2, $t0    # x*2+z*3 in $s2

На самом деле мы не умножаем (это медленнее простого сложения), и, как вы можете видеть, мы уничтожаем временный регистр $ t0, но не касаемся $ s0 / $ s1

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...