Ошибка компилятора MIPS в разделе .data

Когда я запускаю свою простую программу MIPS, я получаю ошибку компилятора в определенной строке кода. Это мой раздел .data, в котором я инициализирую свои переменные:

.data
    prompt1:    .asciiz "Please enter the rain fall for month "
    prompt2:    .asciiz ": "
    array_size: .word 12
    array:      .word 0,0,0,0,0,0,0,0,0,0,0,0
    avg:        .asciiz "The average rainfall is "
    inches:     .asciiz " inches."
    max:        .asciiz "The month with the most rainfall was month "
    min:        .asciiz "The month with the least rainfall was month "
    neg:        .asciiz "That number is a negative number  Please enter a positive number."
    max_num:    .word 0
    min_num:    .word 0
    avg_num:    .word 0
    month_num:  .word 1

Проблема возникает в конкретной строке, где я инициализирую "neg" для отображения сообщения, если полученное целое число отрицательно.

neg:    .asciiz "That number is a negative number  Please enter a positive number."

Он просто говорит мне, что в этом месте есть ошибка спима (парсера). Мне интересно, неправильный ли мой синтаксис или просто что-то глючит с компилятором. Заранее спасибо.


person Archibald    schedule 30.01.2014    source источник
comment
В дополнение к проблеме, обнаруженной @Sneftel, вы, вероятно, столкнетесь с проблемами при попытке загрузить эти word, потому что они, вероятно, не выстраиваются в линию на границе слова. Используйте директиву .align 2 после блоков строк. Также рассмотрите возможность помещения ваших строковых блоков в последовательные объявления (возможно, после ваших words).   -  person RobertB    schedule 31.01.2014
comment
Спасибо, Роберт Б. Я тоже это реализовал.   -  person Archibald    schedule 31.01.2014


Ответы (1)


neg - мнемоника MIPS. Переименуйте его в neg_msg или что-то в этом роде.

person Sneftel    schedule 30.01.2014