2 sunc14 sunc14 于 2016.05.07 12:15 提问

简单的MIPS汇编,error:invalid program counter value:0 5C

.data 0x10000000
.text

main:
addu $s7,$ra,$0
li $v0,5
syscall

addi $a0,$v0,0

j fact

li $v0,1
syscall

addu $ra,$0,$s7
jr $ra

fact:
addi $sp,$sp,-8
sw $ra,4($sp)
sw $a0,0($sp)
slti $t0,$a0,1
beq $t0,$zero,exit1
addi $v1,$0,1 #return 1
addi $sp,$sp,8
jr $ra

exit1:
addi $a0,$a0,-1
jal fact
lw $a0,0($sp)
lw $ra,4($sp)
addi $sp,$sp,8
mul $v1,$v1,$a0
jr $ra

做一个n!递归,请问错在哪里呢,求教

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
mips汇编简单实例——一个小计算器
其实开始的时候一直在看 mips的指令格式,看了、忘了,没什么效果。 现在通过这个例子,简单训练一下: mips汇编中: 常用寄存器的使用;系统调用: 1(print_int),4(print_str),5(read_int),10(exit);算术运算: add,sub,mul,div;逻辑运算及跳转; 上代码:(汇编写的少,代码书写、风格还很差劲,感谢请大虾
【十分钟教会你汇编】MIPS编程入门(妈妈说标题要高大上,才会有人看>_<!)
转载:http://www.cnblogs.com/thoupin/p/4018455.html?utm_source=tuicool 无意中找到一篇十分好用,而且篇幅也不是很大的入门教程,通篇阅后,再把“栗子”敲一遍,基本可以有一个比较理性的认识,从而方便更好地进一步深入学习。 废话不多说,上干货(英语好的直接跳过本人的渣翻译了哈——!纯本人手打原创,有错请指教,要转载请声明出处,谢~~):
简单MIPS汇编器
OTL终于能写出点实用的东西了。今天写的一个MIPS汇编器,能读入若干行MIPS指令,将其翻译成机器码,存入一个文本文件中。目前只能编译add, sub, and, or, slt, beq, j, lw, sw, nop这几种指令,并且不能识别注释。不过对于完成计算机组成实验来说足够了。 // A simple and naive MIPS assembler // Use this
MIPS架构之start.s汇编分析
一、mips架构通用寄存器命名 二、mips汇编指令操作 实例: #example  .data  array1:  .space  12    #  declare 12 bytes of storage          # to hold array of 3 integers  .text  __start:    la  $t0,
处理编译错误"0" is an invalid value for the "DebugInformation" parameter of the "DCC" task.
[MSBuild Error] "0" is an invalid value for the "DebugInformation" parameter of the "DCC" task. The "DebugInformation" parameter is of type "System.Boolean".
mips 内嵌汇编
原文网址:http://blog.chinaunix.net/uid-26817832-id-3146404.html 1. GCC 内嵌汇编的基本格式 asm("assembly code"); 如: asm("syscall"); //触发一个系统调用 如果有多条指令,则需在指令尾部添加'\t'和'\n',如: asm("li v0, 4011\t\n"
mips汇编时常用的宏指令
MIPS公司最初设计的汇编器是一个宏伟的计划,它能完成智能宏的扩展,延迟槽填充,窥孔优化以及尽可能减少流水线堵塞而对复杂指令序列进行指令重组。不过其他的汇编器简单多了,因为高级语言的先进编译器技术已经可以完成这些优化工作。为了保持汇编代码的兼容性,同时为了让汇编程序员轻松一点,所有的MIPS汇编器至少实现下列功能: (1)进行宏展开 (2)为了让分支和加载指令的延迟槽对程序员透明,能够在需要的
汇编学习:从最简单的函数说起:对比x86,arm和MIPS
前言 最简单的函数 x86下汇编指令 ARM下汇编指令 MIPS下汇编指令 Hello World x86中汇编指令 ARM汇编 知识点1: 知识点2: 知识点3:ADR指令: ADRL: LDR指令: 知识点4:BL指令 知识点5:LDM/STM指令 LDMFD 指令 MIPS汇编 知识点1: 知识点2: 知识点3: 知识点4: 知识点5: 前言...
MIPS汇编
按:这是计算机组成课程第五周的作业。请各位多多评论。 要求 用C或JAVA编写程序,将MIPS汇编指令转换为机器码,并以二进制方式存盘,以作为随后反汇编的输入及CPU模拟器的执行程序。实现如下的指令:R类型(ADD、SUB、SLT)、LW、SW、BEQ、J。          能处理的指令格式 (只是为了写程序的时候处理起来不太麻烦而做的规定) l  每行一条指令。(不能多条或没有)
Invalid value set for db.setupType, the valid values are EMBEDDED or EXTERNAL
最近尝试了下 CDH : cloudera manager 当前最新版本 5.10  数据库用的是自建的  其他配置都是默认无修改: 启动server 会报错: 2017-03-06 00:02:44,675 ERROR MainThread:com.cloudera.server.cmf.Main: Server failed. java.lang.IllegalArgumentEx