Поиск:

Ответ в темуСоздание новой темы Создание опроса
> cmp, Работа с командой сравнения (cmp) 
V
    Опции темы
qw1mb0
Дата 19.2.2011, 11:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Непутевый студент
*


Профиль
Группа: Участник
Сообщений: 79
Регистрация: 24.4.2010
Где: Севастополь

Репутация: нет
Всего: нет



Добрый день уважаемые форумчане.
В программировании на ASM я полный ноль.
поэтому застрял вроде как на элементарном задании и хотел спросить у вас совета

мне надо найти min(B,C) и суммировать с другим числом.
Побродил по просторам интернета, но так и не особо понял как найти минимальное число среди двух. 
На сколько я понял тут нужно воспользоваться командой cmp

допустим 

Код

B   DB  7D
C   DB  4D

cmp B,C


а вот что делать дальше в недоумении.
Спасибо заранее за помощь 
PM MAIL ICQ Skype   Вверх
Игорь1024
Дата 19.2.2011, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 151
Регистрация: 11.5.2009
Где: Дальний Восток

Репутация: нет
Всего: нет



http://faydoc.tripod.com/cpu/index_j.htm
После этой cmp меняется состояние флагов, по ним эти команжы и "судят".
Они делают переход на метку при каком-либо условии.

Добавлено через 1 минуту и 26 секунд
Кстати напрямую их сравнивать нельзя.
Занесите один из операндов в регистр.

Добавлено через 4 минуты и 13 секунд
Например:
Код

mov al, [a]
cmp al, [b]
je equal; перейдём на условие: одинаковы
jne unequal; перейдём на условий: неодинаковы и.т.д
a db 0
b db 0


Добавлено через 4 минуты и 35 секунд
Это для FASM'а.
--------------------
The God is real,unless he is declared as integer.
PM MAIL   Вверх
qw1mb0
Дата 19.2.2011, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Непутевый студент
*


Профиль
Группа: Участник
Сообщений: 79
Регистрация: 24.4.2010
Где: Севастополь

Репутация: нет
Всего: нет



Мне бы для TASM 

не мог бы ты привести пример, как при сравнении двух чисел, найти из них наименьшее и им уже руководствоваться?

PM MAIL ICQ Skype   Вверх
hawk3500
Дата 19.2.2011, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 6.2.2009

Репутация: нет
Всего: 2



Код

xor ecx,ecx
mov eax,B
cmp eax,C
jb  METKA1
mov ecx,C
jmp METK2
METKA1:
mov ecx,B
METKA2:


после этого в ecx будет наибольшее из двух чисел.
--------------------
воин dzen'a
PM MAIL   Вверх
iff
Дата 19.2.2011, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Администратор
**


Профиль
Группа: Участник
Сообщений: 949
Регистрация: 23.3.2007

Репутация: 4
Всего: 16



Цитата(qw1mb0 @  19.2.2011,  14:20 Найти цитируемый пост)
не мог бы ты привести пример, как при сравнении двух чисел, найти из них наименьшее и им уже руководствоваться?

Для знаковых  (для беззнаковых немного по-другому) чисел рамерностью слово:
Код

   ...

a dw -100
b dw 78
result dw ?
   ...

;push ax
mov ax, a
cmp ax, b
jle cont1
mov ax, b
mov result, ax
;pop ax



--------------------
DOS... Синей пеленой экран заполнил чистый DOS 
Мышь... Стала вдруг квадратной, потеряла форму мышь... 
Я разбил окно, девяностопятое мастдайное окно, 
И поставил DOS, и тогда увидел: Это счастье, — вот оно.  
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm для начинающих"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm для начинающих | Следующая тема »


 




[ Время генерации скрипта: 0.0415 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.