我正在編寫一個程序,詢問用戶他們有哪個溫度,然後接受該輸入並轉換並輸出所有四種溫度。我需要幫助讓我的用戶輸入讀入,以便它可以在我的分支beq中工作。我無法讓它識別輸入'f'等於存儲的版本。如何將存儲的字符串與輸入的字符串進行比較MIPS
.data
temptype: .asciiz "Enter temperature type i.e. f, c, k, r: "
tempdegree: .asciiz "\n Enter degrees: "
space: .space 2
tempx: .asciiz "Your temperature in celsius is: "
tempc: .asciiz "\nYour temperature in celsius is: "
tempf: .asciiz "\nYour temperature in fahrenheit is: "
tempk: .asciiz "\nYour temperature in kelvin is: "
tempr: .asciiz "\nYour temperature in rankine is: :"
kr: .float 459.67
.globl main
.text
main:
li $v0, 4
la $a0, temptype
syscall
li $v0, 8
la $a0, space
#li $a1, 2
move $t0, $a0
syscall
li $t1, 102
#li $t1, 99
#li $t1, 107
#li $t1, 114
syscall
beq $t0, $t1, fahrenheit
#beq $t0, $t1, celsius
#beq $t0, $t1, kelvin
#beq $t0, $t1, rankine
syscall
li $v0,10
syscall
fahrenheit:
li $v0, 4
la $a0, tempdegree
syscall
li $v0, 5
syscall
move $t0, $v0
li $v0, 4
la $a0, tempf
syscall
move $a0, $t0
li $v0, 1
syscall
您是否在內置調試器中單步執行代碼?你是否檢查過你正在使用的系統調用的文檔,看它是否返回寄存器中的字符,或者是否將它存儲在內存中?您可能會將指針與數字或其他內容進行比較。 (你沒有評論你的代碼,我不知道MIPS模擬器的系統調用數字不在我的頭頂。)無論如何**使用調試器**,這將使得能夠更容易地檢查每個寄存器中'beq'正在看什麼。 –