Программирование на JAVA

В подобных ситуациях используются разные команды. Команда, приведенная на рисунке первой, умножает 32 разрядные сомножители, результат получается тоже 32 разрядный.  Исход­ный операнд может находиться либо в регистре, либо в памяти. В случае 64-раз­рядного результата команда  в единственном операнде команд MUL и IMUL указывается множитель, множимое уже должно находиться в AL или EAX соответственно. Рассмотрим следующую команду:

MUL                   MULTB

Так как поле MULTB определено как байт (DB), то операция предполагает умножение содержимого AL на значение байта из поля MULTB.

Если поле MULTD определено по терминологии Intel как двойное слово (DD) или слово I-32, то операция предполагает умножение содержимого EAX на значение слова из поля MULTD.

Умножение байта на байт. Множимое уже находится в регистре AL, а множитель - в байте памяти или в однобайтовом регистре. После умножения произведение находится в регистре AX. Операция игнорирует и стирает любые данные, которые находились в регистре АН. До                                      АН                                         AL                                          После                                                  AX


<< назад вперед >>