2014-05-13 29 views
0

我应该写什么作为条件来比较我从键盘上用K写的内容? 我想要我的代码继续,当我按下字母K. 这是我的代码。MIPS中的字母条件

K1:li $v0, 4   
    la $a0, gram #message to get the letter  
    syscall 
    li $v0,5 
    syscall 
    move $t4,$v0 

    bne $t4,48h,K1 

回答

0

您应该将字母k加载到寄存器中进行比较。

MIPS组装支撑字符文字,所以你可以这样做:

li $t5 'k' 
bne $t4 $t5 K1 
+0

我想通了。我用系统调用12替换了系统调用5,系统调用12是读取字符,然后比较它们。 K1:李$ V0,4 LA $ A0,革兰氏 系统调用 李$ v0,12 系统调用 举动$ T4,$ V0 BNE $ t4,75,K1 比较完成后至12月,因“ K'是75。 – user3247715

-2

'K' ASCII码为4B,所以你应该比较其中输入字节存储与4BH,然后继续,如果它等于寄存器。

因此,假如注册$t4已输入字节的条件的输入代码应该是:

bne $t4,4Bh,K1 

此外,当你发布一些体系结构相关的代码,你可能会考虑提供什么样的一些线路和功能意味着额外的信息/ languague。

+0

我写了这个,我得到语法错误。 – user3247715

+0

语法错误意味着编译器不明白你想说什么,这意味着你使用了一些无效的语法。与逻辑无关。检查函数的编译器语法。也许'cmp $ t4,4bh'' kne K1' – Nenad

+0

你写的最后一段代码是什么? – user3247715