2016-08-24 3 views
0

эти мои строки кода:сборки

li $v0, 6  # select read_float  
syscall   # run read_float 
jal p4   # run println 
mfc1 $f4, $v0 

Компилятор выдает следующее сообщение об ошибке:

SPIM: (синтаксический анализатор) синтаксическая ошибка в строке 132 файла/дома/robertina/Scrivania/Labo SPIM/mioprogetto/mioprogetto.s MFC1 $ f4, $ v0

кто-нибудь знает, почему эти строки не работает должным образом?

+1

Если вы собираетесь написать код сборки MIPS, получите команду _ «MIPS32 ™ Architecture For Programmers Volume II: MIPS32 ™ Instruction Set» _, чтобы вы могли искать любую инструкцию. – Michael

ответ

0

Быстрый Google для MIPS MFC1 quickly shows что mfc1 является движение от сопроцессора 1, и что оба mfc1 и mtc1 (перемещение к coproc 1) поставить FP зарегистрировать второй (независимо от того, является ли источник или пункт назначения) ,

mfc1 $v0, $f4  # set $v0 = $f4 

(Обратите внимание, что не писать комментарии, как, что в вашем ассемблере нормально. Опишите, почему обучение там, а не набивать вы можете узнать из его поиска в руководстве ассемблера, если не что-то сложно или не- Ответ на ваш вопрос хорош, например, select read_float более значим, чем put 6 into $v0)

Очень плохо, что ваш ассемблер дает такое бесполезное сообщение об ошибке, которое даже не указывает вам в правильном направлении. Большинство ассемблеров лучше этого.

+0

спасибо за совет, я буду помнить об этом, прежде чем я поставлю этот проект – robertina

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