как ввести строку в определенную память - PullRequest
0 голосов
/ 08 июня 2018

работает над проблемой, которая выглядит следующим образом:

напишите программу, которая предложит пользователю ввести 3 цифры, которые не превышают 6 (запятые не могут быть сохранены в виде строки) цифр.Числа должны быть сохранены в памяти как строки с нулевым символом в конце, первое число должно быть сохранено в адресе памяти 0x10000000.Второй номер должен храниться в памяти по адресу 0x10000008.Третье число должно храниться в памяти по адресу 0x10000010.

это то, что я написал, но я получаю синтаксическую ошибку в строке 14, что странно, потому что выглядит хорошо.как я узнаю, находится ли введенная строка в правильном адресе памяти?

.globl main

.data
prompt1: .asciiz "Enter first number:"
prompt2: .asciiz "Enter second number:"
prompt3: .asciiz "Enter third number:"

.text
#0x10000000 stores first number
#0x10000008 stores second number
#0x10000010 stores third number

main:
#printing prompt1
li $v0, 4          #line 14 where syntax error happens
la $a0, prompt1
syscall

lui $s0, 0x1000   # get address into $s0


#input first number 
li $v0, 8
la $a0, 0($s0)         #reads number into memory(0x10000000)
li $a1,8               #7 characters
syscall

#prinitng prompt2
li $v0,4
la $a0, prompt2
syscall

#input second number
li $v0,8
la $a0,8($s0)     #reads number into memory 0x10000008
li $a1,8
syscall

#printing prompt3
li $v0,4
la $a0,prompt3
syscall

#inputting third number
li $v0,8
la $a0, 10($s0)       #reads number into memory 0x10000010
li $a1, 8             #7 characters
syscall

1 Ответ

0 голосов
/ 08 июня 2018

Я подозреваю, что вы запускаете свою программу в режиме spim -bare.Это означает, что псевдоинструкции, такие как li, la и другие, не будут работать.Псевдоинструкции - это не настоящие мипсы.Если вы собираетесь работать в режиме spim -bare, вы должны переработать свой код и избавиться от этих псевдоинструкций.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...