АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Команды двоичного умножения и деления

Читайте также:
  1. В командном спарринге могут принимать участие только команды, участвовавшие в командных туль.
  2. Виды стоимости и цели их определения.
  3. Внутренние команды MS-DOS размещены в файле
  4. Вывод сооб-я команды в конец файла с сохр-ем ранее записан инф-и (дозапись) или созд-ем нов файла осущ-ся
  5. Гигиеническое значение физико-химических свойств тканей, методы определения.
  6. Д). Команды удаления каталога RD и DELTREE
  7. Даче команды для выемок.
  8. Действия над событиями. Теоремы сложения и умножения вероятностей.
  9. Документальное оформление и учет поступления материалов. Учет транспортно-заготовительных расходов и порядок их распределения.
  10. Значение, особенности и виды групповой работы. Особенности работы с местными сообществами. Основные проблемы создания команды при работе с местными сообществами.
  11. игроков баскетбольной команды
  12. Интервальные оценки параметров распределения.

Команды, выполняющие двоичное умножение и деление для рассматриваемого микропроцессора, приведены в табл. 6.

Таблица 6

Название Мнемоника и формат Описание
Умножение со знаком   Умножение без знака imul src mul src Операнды – байты (ax)← (al)×(src) Операнды – слова (dx:ax)← (ax)×(src) произведение со знаком аналогично команде imul,но операнды и произведение без знака

 

Продолжение таблицы 6

 

Название Мнемоника и формат Описание
Разделить со знаком     Разделить без знака idiv src div src   Делитель – байт (al)← частное (ax)/(src) (ah))← остаток (ax)/(src) Делитель – слово (ax)← частное (dx:ax)/(src) (dx)← остаток (dx:ax)/(src) Частное и остаток имеют знаки. Знак остатка равен знаку делимого. Аналогично команде idiv,но операнды, частное и остаток без знака

 

Команды умножения осуществляют умножение байт с получением результата-слова и умножения слов, давая в результате двойное слово. При этом, умножая байты необходимо использовать указатель типа byte ptr после команды mul (imul), а при умножении слов – word ptr. Команды imul и mul устанавливают флаги OF и CF в состояние ”1”, если для результата требуется два байта или два слова одновременно. Проверяя состояние этих флажков, можно определить, размещается произведение в одном байте или слове. Остальные Флажки могут модифицироваться, но их состояния не определены, т. е. не предсказуемы. В качестве src может быть общий регистр или ячейка памяти с любым режимом адресации, но не может быть непосредственный операнд. Отметим, что в обоих командах imul и mul переполнение невозможно, так как для произведения отводится достаточное место. Например: пусть в al находится чело 0В4h, которое можно интерпретировать как знаковое -76 или беззнаковое 180 . В регистре BL поместим число 11h, которое соответствует 17 Тогда, применив команду imul bl, получим (ax)= 0FAF4h= –1292 и (CF)=(OF)= 1, так как результат велик для 8 бит. Если применить команду mul bl, то получим (ax)=0BF4h =3060 и (CF)=(OF)= 1.

Команды деления idiv и div дают неопределенное состояние флагов и, как команды умножения, не допускают непосредственных операндов, т.е. делитель должен находиться в одном из РОН или ячейки памяти. В команде idiv знакового деления знак частного, определяется по алгебраическому правилу, а остатку присваивается знак делимого. Отметим, что для получения правильного результата, операция деления накладывает определенные ограничения на размерность, делимого и делителя, а именно: если делитель слово, то делимое должно иметь формат двойного слова; если делитель байт, то делимое слово. В некоторых случаях длина частного может превысить длину аккумулятора (ax или al). В этом случае МП генерирует внутреннее прерывание типа 0 и переходит к соответствующей процедуре обработки этого прерывания. Аналогичная ситуация возникает если делитель равен нулю.


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.)