· Начало · Статистика · WASM.RU · Noir.Ru ·

 WASM Phorum (Оффлайн - 24.11.2003) —› WASM.ASSEMBLER —› Научите правильно делить!!!

Посл.отвђт Сообщенiе


Дата: Июн 24, 2003 15:40:34

Как мне спользовать div??
Предположим у меня в еах 95192 число.
Как мне его поделить на 1024???
Если есть ещё какие нибудь способы деления покажите мне их!!!
Зарание спасибо!!!


Дата: Июн 24, 2003 16:35:51 · Поправил: Asterix

XOR EDX,EDX
mov eax, 95192
mov ecx, 1024
div ecx

результат в eax-целая часть,
в edx-дробная часть


Дата: Июн 24, 2003 16:39:31

;)

как аноним анониму скажу - переходи на вещественную арифметику.


Дата: Июн 24, 2003 16:43:01

При делении на степень двойки (1, 2, 4, 8, 16, ...) лучше использовать сдвиг shr. Он выполняется гораздо быстрее.

Например 5454 / 16:
16 = 2^4, значит надо сдвигать на 4 байта

mov eax, 5454
shr eax, 4

Еще в целях оптимизации деление заменяют умножением. Где-то есть исходник на Васме, как раз по этой теме, по-мойму называется Magic Number.


Дата: Июн 24, 2003 18:04:19

Ещё один вопрос!!!
Что мне нужно изменить что бы Caption
было вот твкая стока 23,567 c запятой!!!
filter db '%d',0
........
mov eax,23567
invoke wsprintf,caption,tit_k,eax


Дата: Июн 25, 2003 04:00:50

Аноним Июн 24, 2003 18:04:19
Обработать результирующую строку, т.е. caption, на предмет вставки в нее запятой.


Дата: Июн 25, 2003 16:44:26

[img]http://board.win32asmcommunity.net/avatar.php?userid=1717&datelin e=1034860112[/img]


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.067