Содержимое буфера MIPS не печатается - PullRequest
0 голосов
/ 02 марта 2020

Решено: я переместил оба файла на рабочий стол, и это сработало - у некоторых каталогов на ma c есть проблемы с правами доступа.

Я пытаюсь распечатать содержимое текстового файла (test1.txt ), который находится в том же каталоге, что и мой файл MARS, но содержимое буфера не печатается. Строка в тестовом файле просто содержит буквы и не содержит символов NULL. Я не могу понять, что не так.

.data
file: .asciiz "test1.txt"      # filename for input
buffer: .space 128


.text
    #li $t0, 0 # bracket counter
    #la $s0, theArray #pointer the string


        li   $v0, 13          # system call for open file
    la   $a0, file       # input file name
    li   $a1, 0           # flag for reading
    li   $a2, 0           # mode is ignored
    syscall               # open a file 
    move $s0, $v0         # save the file descriptor  


    # reading from file just opened 

    li   $v0, 14        # system call for reading from file
    move $a0, $s0       # file descriptor 
    la   $a1, buffer    # address of buffer from which to read
    li   $a2,  11     # hardcoded buffer length
    syscall             # read from file


    li  $v0, 4         # system Call for PRINT STRING
    la  $a0, ($a1)      # buffer contains the values
    syscall  


    li $v0, 16
    move $a0, $s0
    syscall #closes file

    li $v0, 10
        syscall
...