mips32相关内容

如何在MIPS中将浮点寄存器设置为0(或清除其值).

我目前正在MIPS流水线代码中实现一个包含单个浮点数的方阵乘法器. 我的问题是,完成对相应行和列的乘积求和以便计算我的点积后,我想清除该浮点寄存器,以便可以为乘积矩阵中的下一个条目计算点积现在,我继续将当前的点产品与所有以前的点产品相加. 我尝试将浮点寄存器设置为零的事情: l.s $f3,$0 #loading zero into the register addi $t0, ..
发布时间:2020-05-09 23:10:09 其他开发

如何从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 其他开发

从多重技巧中获得结果

我是汇编语言的新手,我对乘法很困惑. 我在这里阅读快速教程: http://logos.cs.uic.edu/366/notes/mips%20quick%20tutorial.htm 它说在我使用mult $t0, $t1之后,结果存储在Hi和Lo中,我知道这些是mult和div的特殊寄存器,但是如何访问它们? 让我说我做mult $t0, $t1,其中$t0和$t1都是2.如 ..
发布时间:2020-05-09 23:05:31 其他开发

MIPS可字节寻址

我一直在下面的URL上观看有关MIPS ISA的演讲. http://www.youtube.com/watch? v = DVFwXvxyC38& list = PLD8AF625E53B0691F& index = 4 根据我到目前为止的理解: 对于32位的MIP,主存储器具有32位的地址输入总线,存储器中的每个插槽都具有8位,因此每个地址都可以引用8位的存储器(这就是其字节 ..
发布时间:2020-05-09 23:04:11 其他开发

使用MIPS程序集进行整数数组索引

我想将此C代码转换为MIPS. C代码: f = A[B[h-g]] 我们假设h > g和B[h-g] > 0. h,g,f是整数. 还假定已将f分配给寄存器$s0,g至$s1,h至$s2. A-> $s6和B-> $s7 的基地址 这是我的尝试: sub $t0, $s2, $s1 mult $t0, $t0, 4 ..
发布时间:2020-05-09 23:03:50 其他开发

MIPS:.asciiz的大小?

确定.asciiz字符串的大小时,我应该考虑 考虑终止符吗? 例如: .data string: .asciiz "Hello" “字符串"的大小是5还是6(字节)? 谢谢. 解决方案 如果您询问该字符串存储在内存中的字节数为6字节 如果您要问一个计算字符串长度的函数(例如strlen C函数)应该返回什么,则应该为5 ..
发布时间:2020-05-09 22:56:08 其他开发

.space在mips中有什么作用?

我遇到了一个分配问题,在该分配中,我们将这些数字放入了一个数组中,并在不使用循环的情况下将它们相加.我已经解决了这个问题,但是.space使我感到困惑.通过设置.space 20,我可以为5个单词腾出空间还是在做其他事情. .data array: .space 20 .text addi $s0, $zero, 2 addi $s1, $zero, 12 addi $s2, $ze ..
发布时间:2020-05-09 22:56:05 其他开发

在向MIPS单周期数据路径添加更多功能方面需要帮助

我正在尝试将jal功能添加到以下内容中,但我仍然坚持如何工作.我知道它将旧的PC+4值存储在$ra寄存器中,然后将控件转移到通过返回$ra来转移回控件的函数中,但是我该如何在硬件中实现它呢? 解决方案 您需要做两件事. 在寄存器的输入处添加一个多路复用器,以便可以选择PC + 4值作为要写入的数据.使用适当的控制信号,这将使您可以编写PC + 4,作为"jal $ ra"指令的附加效果. ..
发布时间:2020-05-09 22:55:57 其他开发

如何从寄存器中提取位中的值,并用它们替换其他寄存器中的位? (MIP汇编语言)

我需要从寄存器$ t0中提取位22到4的值,计算该值的一半(假定无符号整数),并使用新值替换寄存器$ t1中的位24到6的位,而无需更改$ t1中的其他位.没有给出值,但我认为这不应该成为问题.每个寄存器有32位 我对MIP有点陌生,所以我不确定如何解决这个问题 解决方案 我已经分解了算法的各个步骤.然后,我创建了一个C原型/测试程序.最后,我创建了一个mips asm程序. ..
发布时间:2020-05-09 22:54:31 其他开发

大尾数法和小尾数法

