Я пытаюсь умножить матрицу на 2d "int" массивов.Я прошу пользователей вставить матрицу через c ++.Затем я использую эти данные для умножения матриц в сборке.Я получил ошибку во время выполнения, когда попытался переместить элемент моего массива int в регистр ax.Я не уверен, что не так.
void Matrix::Calculate()
{
signed short i =0, j=0, k=0 ;
__asm{
xor eax,eax
xor ebx,ebx
xor edx,edx
mov ecx, 3
L1:
push ecx
mov ecx, 3
L2 :
push ecx
mov ecx, 3
L3 :
mov ax, p[i][k] //runtime error
mov bx, q[k][j]
imul bx
add r[i][j], bx
inc k
loop L3
pop ecx
inc j
loop L2
pop ecx
inc k
loop L1
};
}