请各位达人帮忙用汇编优化这个函数,谢谢。
由于本人汇编水平有限,敬请各位帮忙优化一下,再次感谢。
void
ComputArray(int(*pos)[], int *array, int x, int y, int clsfr_cnt, int width)
{
for (int i = 0; i < clsfr_cnt; ++i )
{
if (pos[-1][i] != 0)
{
if (pos[4][i] != pos[6][i])
{
(array)[i] = array1[pos[4][i]+1+x][pos[5][i]+1+y] + array1[pos[0][i]+x][pos[1][i]+1+y]
- ((pos[3][i]==19 && y==width-20) ? array1[pos[2][i]+x][pos[3][i]+1+y] : array1[pos[2][i]+1+x][pos[3][i]+2+y])
- ((pos[7][i]==0 && y==0) ? array1[pos[6][i]+x][pos[7][i]+1+y] : array1[pos[6][i]+1+x][pos[7][i]+y]);
}
else
{
(array)[i] = array2[pos[4][i]+1+x][pos[5][i]+1+y] + array2[pos[0][i]+x][pos[1][i]+y]
- array2[pos[2][i]+x][pos[3][i]+1+y] - array2[pos[6][i]+1+x][pos[7][i]+y];
}
}
}
}