1现有4级流水线,分别完成取指令,指令译码并取数,运算,回写四部操作,时间分别为100ns,100ns,80ns,50ns。

所谓操作周期就是一段流水线所需的时间
2指令流水线分为IF,IX,EX,WB4个过程,共有十条指令连续流入此流水线

3某台单流水线多操作部件处理机,包含有取指,译码,执行3个功能段,在该机上执行以下程序。取指和译码功能各需要1个时钟周期,MOV操作需要2个时钟周期,ADD操作需要3个时钟周期,MUL操作需要4个时钟周期,每个操作都在第一个时钟周期接收数据,在最后一个时钟周期把结果写入通用寄存器

4算术右移补符号位
按需发射,按需完成要求下一条指令的IF必须和上一条指令的ID并行

计算机的数据要进行加减乘除,不可能说直接拿内存中的数进行运算,要把数取到寄存器中,然后运算完再写回寄存器中
赋值语句和指令序列必定有LOAD和STORE指令

5某程序中有循环代码段P:
for(int i=0;i<N;i++)
sum+=A[i];
假设编译时变量sum和i分别分配在寄存器P1和P2中。常量N在寄存器R6中,数字A的首地址在寄存器R3中。程序P的起始地址为0804 8100H,对应的汇编代码和机器代码如下表所示:


1131



被折叠的 条评论
为什么被折叠?



