A. 用MIPS汇编写一个减法的代码
la $a0,p1 #Loadprompt
li $v0,4 #Printprompt
syscall
li $v0,5 #Getintxfromtheuser
syscall
move $t0,$v0 #Savexinreg$t0
#Getn
la $a0,p2 #Loadprompt
li $v0,4 #Printprompt
syscall
li $v0,5 #Getintxfromtheuser
syscall
move $t1,$v0 #Saveninreg$t1
ble $t0,$zero,IF
ble $t1,$zero,IF
j ELSE
IF: la $a0,op1
li $v0,4
syscall
j halt
ELSE: move $t2,$t0
loop: blt $t2,1,halt
move $a0,$t2
li $v0,1
syscall
la $a0,space
li $v0,4
syscall
sub $t2,$t2,$t1
j loop
halt: li $v0,10
syscall
.data
p1: .asciiz"Enterx:"
p2: .asciiz"Entern:"
space: .asciiz""
op1: .asciiz"Unabletocount!"
B. MIPS伪代码是什么和利用MIPS指令集的代码有什么区别
伪指令是合法的MIPS汇编语言指令,没有直接的硬件实现。它们是为了方便程序员而提供的。当你在MIPS汇编语言程序中使用伪指令时,汇编器将它们转换为等效的真正的MIPS指令。
例如:
C. 写出以下C语言过程对应的MIPS汇编表示
硬件平台是什么?pc上还是51上或者arm,mips?不
同硬件平台汇编不同,编译器对程序的处理也就不同。
用汇编一般都是考虑到可以直接访问寄存器,速度有优势,但最大的缺点是不能跨平台,可移植性很差。