|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.12.2017, 21:32 | #1 |
Новичок
Джуниор
Регистрация: 16.04.2017
Сообщений: 1
|
Сравнение вещественных чисел
Будто бы простая задача: сравнить два действительных числа в стеке, то, которое является меньшим - вытолкнуть. Но почему-то работает некорректно - между 6 и 9 выберет 6 как больше, но между 6 и 4 выберет 4 большим
TASM Код:
|
16.12.2017, 23:47 | #2 |
(aka Jin X) !RTFM!
Форумчанин
Регистрация: 14.12.2014
Сообщений: 295
|
fcom записывает результат не во флаги CPU, а в слово статуса FPU. Его надо сначала извлечь:
Код:
Код:
Делаю лабы на Asm/Delphi/C++/Python/VBA(Excel): asmlabs.ru
|
17.12.2017, 04:06 | #3 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
Привет, 7in!
Вещественные числа между собой вполне можно и при помощи целочисленных CMP, TEST, SUB сравнивать, сперва по знаку, потом по модулю. Первыми битами идет степень, если степени одинаковы, то сравниваются мантиссы. А если не по модулю, то придется запомнить, что положительные вещественные сравниваются аналогично целочисленным, а у отрицательных сравнение идет в "обратную сторону"... Последний раз редактировалось Mikl___; 17.12.2017 в 04:09. |
19.12.2017, 17:32 | #4 |
(aka Jin X) !RTFM!
Форумчанин
Регистрация: 14.12.2014
Сообщений: 295
|
Привет, Mikl___!
Если числа находятся в регистрах, то боюсь, cmp, test, sub тут не помогут Да и даже при сравнении чисел в памяти – какой смысл разводить эту "бодягу"? С несколькими тормознутыми jcc-инструкциями и пр.
Делаю лабы на Asm/Delphi/C++/Python/VBA(Excel): asmlabs.ru
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Дан массив,состоящий N (N>1) вещественных чисел. Найти среднеарифметическое значение чисел массива. | nikola_orsha | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 11.10.2016 13:05 |
Дана последовательность из 100 вещественных чисел. Определить , со скольких чётных чисел она начинается | SnS | Lazarus, Free Pascal, CodeTyphon | 2 | 22.09.2013 18:48 |
Сравнение вещественных чисел. | _PROGRAMM_ | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 12 | 20.09.2012 22:47 |
Дана последовательность вещественных чисел. каждая пара чисел задает границы отрезка. Найти количество целых чисел на отрезках | 'studentka' | Помощь студентам | 6 | 30.11.2011 18:35 |
Дано n вещественных чисел а1, а2,…,аn. Определите число соседств двух чисел разного знака (Паскаль) | bambam | Помощь студентам | 1 | 29.11.2011 11:36 |