以下是一個計算階乘的C語言遞歸過程,請按照MIPS過程調(diào)用協(xié)議寫出該遞歸過程對應(yīng)的MIPS匯編語言程序,要求目標代碼盡量短(提示:乘法運算可用乘法指令“mul rd,rs,rt”來實現(xiàn),功能為“rd←(rs)×(rt)”)。
以下C語言程序段中有兩個函數(shù)sum_array和compare,假定sum_array函數(shù)第一個被調(diào)用,全局變量sum分配在寄存器$s0中。要求寫出每個函數(shù)對應(yīng)的MIPS匯編表示。
說明beq指令的含義,并解釋為什么匯編程序在對下列匯編源程序中的beq指令進行匯編時會遇到問題,應(yīng)該如何修改該程序段?