给出的是可字节寻址计算机的内存快照.如果机器为大端且为小端时,在执行指令lw $16, 24($17)之后将加载到寄存器$16中的内容.寄存器$17包含200. 现在,根据我的说法,无论Little Endian还是Big Endian,都会从内存(224-227)中复制四个字节,然后,如果计算机是Big Endian,那么它们将被原样复制到寄存器中. 如果机器是Little Endi ..
发布时间:2020-05-09 22:52:58 其他开发

MIPS组件对齐对齐n

指令.align n在数组中起什么作用? 更具体地说,假设我具有以下代码部分: array: .align 2 .space 800 它的重要性是什么,为什么不跳过它并使用 .space 800 这是学校的作业理论问题. 解决方案 直接从MARS帮助工具提示中获取: 在指定的字节边界上对齐下一个数据项(0 =字节,1 =半字 ..
发布时间:2020-05-09 22:51:22 其他开发

内核模块未加载(但insmod返回0)

我必须向现有设备(mips arch)添加一些功能-我已经尝试了多个SDK,目前我已经取得了一些进步,但是: insmod返回0(成功),而lsmod显示它们,但是printk或create_proc_entry都不起作用....但是我已经查看了.gnu.linkonce.this_module部分:除了模块名称-没有有用的信息-该部分已填充带有0x0的 我发现,在本地.ko文件中,.gnu ..
发布时间:2020-05-02 03:46:54 其他开发

MIPS32路由器:内核模块未调用module_init

我正在开发要在路由器上运行的内核模块.路由器型号为Netgear的DGN2200v2.它在MIPS上运行Linux 2.6.30.我的问题是,当我加载模块时,似乎没有调用module_init.我试图通过修改module_init使其返回-3(指示错误?)来缩小范围,并且insmod仍然报告成功.我可以在lsmod的输出中看到我的模块,但没有看到使用dmesg的printk输出. 对于初学者 ..
发布时间:2020-05-02 03:32:31 其他开发

是否-fomit帧指针* *总是忽略了FP?

是否-fomit帧指针的总是的省略帧指针?是否有过其中两个PC和FP需要设置一个情况呢?难道动态栈增长迫使FP要设置吗?专门针对MIPS32要求。谢谢! 解决方案 是不是真的需要帧指针正确执行,除了有时异常放松。动态堆栈增长通常需要某种帧指针,但它不依赖于特定寄存器,而是通过正常的数据流分析,而分配 基本上, -fomit-frame-pointer的从固定寄存器赋值给一个伪寄存器的降级 ..
发布时间:2016-08-23 11:17:58 C/C++

如何使用或和SLL包装(凝)的一个字符串的字节?

我在写一个程序,读取4位十六进制数,即重新present一个无符号整数,那么它凝聚$ T1这些数字并最终它计算并显示十进制数。 我已经完全掌握在理论上解决方案,但我有麻烦使用MIPS因为这是我的第一个程序。目前,我有麻烦存储字符串的字节数。这里是我的code迄今: 。数据 MSG1:.asciiz“输入十六进制” 换行:.asciiz“\\ n” 。文本主要: #PRINT串MSG1 李$ V ..
发布时间:2016-07-18 21:31:13 .NET Framework

编写MIPS机器指令和从C执行它们

我试着写在C和MIPS一些自我修改code。 因为我想以后修改code,我想写实际的机器指令(相对于内联汇编),我试图执行这些指令。有人告诉我,这将有可能为只是malloc的一些记忆,写指令出现,指向一个C函数指针,然后跳转到它。(包括我下面的例子) 我已经与我的交叉编译器(的Sourcery codebench工具链)尝试这样做,它不工作(是的,在后视力,我想它似乎相当幼稚)。我怎么能正确地 ..
发布时间:2016-07-18 21:24:25 .NET Framework

铸造在MIPS

我有一个有趣的问题! 我实现了一个记忆游戏MIPS, 游戏通过在屏幕上随机打印10-99之间的数字开始, 然后要求用户输入的确切人数。如果用户正确地输入数字,游戏通过显示第一数目和10-99之间的第二随机产生的数继续。和这两个数必须显示一个接一个,它们之间有3秒的延迟。用户随后被要求以正确的顺序输入数字,因为他们出现在屏幕上。如果用户输入的两个数字正确比赛继续与三个数字,然后四等。 这是一 ..
发布时间:2016-07-18 21:01:52 .NET Framework