【发布时间】:2021-03-04 00:48:18
【问题描述】:
我必须用尽可能少的命令将这个 C 代码中的 FIR 滤波器转换为汇编 mips64。如何在程序集 mips64 中使用超过 4 个参数的 fir 函数?我正在使用 winmips64 作为模拟器。我只关心正确声明函数
void fir(int X[], int H[], int Y[], int n, int m)
{
int i, j;
int y0;
for (j=0; j<m; j++){
y0=0;
for (i=0; i<n; i++){
y0+=X[i+j]*H[i];
}
Y[j]=y0;
}
}
【问题讨论】:
-
MIPS 除了
$a0-$a3之外还有很多其他的寄存器。因此,请选择其他一些用于附加论点。例如,N64 ABI 使用$a0-$a3和$t0-$t3最多允许8 个寄存器参数。或者你可以在堆栈上传递额外的参数。 -
@enhzflep 这是我要解决的家庭作业问题
标签: c assembly mips calling-convention mips64