2012-04-25 2 views
-3

мне это нужно в переводе на MIPS Ассамблее (для работы на Марсе Assembler)Переводя от С до MIPS

void mm (double x[][], double y[][], double z[][], int n) 
{ 
    int i,j; 
    for (i=0; i !=n; i++) 
     for (j=0; j !=n; j++) 
      z[i][j] = 0.0; 
    for (k=0; k !=n; k++) 
     z[i][j] = z[i][j] + x[i][k] * y[k][j]; 
} 
+10

Почему вы не используете компилятор? – sinelaw

+2

Первый набор петель тривиально для реализации. Второй цикл требует знания архитектуры с плавающей точкой. Вы можете найти помощь как в этом [прекрасном PDF] (http://www.eit.lth.se/fileadmin/eit/courses/edi021/datablad/Processors/MIPS_Soft.pdf). Нам нужно будет увидеть некоторые работы с вашей стороны для решения этой проблемы. – user7116

+0

Вы хотите, чтобы фри с этим? –

ответ

5

Это кажется немного похоже на вопрос «Есть ли мою домашнюю работу», но я дам вам намек.

Передача -S switch to gcc приведет к испусканию кода сборки. Обратите внимание, что этот код может потребоваться для ассемблера Марса.

Удачи вам!

+0

Кроме того, вы можете перекрестно скомпилировать с помощью 'gcc' непосредственно в MIPS: http://wiki.osdev.org/GCC_Cross-Compiler – sinelaw

+0

Ну, конечно, это не будет сборка MIPS с компилятором GCC из коробки на его машине. – user7116

+0

Извините, я имел в виду mips-gcc. –

Смежные вопросы