30.假设计算机M的指令集中包含A、B、C三类指令,其CPI分别为3、4。某个程序P在M上被编译成两个不同的目标代码序列Pl和P2,Pl所含A、B、C三类指令的条数分别为8、5、6,P2所含A、B、C三类指令的条数分别为7、7、8。 请问:(1)哪个代码序列指令条数少? (2)哪个执行速度决? (3)它们的CPI分别是多少?
30.假设计算机M的指令集中包含A、B、C三类指令,其CPI分别为3、4。某个程序P在M上被编译成两个不同的目标代码序列Pl和P2,Pl所含A、B、C三类指令的条数分别为8、5、6,P2所含A、B、C三类指令的条数分别为7、7、8。 请问:(1)哪个代码序列指令条数少? (2)哪个执行速度决? (3)它们的CPI分别是多少?
【正确答案】:(1)P1代码序列指令条数为:8+5+6=19P2代码序列指令条数为:7+7+8=22所以P1代码序列指令条数少。(2)P1的时钟周期数为:8*2+5*3+6*4=55P2的时钟周期数为:7*2+7*3+8*4=67由此可知,P1比P2快。(3)CPI=程序时钟周期数除以程序所含指令条数P1的CPI=55/19=2.89P2的CPI=67/22=3.05
Top