mul ассемблер



Автор Александр Бойко задал вопрос в разделе Другие языки и технологии

ассемблер (умножение) и получил лучший ответ

Ответ от Ёерж...[гуру]
Команду mul вы неправильно написали. Правило первое - первый множитель всегда должен быть в регистре ах. Второй, на который умножаем - либо в bx, либо в dx (кажется можно и в сх) .
Умножение производится командой - mul bx. Если 2-й множитель в dx, то соответственно mul dx.
Но это еще не все тонкости. Описывать.. долго и муторно. Вот ссылка, внимательно прочтите, думаю все станет понятно: ссылка
НИЧЕГО НЕ ПРОИЗОЙДЕТ. Значения регистров останутся теми же. Более того, до этого даже не дойдет. Компилятор выдаст ошибку о некорректной команде.

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: ассемблер (умножение)
спросили в Ассемблер
Проблема знака при умножении/делении (ассемблер) , MUL, IMUL, DIV, IDIV
В предыдущем ответе ссылка не рассматривает результат деления. Надо иметь в виду, что при делении
подробнее...
спросили в Ассемблер
Ассемблер сдвиги. Как умножить любое число на 13 с помощью сдвигов в ассемблере
13 = (2 + 1) * 4 + 1 - меньше сдвигов (3 против 5), хотя это актуально только для процессоров,
подробнее...

Генератор случайных чисел на ассемблере
proc WRandom
push edx ecx
mov eax,[random_seed]
xor edx,edx
mov ecx,127773подробнее...
спросили в MOL
1 чем отличаются команды MUL и IMUL 2 какую команду расширения нужно использовать при делении на 16-разрядное число
mul - это беззнаковое умножение
imul - знаковое
Если твой ассемблер 16-разрядный, а
подробнее...
спросили в Dirt 4 Randomness
Assembler
Вопрос 1
Вот макрос, генерирующий случайные числа от 0 до n-1. Алгоритм взят из модуля System
подробнее...
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*