Автор ыштсуьшч задал вопрос в разделе Другие языки и технологии
как в ассемблере сравнивать числа и получил лучший ответ
Ответ от Counter[гуру]
>В любом случае числа необходимо поместить в регистры процессора
не правда.
>Для сравнения чисел необходимо вычесть из одного другое а дальше смотреть на флаг результата
тоже не обязательно
tempVar dd 3
...
cmp dword [tempVar],eax
отлично сработает.
положительно ли число в eax
push ebx
xor ebx,ebx ;обнул
cmp eax, ebx
pop ebx
jg somewhere
Ответ от JaM[гуру]
В любом случае числа необходимо поместить в регистры процессора. Для сравнения чисел необходимо вычесть из одного другое а дальше смотреть на флаг результата
В любом случае числа необходимо поместить в регистры процессора. Для сравнения чисел необходимо вычесть из одного другое а дальше смотреть на флаг результата
Ответ от Капитан Гугл[гуру]
Результаты действий отражаются на флаговом регистре. Соответствующие флаги выставляются в 0 или 1. Например, ZF - флаг нуля, если результат последней операции 0, он будет равен 1. Использовать флаги можно с помощью операций условного перехода, например JZ метка - переход на метку, если последняя операция дала 0. Дальше учебник читай.
Результаты действий отражаются на флаговом регистре. Соответствующие флаги выставляются в 0 или 1. Например, ZF - флаг нуля, если результат последней операции 0, он будет равен 1. Использовать флаги можно с помощью операций условного перехода, например JZ метка - переход на метку, если последняя операция дала 0. Дальше учебник читай.
Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: как в ассемблере сравнивать числа
assembler tasm - в чем ошибка?
Код программы очень большой, поэтому привожу только фрагменты с ошибками.
...
подробнее...
Ассемблер. Команда cmp.
искать нужно полную документацию по intel assembler, например. вот кусок древней:
CMP
подробнее...
ASSEMBLER: как вывести символ в графическом режиме
Как то так
---------------
а если так
text db 'Assembler',0
mov si,offset
подробнее...
Нужна программа на Ассемблере [Assembler, SOS =D]
1ая. SASM IDE (NASM + макросы для вывода), на базе Linux, но с миним. переделками заработает в
подробнее...
Реализовать на ассемблере циклы For и While.
for:
mov cx,i
m1: тело цикла
loop m1
while:
L2: cmp ax,0
jle L1
подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:
Вывод значения регистра на экран. ассемблер
Прежде всего, необходимо преобразовать число в строку.
А вам могу дать (не самую лучшую)
подробнее...
спросили в Ассемблер
Ассемблер сдвиги. Как умножить любое число на 13 с помощью сдвигов в ассемблере
13 = (2 + 1) * 4 + 1 - меньше сдвигов (3 против 5), хотя это актуально только для процессоров,
подробнее...
Ассемблер сдвиги. Как умножить любое число на 13 с помощью сдвигов в ассемблере
13 = (2 + 1) * 4 + 1 - меньше сдвигов (3 против 5), хотя это актуально только для процессоров,
подробнее...
спросили в Ассемблер
Условие на ассемблере if
там не if только по флагам
Slava m
Искусственный Интеллект
(126516)
подробнее...
Условие на ассемблере if
там не if только по флагам
Slava m
Искусственный Интеллект
(126516)
подробнее...
спросили в Ассемблер
ассемблер
jg,jge,jl,jle - инструкции для операций перехода по результатом сравнения ЗНАКОВЫХ значений !
подробнее...
ассемблер
jg,jge,jl,jle - инструкции для операций перехода по результатом сравнения ЗНАКОВЫХ значений !
подробнее...
Assembler: введена строка с клавиатуры(макс. 15 символов) с пробелами. Вывести последние символы каждлго слова
.model small
.data
mes1 db \'Vvedite stroky s probelami:\'
crlf db 13,10,\'$\'
подробнее...