Я пытаюсь решить вопрос о номерах регистров в архитектуре набора команд.Вопрос:
Предположим, что кодовая последовательность предназначена для вычисления A = B + C, B = A + C и D = AB.Предположим, что все A, B, C и D изначально находятся в памяти.Перечислите последовательность инструкций для Register (load-store) ISA и сравните количество загрузок и хранилищ, которое вам нужно для выполнения вычислений, когда: (a) Есть 2 архитектурных регистра.(б) Есть 3 архитектурных регистра.
У меня есть этот ответ для (а);
Load R1,B
Load R2,C
Add R1,R1,R2
Store R1,A
Add R2,R1,R2
Store R2,B
Sub R1,R1,R2
Store R1,D
И у меня есть этот ответ для (б);
Load R1,B
Load R2,C
Add R3,R1,R2
Store R3,A
Add R1,R2,R3
Store R1,B
Sub R2,R3,R1
Store R2,D
Итак, у меня одинаковые нагрузки и я храню числа для обоих вычислений.Я делаю что-то неправильно?или мой ответ правильный?