问题标签 [edumips64]

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

arrays - 如何访问 Assembly 中的每个单词?

鉴于:

我如何访问“arr”中的每个单词,例如 2、3 和 4?

最终,我想做的是找到“arr”中所有值的总和,但我很难遍历“arr”。

感谢您的时间!

附加信息:

  1. 我正在使用 eduMIPS64
0 投票
2 回答
519 浏览

assembly - 将一个简单的 MIPS32 程序移植到 MIPS64

我在将以下 MIPS32 汇编程序移植到 64 位等效程序时遇到了一些困难。

我面临的主要问题是以下行:

我不确定为什么这条线会导致错误?指令应该在 MIPS64 中。

MIPS32

MIPS64

0 投票
1 回答
739 浏览

assembly - 如何在 EDUMIPS64 模拟器中打印数组或格式化字符串?

该程序的文档非常有限。为了做到这一点,我几乎没有什么可以借鉴的。除了程序的PDF,只有这个:

你可以在这里查看。EDU/WINMIPS64 与常规 MIPS 程序集有很大不同

有几段解释这一点,没有太大帮助。无论如何,这里会打印一个格式化的字符串,以及一些字符串参数(存储在 s1 和 s2 中)和整数参数(它们存储在哪里?)。

我有两个数组存储在内存中。我已经亲自对它们执行了指令,现在我想打印它们。我如何在这样的格式化字符串上提供这两个整数(它们是双字,即需要存储 8 个字节)?帮助材料没有解释。

这是到目前为止我设法创建的代码(大量评论):

如果有人知道如何做到这一点,如果他/她可以分享,我将非常感激。任何地方都没有这方面的例子。谢谢。

更新

在迈克尔的帮助下,通过反复试验,我找到了问题的主要原因。我们为输出字符串和其他内存地址提供标签的顺序非常敏感。通过反复试验,我发现我们必须遵守以下顺序:

请注意,我们必须提供$14start_address 标签,它不能包含任何内容(只是一些可用的空白空间)。在此之前,格式化的字符串必须经过,在此之后,syscall 5必须存在的参数。其他标签可以在所有这些之后或之前。

0 投票
1 回答
146 浏览

mips - 试图理解 SYSCALL 5 示例,文字 % 占位符的顺序令人困惑

我正在学习 MIPS64 并使用 EduMIPS64 模拟器。

我理解以下示例的说明,我尝试在一个循环后循环执行它,但我不知道编译器如何知道哪个数字或字符串与相应的占位符匹配,以及format_str在本.code节末尾如何与 so 相关,这就足够了把地址放进format_strr14

我知道系统调用期望其参数的地址存储在寄存器 R14 中,但所有其他调用如何与该地址(format_str)相关?

对于每个或占位符,%s都需要一个参数,从前一个的地址开始。当 SYSCALL 找到一个整数参数的占位符时,它期望对应的参数是一个整数值,当它找到一个字符串参数的占位符时,它期望字符串的地址作为参数。%d%iSYSCALL 5

我尝试通过内存表示来理解它,但没有成功。

谢谢。

0 投票
1 回答
102 浏览

mips - 打印用户使用系统调用 3 和系统调用 5 EduMIPS64 输入的值

我试图读取用户的输入并打印它。一开始,我向用户打印一个请求,用户输入一个值,我想打印它。

我正在尝试获取第一个数字,即 x,y 的下限。例如,我输入 number 5,所以最后xyL表示为 5 但打印的字符串是:

Enter lower bound for x,y Lower bound for x,y = 0

如何打印输入的值,然后对下一个字符串执行相同操作?

谢谢。

编辑:================================================= ======================= 我更改了.data通过添加另一种数据类型.space 8来保存地址,而不是跳转到打印值,print_string我调用syscall 5例子:

并在该.code部分:

但我仍然想使用print_string来打印字符串:prompt_msg_LBound_val使用用户输入的值。

我怎样才能做到这一点?

0 投票
1 回答
84 浏览

jar - 如何打开 edumips.jar?

我想运行 edumips.jar。每当我尝试打开时,Java 控制面板就会打开。

当我执行时:

在此处输入图像描述 强文本

第一次下载java并执行.jar文件。

我想要的是:

在此处输入图像描述

请告诉我我做错了什么......