Как рассчитать остаток от деления в WinMIPS64 - PullRequest
0 голосов
/ 10 мая 2018

MIPS ISA поддерживает DIV, где частное хранится в $LO, а остаток в $HI. Однако WinMIPS64, по-видимому, не поддерживает операцию DIV и вместо этого имеет (например) DDIV.

Из документации остается неясным, вычисляет ли DDIV только частное, но когда я выводю результат на терминал, я получаю только целую часть, и нигде в графическом интерфейсе WinMIPS64 я не могу найти регистр или сегмент памяти данных, в которой хранится частное.

Я подумал о том, чтобы просто выполнить деление с использованием последовательных вычитаний, но я хотел бы знать, есть ли в WinMIPS64 простой способ вычислить остаток от деления.

Буду признателен за любую помощь, которую вы можете предоставить.

1 Ответ

0 голосов
/ 11 мая 2018

У меня недостаточно XP, чтобы написать комментарий, поэтому я пишу здесь:

Если вы в одном классе со мной и вам нужно получить остаток для развертывания цикла, вы можете просто проверитьif (i + x)> ITERATIONS-1 с SLT, где x - коэффициент развертывания вашего цикла.Поскольку в любом случае вам нужно вычислить (i + x), это не будет стоить вам никаких дополнительных циклов.

...