spim

    0热度

    1回答

    我想编写一个在数组中找到最大值的程序。 当我尝试启动我的程序时,出现错误“PC = 0x0040004c发生异常”。我不知道这是什么意思,我不知道我的代码有什么问题。 .data liste: .word 1, 2 ,3 ,41, 5, 6, 7 .text main: la $a0 liste #adresse des ersten Elements in $a0 gespe

    0热度

    1回答

    我已经想通了,两个无符号整数,我可以做到这一点: sll $a0, $a0, 31 #a0 is integer 1 to be added sll $a1, $a1, 31 #a1 is integer 2 add $t0, $a0, $a1 #result in $t0 addi $t1, $0, 2 beq $v0, $t0, $t1 这样做是它变为两个整数到

    0热度

    1回答

    C代码是这样的 function foo() { int i,a[10],b[10],c=2; for (i=0; i<10; i++) a[i] = b[i] + c; printf (“%d\n”, i); } 这里是我的MIPS代码: .data a: .space 10 n: .word 1 m: .word 10 .text mai

    0热度

    1回答

    如何验证矩阵是以mips对称的? .data string1: .asciiz "dati n \n" string2: .asciiz "dati elem matrice \n" n: .word 0 elem: .space 1024 .text main: li $v0,4 la $a0,string1 syscall

    0热度

    1回答

    我正在参加大学课程,根据规范试图遵循书籍“计算机体系结构定量方法”。 我们的任务是在MIPS中编写插入排序,但我不知道应该如何调试我的代码甚至编译它。学校网页指向书中的gcc-mips-elf和MipsIt。 问题是我使用arch而不是debian,所以gcc-mips-elf不可用并且MipsIt需要模拟器,所以我决定使用我在arch数据库中找到的本地模拟器QtSpim。 但是,当我尝试从课程网

    0热度

    1回答

    我正在尝试编写一个MIPS程序,将罗马数字(作为ASCII字符串输入)转换为其十进制值。有一个I/0组件提示用户输入,执行有限的有效性检查,然后输出原始字符串和值。 若要将每个罗马数字字符转换为其十进制值,我使用了一个查找表(即我得到每个字符在“罗马数字”数组中的索引,然后使用此索引值获取相应的值从“十进制值”数组中获得。 罗马数字从L读到R,但我不能简单地添加每个字符(即,使和纯粹递归),因为可

    -1热度

    1回答

    我只想运行任何一种使用Syscall打开,读取和/或写入文件的Spim程序,但这并不奏效。我意识到可能我的程序和文件不在QtSpim的工作目录中,但我不知道如何设置它或设置新的目录。所以在第一个Syscall $ v0之后是-1,这意味着一个错误。我尝试使用完整的路径名来读取文件(下面的例子),并试图编写/创建一个文件来查看QtSpim将保存文件的位置。如果我有一个根本的缺陷,请不要犹豫,让我知道

    0热度

    1回答

    我对MIPS相对较新,并且使用SPIM作为我的编译器。我试图写该程序使用十进制整数的用户的输入,并确定的有多少个零,一个是它的二进制表示: .data ques: .asciiz "Enter a decimal integer:\n" zer: .asciiz "Number of 0's\n" one: .asciiz "Number of 1's\n" buf: .word 16

    0热度

    1回答

    我目前使用SPIM(QTSpim)来了解MIPS。我对SPIM命令及其工作方式有几个疑问。 1)据我所知,MIPS通常使用16位来显示数值,但为什么QTSpim中的寄存器只有8位? 2)注册$ 11(t3),原始值为10.机器执行[sra $ 11,$ 11,2]指令后,数值从10变为4.这是怎么发生的?当10只有2位时,2个位置如何向右移动? 谢谢。

    0热度

    1回答

    因此,正如我上次在我刚才的问题说: 我有一个锻炼我的univercity,我想有一些帮助!首先我是mips语言的新手!所以,我的练习是要求在qtSpim中创建一个程序,它将从控制台读取8个整数,然后将它保存在一个数组中,并保存到内存中,最后它将按保留顺序打印这些整数的六个元素!你能帮我一点点编码吗? 所以,我想一点点孤单,这是我做了什么至今: # $18=c .data myArray: