У меня есть этот код, я использую Visual Studio 2019. Компилятор выдает ошибку: Ошибка C2420 «меньше»: недопустимый символ в первом операнде
#include <iostream>
using namespace std;
int a, b, c, d, x;
int values[5]; // масив для збереження у(х)
void main() {
a = -6; b = 4; c = 8; d = 2;
__asm {
mov eax, offset values
push eax
mov cx, 5
start:
mov ax, 3
sub ax, cx
cwde
mov ebx, eax
mov eax, a
cmp ebx, 1
jl less // if х < 1, go to less
je equals //if х == 1, go to equals
// if х > 1:
imul eax // a^2
sub eax, ebx // a^2-x
cdq
mov ebx, c
idiv ebx // (a^2-x)/c
jmp result
less :
mov edx, 2
imul edx // a*2
imul ebx // a*2*x
add eax, 5 // a*2*x+5
jmp result
equals :
mov ebx, b
sub eax, ebx // a-b
cdq
mov ebx, d
idiv ebx // (a-b)/d
jmp result
result :
pop ebx
mov[ebx], eax
add ebx, 4
push ebx
loop start
}
for (int i = 0; i < 5; i++) {
cout << values[i] << endl;
}
system("pause");
}
Компилятор выдает ошибку из-за этой строки:
jl less
Без него код работает. Но мне нужна эта строка, как это исправить?