MIPS32指令集中减法操作,新人第一次发帖,求助求助求助!!!!
如图:
对于操作类型为SUB和SUBU,我一直搞不懂。
举个例子: 如果reg1_i(寄存器1)的值是10,对应的二进制代码为0000 1010 如果reg2_i(寄存器2)的值是6,对应的二进制代码为 0000 0110 此时做sub或subu操作 将reg2_i(寄存器2)的值各位取反再+1 为 1111 1010 此时再与reg1_i(寄存器1)的值 0000 1010相加得到 0000 0100 即 4 这样我能看懂
但是!!!但是!!!!但是!!! 保持reg1_i(寄存器1)的值不变,将reg2_i的值改为-6,对应的二进制代码为1000 0110 此时再做减法操作,将寄存器2的值各位取反加1,根本算不出来呀!!!!
具体代码就是图上圈圈的位置,求各位大神帮小弟解决,第一次发帖,求求帮助!!!困扰我两三天了!,!谢谢!
[face]monkey2:019.png[/face][face]monkey2:019.png[/face][face]monkey2:019.png[/face][face]monkey2:019.png[/face][face]monkey2:019.png[/face][face]monkey2:019.png[/face][face]monkey2:019.png[/face]


...全文
相关推荐
基于MIPS指令集的32位CPU设计与Verilog语言实现_单周期CPU
用Verilog语言设计的单周期CPU,资源里包含了源代码及单周期CPU结构图,与大家分享下。
第七章 算术操作指令的实现
本章将实现MIPS32指令集架构定义的所有算数指令,共有21条,按照OpenMIPS实现这些指令的方式,可以分为三类,分别介绍如下: (1)简单算数操作指令 共有15条,包括加法、减法、比较、乘法等指令,这些指令在流水线执行阶段都只需要一个时钟周期,而且实现思路很直观,与第4章添加逻辑操作指令类似,只需修改译码阶段的ID模块,执行阶段的EX模块,即可实现。 (2)乘累加、乘累减治令 共有4条:乘累加(madd)、无符号乘累加(maddu)、乘累减(msub)、无符号乘累减(msubu)。其中madd、mad
MIPS完整指令集
这是完整的MIPS指令集,拥有完整的介绍,英文版的,
mips32指令集 介绍 中文版
mips32指令集 介绍 中文版
MIPS指令集手册
该文档为标准MIPS指令集的手册,英文版,内容详细清晰


硬件设计
