问题标签 [pcspim]

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 回答
2223 浏览

mips - MIPS ADDIU 混乱

我正在对单周期 MIPS 处理器进行分配,我对 addiu 指令有点困惑。

在这个网站上,作为我的参考,作者声明立即将被延长。

如果我有以下说明

我创建了我的数据路径,该路径扩展了我会得到的 addiu

但根据 PCSpim 是不正确的,我应该得到

我很困惑为什么我需要签署extend addiu,据我所知,如果我做类似的addiu $1, $1, -10事情应该被视为addiu $1, $1, 10因为它是未签名的。

那么为什么它说我应该对立即值进行符号扩展呢?

0 投票
0 回答
1448 浏览

assembly - 如何在 SPIM 中将十进制数转换为二进制、八进制和十六进制数?

我首先尝试做十六进制数,我从网上找到了一种方法......

它根本不起作用。我怎样才能在 SPIM 中做到这一点?

输出应该是这样的......

输入数字:23

输入数字为 23

二进制码为 0000 0000 0000 0000 0000 0000 0001 0111

八进制代码是 000 0000 0027

十六进制代码为 0000 0017

0 投票
0 回答
390 浏览

mips - Spim 语法解析器错误

我一直在研究从 HLL 到 MIPS AL 的翻译,但我无法弄清楚为什么会出现这些语法错误。我将发布我正在翻译的 HLL 以及希望我接近完整的 MIPS AL 代码。

HLL: 在此处输入图像描述

我目前的 MIPS AL:

0 投票
1 回答
1303 浏览

mips - MIPS:在右对齐列中对齐输出

我正在上一门关于计算机如何在较低级别上运行的课程,到目前为止主要是关于内存管理。其中一部分是学习使用 MIPS 处理器的 PCSPIM 模拟器用汇编语言编写。

我刚刚完成了一个关于循环的作业。为此,我必须编写一个程序,提示用户输入一个数字并打印从 1 到该数字的数字。每 10 个字符打印一次换行符。假设输入为正。我做了那部分没问题,程序运行良好。

但是作为奖励,我被要求将输出对齐到右对齐列。我被难住了,我不知道该怎么做。我可以用 Java 解决这个问题,但我刚开始学习汇编的基础知识,在回顾了迄今为止我在课堂上学到的所有内容之后,我意识到我们根本没有学会如何做到这一点。我以前有过这位教授,她喜欢这样做让我们思考,看看我们是否能在没有她帮助的情况下解决这个问题。

我曾考虑将所有结果放入一个数组并打印出来,但我不知道如何在 Assembly 中制作数组。我也考虑过使用与 IF 语句等效的 Assembly,但每次将新数字添加到数字时,我都必须编写和测试一个,并且输入没有最大数量。

如果有人能告诉我如何将我的输出打印到右对齐列中,我将不胜感激。到目前为止,这是我的代码:

0 投票
1 回答
164 浏览

mips - MIPS:如何将用户输入的整数应用到算术函数中?

这是我第一次编写 PCSPIM。我发现我的代码有点问题。

我希望使用用户输入到#calculation 部分的整数值($t8),但它最终会出错。

对不起我的英语不好。

0 投票
1 回答
89 浏览

assembly - PCSpim 文本窗口 - 输出是什么意思?

在 PCSpim 中,当程序执行时,它会在文本窗口中为每条指令显示一行。

例如 [0x00400028] 0x34020004 或 $2, $0, 4 ;13: li $v0, 4

该示例将 4 加载到寄存器 $v0 中。

ori $2, $0, 4 是什么意思?

0x34020004 是同一个命令,但是是十六进制的吗?

谢谢。

0 投票
0 回答
565 浏览

arrays - PCSpim - MIPS - 异常 5 存储中的错误地址错误

所以我遇到了我的 PCSpim 程序的问题,在查看后我仍然找不到正确的解决方案,我认为它可能是“对齐”指令,要么我错过了一个,要么我错过了它。

这里是程序的开始,初始化数组

我想它就在这附近搞砸了

任何建议将不胜感激!:)

0 投票
1 回答
864 浏览

mips - MIPS 中的语法错误?

所以,我目前正在为我的大学学位学习 MIPS,我遇到了一个困扰我的语法错误,我似乎无法指出我哪里出错了,我的一段代码是一个用户输入两个数字,控制台应该返回一组数字,由于用户输入的两个数字而增加并完成打印,我目前在 PCSpim 上遇到语法错误,上面写着“spim:(解析器)语法文件第 55 行出现错误”第 55 行是addi $t0, $t0, $t2我要发送的代码,如果有人能指出我在哪里解决这个问题的大致方向,那就太好了。

0 投票
0 回答
136 浏览

assembly - PCSpim 模拟器上的汇编编译错误

我是组装新手,我正在研究它在 MIPS 上的应用。我的大学老师给了我们一些密码。这里有一个。

当我尝试用 PCSpim 模拟器编译它时,它给出了一个错误:

注意:我已经清除了 PCSpim 中的寄存器。同样在 Simulator-> Set Run Parameters 我有作为地址或标签来启动程序:0x00400000。(在另一个stackoverflow问题中,我同样的问题得到了解决,因为地址是 0x00000000 )。任何帮助将不胜感激!谢谢。

0 投票
1 回答
77 浏览

mips - 需要 MIPS 架构循环帮助

完成SPIM汇编语言程序loop2.s。程序将计算“数字”中小于或等于 1000 的元素的总和。

我试图编写代码,但是输出即将到来,而我需要它是 11

程序名称:loop2.s

  • 将计算数组“numbers”中值小于或等于 1000 的所有元素的总和。
  • “numbers”是一个包含 5 个整数元素的数组。
  • “count”保存“numbers”中元素的数量。

  • 输出格式必须为“sum = 11”

t0 - 依次指向数组元素 t1 - 包含元素计数

t2 - 包含总和

t3 - 依次来自数组“numbers”的每个单词