Получение данных в регистрах (MIPS Bare)?

Может кто-нибудь объяснить концепцию получения строк (данных) в регистры. Я просто хочу напечатать строку из.data на экран. Это кажется таким простым, но я не могу точно понять, что я делаю.

Вот некоторый код:

.data 
 input: .asciiz "Welcome to class 4"

.text
  main:
     addi $v0, $0, 4
     lui $v0, prompt 
     lui $a0, $v0 
     syscall

Это просто (как упоминается в вопросе), поэтому у меня нет псевдоинструмента. В настоящее время я думаю, что я использую addi для замены псевдо-инструкции "li". Я добавляю 4 в регистр $v0 для битового смещения (что я не совсем уверен, зачем мне это нужно). ТА сказал мне, что это необходимо. Затем я загружаю данные в $v0 и из $v0 в $a0. Затем системный вызов для печати на консоли.

Что я делаю не так и как я могу лучше понять эти понятия?

0 ответов

Другие вопросы по тегам