Mips, wie zum speichern der Benutzer-Eingabe-string

Früher dachte ich, ich wüsste, wie dies zu tun. Aber dann habe ich tatsächlich versucht, es zu tun. Hier ist das Programm, das ich schrieb, aber der Berkeley S*** simulator für mac sagte, es sei ein syntax error in der letzten Zeile. Was habe ich falsch gemacht?

       .text
       .globl __start
    __start:
        la $a0,ask
        li $v0,4
        syscall

        li $v0,8
        syscall

        la $t0,buffer
        move $t0,$v0
        syscall

        la $a0,ret
        li $v0,4
        syscall

        move $a0,$t0
        li $v0,4
        syscall

        .data
      ask:  .asciiz "Enter string: "
      ret:  .asciiz "You wrote: "
      buffer:   .space 100
  • Funktioniert es, wenn Sie .asciiz "<bunch of spaces>" oder ähnliches statt? Haben Sie versucht, andere gemeinsame Richtlinien statt .space z.B. .skip, .fill oder .array? Was ist die genaue version, die Sie verwenden und die Fehlermeldung, die Sie bekommen? (Dein code hat auch Probleme bei der Nutzung von $t0)
  • Sind Sie sicher, es ist nicht geschrieben .asciz? Sie muss wahrscheinlich auch .align 2 vor buffer: um sicherzustellen, dass der Puffer beginnt an einer word-Grenze.
  • MARS simulator montiert, die mit keine Fehler. Ich empfehle den MARS als Ersatz für SPIM.
InformationsquelleAutor jason dancks | 2011-11-01
Schreibe einen Kommentar