以下程序段是某個過程對應(yīng)的MIPS指令序列,其功能為復(fù)制一個存儲塊數(shù)據(jù)到另一個存儲塊中,存儲塊中每個數(shù)據(jù)的類型為float,源數(shù)據(jù)塊和目的數(shù)據(jù)塊的首地址分別存放在$a0和$a1中,復(fù)制的數(shù)據(jù)個數(shù)存放在$v0中,作為返回參數(shù)返回給調(diào)用過程。在復(fù)制過程中遇到0則停止,最后一個0也需要復(fù)制,但不被計數(shù)。已知程序段中有多個Bug,請找出它們并修改。
下列指令序列用來對兩個數(shù)組進(jìn)行處理,并產(chǎn)生結(jié)果存放在$v0中。假定每個數(shù)組有2500個字,其數(shù)組下標(biāo)為0到2499。兩個數(shù)組的基地址分別存放在$a0和$a1中,數(shù)組長度分別存放在$a2和$a3中。要求為以下MIPS指令序列加注釋,并簡單說明該過程的功能。假定該指令序列運(yùn)行在一個時鐘頻率為2GHz的處理器上,add、addi和sll指令的CPI為1;lw和bne指令的CPI為2,則最壞情況下運(yùn)行所需時間是多少秒?