读键盘输入ASM

时间:2017-12-01 23:51:03

标签: assembly mips mars-simulator

我想从MARS键盘模拟器中获取输入。 当用户没有输入我要打印的字符时“请输入一个字符......”。

如果他确实输入了一个角色,我想输出一次该角色。

这是我的代码:

#MIPS
#ND
#2 a

.data
    text:   .asciiz "Please enter a character...\n"
.text

j print
main:
        lw $t0, 0xffff0000  #t1 holds if input available

    li $a0, 2000    #Time to sleep (milliseconds)

    li $v0, 32  #Operation code for sleeping
    syscall

    beq $t0, 0, print   #If no input is typed in, goto print (else printIn)


printIn:        #Printing input
    li $v0, 4
    lw $a0, 0xffff0004
    syscall

    j main

print:      #Printing text asking for input
    la $a0, text
    li $v0, 4
    syscall

    j main

我的代码正常工作,直到我在键盘模拟器中输入一个字符,而不是在运行时收到此错误:

line 24: Runtime exception at 0x0040002c: address out of range 0x00000065

我真的在搜索,但实际上看不出我的代码有什么问题...... 顺便说一句,这是MIPS ASM,这些信息也很有用: mips keyboard

0 个答案:

没有答案