问题标签 [qtspim]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
8021 浏览

assembly - QtSpim 异常发生在 PC=0x00000000

所以我刚刚开始在我的课程中使用 QtSimp,但我无法模拟单个程序

例如

我会正常加载文件,但是当我尝试运行它时,会出现以下错误:

这似乎是我迄今为止尝试过的任何程序的情况

QtSpim 版本:9.1.4

0 投票
1 回答
1223 浏览

mips - 用户输入字符串的结束字符

我正在编写一个程序,它采用罗马数字(最多 12 个字符)并将其转换为十进制值。我能够成功地进行此转换并逐个字符地读取每个值,但是当输入的字符串不是 12 个字符时,我的值总是比实际值大 1000,我确定这是由于通过评估子例程的额外循环(如果没有匹配,则进入转换 M = 1000 的过程)。

我认为这与我在少于 12 个字符时读取用户字符串的方式有关。据我了解,读取的字符串系统调用代码会继续执行,直到它到达一个 '\n' 字符,并将该字符及其剩余空间转换为 0 个字符,因此检查下一个字符是否不等于 0 应该可以工作因为我不希望 0 出现在用户的输入中。我确实意识到如果在“评估”期间没有匹配,我可以通过跳转到 tailLoop 来修复我的代码,但我想了解为什么我目前的代码不起作用。

以下代码不包含我的大部分程序(完整发布会很长),仅足以理解我尝试使用的逻辑过程。这是家庭作业,以防它影响你想如何回答问题。

0 投票
1 回答
39 浏览

assembly - 在 MIPS32 中,当调用加载地址时,寄存器是否接收变量的所有 4 个地址?

假设我有一个变量是一个单词,如果我要调用

寄存器现在会存储 4 个不同的地址还是只存储一个?

我对此感到迷茫,因为所有编程指南都显示单词存储在 4 个不同的 8 字节内存位置中,但是当调用加载地址时,所有指南似乎只引用一个正在传递的地址。如果只是一个地址,怎么引用?

0 投票
0 回答
445 浏览

assembly - MIPS 在递归函数中打印数据

我正在努力解决 MIPS 编程中的一个问题。我有以下递归函数:

F ( n ) = 14 F ( n - 1) + 2 F ( n - 2) - 5 n

我使用递归函数实现了它,它打印了我正确的答案。

我的问题是:我想在控制台中打印从F (0) 和F (1) 到我的F ( n ) 的序列,两者都是 1。我尝试$v0在函数的每次迭代中打印我存储最终值的寄存器,但它会打印出来(5例如)6 71 6 986 6 71 13921

这是我在打印函数中插入的代码:

var_curr当前迭代在哪里;print_curr是当前的打印值,space是数字之间的空格。

0 投票
1 回答
43 浏览

spim - 是否可以在 MIPS32 的 add 指令中添加 -1 值

使用 SPIM 这条指令是否正确?

添加 $t1,$zero,-1

运行程序后,$t1 由“ffffffff”填充

0 投票
0 回答
225 浏览

assembly - 在 Qtspim 但不是 PCSpim-Cache 中工作的汇编程序

我有以下汇编程序,它可以在 QTSspim 中正确编译和运行,并在 QTSspim 控制台中显示正确的结果。但是,我希望观察 PCSpim-cache 中的数据段,但它没有正确编译并在输出中显示正确的结果(它在每个位置显示 0)我应该说程序计算指定的两个向量的 Kronecker 乘积在文件的数据部分。这是我的代码:

如果有人能阐明为什么它在两个编译器中都不起作用,将不胜感激。我包含了一个指向 PCSpim 缓存的链接,这是我的实验室讲师给我的。我希望你熟悉 QTSimp。

PCSpim缓存链接:http ://www.disca.upv.es/spetit/spim.htm

0 投票
0 回答
402 浏览

assembly - 排序数组组件

我不知道这段代码有什么问题。提前致谢

我正在尝试创建一个数组并用无序数字填充它,然后对其进行排序。我可以输入它们,但输出没有被排序,因为提供了在 0x00400080 处执行非指令的错误尝试。

0 投票
2 回答
124 浏览

mips - 在 MIPS 中扩展寄存器的故障标志

目前我有

对于将 $t1 从 16 位扩展到 32 位的符号,但这不起作用。有没有一种简单的方法来签署 MIPS 中的扩展寄存器?

0 投票
4 回答
6428 浏览

assembly - 指令引用 MIPS/QTSPIM jal 0x00000000 [main] 中的未定义错误;188:日式主菜

我的代码中有以下错误。请帮忙。指令在 0x00400014 [0x00400014] 0x0c000000 jal 0x00000000 [main] 处引用未定义符号;188: jal main 此代码将华氏温度转换为摄氏温度,将摄氏温度转换为华氏温度

0 投票
1 回答
4101 浏览

assembly - MIPS 帮助:递归函数

我正在尝试将此递归函数编码到 MIPS 中。我的问题是我不确定如何执行递归步骤。
我很确定我得到了其余的正确。