我第一次玩 x86 程序集,但我不知道如何对数组进行排序(通过插入排序)。我了解算法,但程序集让我感到困惑,因为我主要使用 Java 和 C++。这是我到目前为止所拥有的一切
int ascending_sort( char arrayOfLetters[], int arraySize )
{
char temp;
__asm{
push eax
push ebx
push ecx
push edx
push esi
push edi
//// ???
pop edi
pop esi
pop edx
pop ecx
pop ebx
pop eax
}
}
基本上没有:(有什么想法吗??提前谢谢。
好的,这只会让我听起来像个白痴,但我什至无法更改 _asm 中的任何数组值
只是为了测试一下,我放了:
mov temp, 'X'
mov al, temp
mov arrayOfLetters[0], temp
这给了我一个错误C2415:不正确的操作数类型
所以我尝试了:
mov temp, 'X'
mov al, temp
mov BYTE PTR arrayOfLetters[0], al
这符合要求,但并没有改变数组......