Нужно организовать оператор условия на асме, например Code: if(a>=34&&a<=100&&b==4) Используя маш. команду OR
cheater_man, тот код, что ты привел, это оператор условия (который может использоваться в цикле), но не цикл распиши подробнее задачу
Короче есть строчка кода на С Code: ..... if(a>=34&&a<=100) ..... Нужно этот же код на асму переписать с командой OR Без OR будет примерно так: Code: mov ax,a mov bx,34 cmp ax,bx mov ax,1 jge m1 sub ax,ax m1: test ax,ax jnz переходим к след условию a<=100 jmp if невыполнился .... А вот как сделать это с OR Нужно сначала сравнить эти выражения, а потом проверить OR'ом.Вообще так возможно(используем только регистры ax и bx)???
Code: mov ax,a cmp ax,34 JL невыполнился cmp ax,100 JG невыполнился наверное вот так как то. а что ты хочеш делать с OR непонятно)
Code: include 'win32ax.inc' .data a db 34d; b db 4d; .code OEP: mov ah,[a] ;ah = a mov al,[b] ;al = b cmp ah,34d ; jnae _exit ; exit if not above or equal (X < Y) cmp ah,100d; ja _exit ; exit if above (X > Y) cmp al,4d; jnz _exit ; exit if above (X != Y) invoke MessageBox,HWND_DESKTOP,"Число a , находится на отрезке [34,100] и b == 4",invoke GetCommandLine,MB_OK _exit: invoke ExitProcess,0 .end OEP Интересно бы было посмотреть на вариант с OR