I'm trying to multiply 16 square matrices 8 x 8 recursively.

I'm not very sure about this code.Code:`signed char matrices_64[16][8][8] = {};`

signed char matrices_result[16][8][8] = {};

signed long long int tmp_matrix;

for(BYTE M = 0; M < 16; M++)

{

for (BYTE x = 0; x < 8; x++)

{

for (BYTE y = 0; y < 8; y++)

{

tmp_matrix = matrices_64[M][x][i];

for (BYTE m = 0; m < 16; m++)

{

for (BYTE i = 0; i < 8; i++)

{

tmp_matrix *= matrices_64[(M + m + 1) % 16][i][y];

}

tmp_matrix %= 256;

}

matrices_result[M][x][y] = tmp_matrix;

}

}

}