МАРС, ассемблер MIPS, связывающий два файла вместе?

У меня есть быстрый вопрос. Я использую ассемблер MARS (программирование в наборе инструкций MIPS), и у меня есть два файла MIPS. Один файл содержит мой основной метод, который нужно запустить, и вызывает функцию в другом файле. Перед моей функцией стоит директива .globl, но каждый раз, когда я пытаюсь скомпилировать свою программу, она говорит

Символ print_hex не найден в таблице символов.

Вот снимок экрана для более подробного ознакомления с контекстом: введите здесь описание изображения

Ярлык print_hex находится в файле print_hex.s.

введите описание изображения здесь

Как я могу связать эти два файла вместе? И наконец, как я могу указать MARS на вызов определенной метки в начале выполнения, например, я хочу, чтобы она вызывала main.


person Code Doggo    schedule 10.07.2015    source источник
comment
Вместо снимков экрана вы должны взять текст, который вы хотите показать нам, и поместить его в тело вопроса о Stackoverflow.   -  person Michael Petch    schedule 21.09.2015


Ответы (1)


  1. Поместите файлы в тот же каталог
  2. Включите опцию MARS Settings->Assemble all files in directory
  3. Соберите файл, с которого хотите начать выполнение.

Затем все файлы в каталоге должны быть собраны и связаны вместе.

Чтобы всегда запускать выполнение с вашей основной метки, вы можете включить Settings->Initialize program counter to global 'main'.

person countunique    schedule 21.09.2015