mars-simulator相关内容

程序集-无效的语言元素MIPS

我正在尝试执行一个非常简单的程序,但不断收到错误:Invalid language element lw $t0, 0($a0) #load integer from $a0->$t0 beq $t0, 1, 1dimensional #branch if $t0=1 1dimensional: do something 我不明白为什么会出现此错误。 ..
发布时间:2022-08-08 12:14:03 其他开发

它如何知道字符串何时结束而没有终止符呢?(代码如下)

我正在学习火星上的MIPS,根据以下代码,我感到困惑。因为当我将输入的字符串加载到保留空间时,即使没有终止符,代码也能正常输出。这是为什么呢? 我认为每个字符串都需要一个终止符,以便输入缓冲区知道何时停止。 有没有一张是自动填的还是.?提前谢谢您。 代码为: # Filename: mips3.asm # Author: me # Program to read a string from ..
发布时间:2022-03-27 22:27:11 其他开发

如何在MacOS上的MARS中打开保存的.asm文件

我刚开始使用MIPS,我找不到如何打开我保存的文件。我在Downloads文件夹下保存了一个.asm文件,但是当我尝试在MARS中打开文件并导航到同一个Downloads文件夹时,该.asm文件没有出现。 我正在MacOS上使用MARS。 推荐答案 我想我必须允许访问JAR文件的查找器目录。Mac最初不允许mars访问我的任何目录。 ..
发布时间:2022-03-27 22:24:00 其他开发

MIPS中的移位加法乘法,不带乘法

我有以下代码,但我不断收到算术溢出错误。我试图解决的问题是将两个31位数字相乘,并将结果存储在$T2$T3中,然后打印出正确的结果。似乎我已经编写了两个要相乘的数字的代码,最终结果是一个31位的数字。 我很乐意缩小我觉得出错的范围,但我真的看不出需要在哪里进行更改以及需要进行哪些更改。 # program to multiply two 31 bit binary numbers (A ..
发布时间:2022-03-27 22:00:43 其他开发

MIPS-Free动态分配空间(堆)

我正在尝试释放动态分配的堆内存空间 我尝试运行这段简单的代码,但一直收到相同的错误: 请求(-40)为负堆数量(Syscall 9) .text li $v0,9 li $a0,40 syscall li $v0,9 li $a0,-40 syscall 有人能帮我理解为什么它不工作吗? 是否有其他释放空间的方法? 推荐答案 MARS不支持带有负参数的sbrk, ..
发布时间:2022-03-27 21:52:02 其他开发

如何将存储的字符串与输入的字符串进行比较-MIPS

我正在编写一个程序,询问用户他们的温度,然后获取该输入并转换和输出所有四个温度.我需要帮助让我的用户输入读入,以便它可以在我的分支中工作,beq.我无法将输入 'f' 识别为等于存储的版本. .datatemptype: .asciiz "输入温度类型,即 f, c, k, r: "tempdegree: .asciiz "\n 输入度数:"空间:.space 2tempx: .asciiz “ ..
发布时间:2021-06-02 22:21:14 其他开发

有一个整数并在 MIPS 中打印出十六进制

如果我有一个整数,将整数打印为十六进制的代码行是什么?我知道您使用 34 作为命令,但我不确定其余部分 解决方案 您所指的“34"是 mars 模拟器中“以十六进制打印整数"的系统调用号. 系统调用参考是:http://courses.missouristate.edu/kenvollmar/mars/help/syscallhelp.html 假设您的号码在寄存器中,例如 $ ..
发布时间:2021-06-02 22:21:09 其他开发

如何刷新 mars mips 中的提示?

好的,我尝试清除 MARS(mips 汇编程序)的默认提示 i/o,并且真诚地,不知道如何做到这一点.在程序运行期间,我可以使用哪些代码或系统调用来刷新屏幕? 编辑:抱歉信息不全.我说的是 MARS 中存在的“模拟 MIPS 控制台输出/输入".我的问题是是否可以在程序运行期间清除此控制台以及任何代码实现. 解决方案 有两种基本方法可以做到这一点,但它们都涉及捕获 clear 命令的 ..
发布时间:2021-06-02 22:20:10 其他开发

处理非数字用户输入到 MARS 读整数系统调用?

我正在做一个简单的停车场程序,它接受用户的输入,并根据输入分支到一个标签. 问题是,如果用户输入的数据类型不同于整数(如“a"或任何字母),程序总是会突然结束 以下是我的代码(与输入部分相关): li $v0,5 #系统调用以获取用户输入系统调用里 $t1,2beq $v0,1,park # 如果输入为 1,则转到代码的“park"部分beq $v0,2,exit # 如果输入为 ..
发布时间:2021-06-02 22:18:56 其他开发

MIPS 输入浮点数

你如何在 MIPS 中接受一个浮点数的输入?我试过使用: li.s $f0, 6系统调用 但我一直发现线路有错误. 解决方案 li $v0, 6 系统调用 //读取的浮点值会在$f0寄存器中 ..
发布时间:2021-06-02 22:18:43 其他开发

在MIPS中使用syscall 8验证用户输入

我正在努力寻找一种有效的方法,以使用syscall 8来检查用户是否输入了只有数字(0〜9)的有效输入 输入为4个字节长(1个字), 我需要检查每个字节(字符)是否为数字, 我想尝试运行一个循环,并检查其ascii值是否低于48("0" ascii decimel值), 或高于57("9" ascii分度值), 这是一种有效的方法吗? 如果是这样,那么在MIPS中实现这种i ..
发布时间:2020-09-13 01:37:01 其他开发

如何在mips汇编编程中计算时钟周期?

我到处搜寻了,我收集了管道或其他东西.我检查了其他程序,似乎有一个单周期&多周期:单周期和多周期MIPS的时钟周期 我该如何区分哪个周期的差异. 例如,这将是几个时钟周期: li $a0, 0 # $a0 = 0 li $t0, 10 # Initialize loop counter to 10 Loop: add $a0, $a0, $t0 addi $t0, $t0, ..
发布时间:2020-05-09 23:08:32 其他开发

如何从MIPS组件打印到屏幕

.text emitchar: lui $t0,0xffff polling: lw $t1,8($t0) andi $t1,$t1,0x0001 beq $t1,$zero,polling sw $a0,0xc($t0) .data 有人告诉我这是怎么做的,但是当我运行带有显示器和键盘的模拟器时,屏幕上仍然没有输出.我在做什么错了? 解决方案 启动代码 ..
发布时间:2020-05-09 23:08:03 其他开发

MIPS组件,Lui 0x1001

我有一个作业,其中我必须解释有关以下MIPS汇编代码的一些事情: .data x: .word 4711 y: .word 10 z: .word 0x0A91 e: .word 0 .text .globl main main: lw $2, x lw $3, y lw $4, z add $2, $2, $3 sub $3, $2, $4 sw $3, e li $2, 10 sysc ..
发布时间:2020-05-09 23:07:06 其他开发