如何在c++中模拟5级管线
how to simulate 5 stage of pipe line in c++?
我正在尝试模拟5阶段的管道。我已将所有指令保存到一个结构体中。(基本用词法分析阶段完成)
,
ADD R1 R2 R3 // R1 = R2+ R3 ... struct pipe{ int pc, string instruction , int r1, int r2....}
如果p[i]
是管道的一个阶段,则, (p[1]
可以是pc=pc+1
;I[i]
为指令,(I[1]
可为ADD R1 R2 R3
)
我要做的是
at t=1 : p[1] = I[1]
at t=2 :p[2] = I[1], p[1] = I[2]
at t=3 :p[3] = I[1], p[2] = I[2], p[1] = I[3]
at t=4 :p[4] = I[1], p[3] = I[2], p[2] = I[3], p[1] = I[4]
…就像这样到目前为止,我使用的是c++。
看起来您只是想在每个时间步的数组前面添加一个元素,从而将已经存在的数组元素向右移动一个。你可以避免像这样做O(n**2)
操作
int& p_at_time(int index, int time_moment) {
return &p[time_moment-index+1];
}
- and at t=1: p_at_time(1,1) = I[1];
- t = 2: p_at_time(1、2)=我[2],(p_at_time(2, 2)已经
== I[1]
) - at t=3: p_at_time(1,3) = I[3], (p_at_time(2,3)和p_at_time(3,3)的值为I[2]和I[1])
相关文章:
- 如何使用Google Mock来模拟gettimeofday()
- 有根的二进制搜索树.保留与其父级的链接
- G锁定铸造到基础上会释放模拟行为
- 有什么好的方法可以让系统调用代理允许在单元测试中进行模拟
- 黑客级别的Mini-Max Sum
- 落砂模拟碰撞检测C++和SFML
- 在gtest.中使用fff.h模拟系统API
- 谷歌模拟和覆盖关键字
- 用C#中的并集模拟C++嵌套结构
- 在同一模拟中使用静脉和静脉_ inet内容时出现运行时错误
- 在模拟器中使用并集来模拟CPU寄存器有多合适
- 我写了一个C++程序来模拟Enigma机器.我没有得到输出
- 如何模拟不同边数的骰子滚动?
- 模拟持久按键
- 使用SIR模型的疾病爆发模拟
- 从较小的阵列到较大的阵列的元素级转换
- 在 c++ 中模拟输入并在 JAVA 中读取它?
- 只有级联分类器会发出未定义的引用错误
- 如何使用管道在父级和子级之间来回传递文件
- 如何在c++中模拟5级管线