我在试图让我的循环正常工作时遇到了一些麻烦。这是我需要做的
将 3 加到 i1 并将结果存储到 i1 将 i2 乘以 3 并将结果存储到 i2
如果 i1 大于 100 或如果以下两个都为真,则终止循环:循环的迭代次数超过 15 次,并且 i2 的值至少为 999999。
它还没有完成,但我想知道是否可以在循环中使用 2 CMP?这是我到目前为止所拥有的:
{
unsigned long i1;
unsigned long i2;
unsigned long i3;
unsigned long i4;
_asm
{
mov i1, 1
mov i2, 1
mov eax, i1
mov ebx, i2
mov ecx, 3
Start:
add eax, ecx
cmp eax, 100
jnz Start
jge Done
Start2:
imult ebx, ecx
cmp ebx, 999999
Done:
mov i1, eax
}
cout << "results are " << (unsigned long) i1 << ", "
<< (unsigned long) i2 << ", "
<< (unsigned long) i3 << ", "
<< (unsigned long) i4 << endl;
}