Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 44.Ассемблер.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
55.65 Кб
Скачать

2.6 Команды деления

Команды деления — одноадресные, указывается только SRC(делитель); DST(де­лимое) задается строго определенным образом.

  • DIVsrc— деление (divide— делить). Выполняет деление беззнакового дели­мого (16 или 32 бит) на беззнаковый делитель (8 или 16 бит). Команда одно­ адресная — указывается только SRC(делитель);DST(делимое) берется стро­го определенным образом. SRC может быть представлен оператором типа г или m(і — нельзя). Если формат SRC— байт, то делимое (слово) находится в АХ, частное от деления (байт) будет вAL, остаток от деления (байт) помещается в АН; если формат SRC— слово, то делимое (двойное слово) заносится в DX;AX(старшие два байта в DX, младшие — в АХ), частное от деления (слово) в АХ, остаток от деления (байт) сохраняется в DL Команда DIV формирует флаг IF(IF- 1 при делении на 0 и при делении большого числа на очень ма­лое, если частное вне диапазона); воздействует на флаги AF,CF,OF,PF,SF,ZF (флаги не определены).

  • IDIVsrc— деление целых чисел со знаком (integerdivide— деление целых чи­сел со знаком). Выполняет деление знакового делимого (16 или 32 бит) на знаковый делитель (8 или 16^ бит). Команда одноадресная — указывается только SRC(делитель);DST(делимое) берется строго определенным образом. SRC может быть представлен оператором типа г или m(і — нельзя). Если формат SRC— байт, то делимое (слово) — в АХ, частное от деления (байт) бу­ дет в AL, остаток от деления (байт) — в АН; если формат SRC— слово, то дели­ мое (двойное слово) попадает в DX:AX(старшие два байта в DX, младшие в АХ), частное от деления (слово) — в АХ, остаток от деления (байт) — в DL Команда IDIV формирует флаг IF(IF= 1 при делении на 0 и при делении большого числа на очень малое, если частное вне диапазона), воздействует на флаги AF,CF,OF,PF,SF,ZF(флаги не определены).

2.7 Логические команды

Это двухадресные команды, они используются для сравнения, сброса и установ­ки битов операнда в операциях преобразования кодов и при выполнении ариф­метических операции в кодах ASCII.

  • ORdst,src— логическое сложение (or— или). Команда выполняет поразряд­ную дизъюнкцию, (логическое сложение — операцию ИЛИ) битов двух опе­рандов; устанавливает 1 в тех битах операнда dst, в которых была 1 хотя бы у одного из исходных операндов. Операнды dst и src должны иметь одинако­вый формат (оба или байт, или слово) и могут быть: src типа г,m,i; dst типа г, m(невозможно rsegm и нельзя, чтобы оба типа были т). Команда OR сбрасы­вает OF- 0 и CF' 0; формирует PF,SF,ZF; значение AF не определено.

  • ANDdst,src— логическое умножение (and— и). Команда выполняет пораз­рядную конъюнкцию (логическое умножение — операцию И) битов двух опе­рандов; устанавливает 1 в тех битах операнда dst, в которых у обоих исходных операндов были 1. Операнды dst и src должны иметь одинаковый формат (оба или байт или слово) и могут быть: src типа г,m,i; dst типа г,m(невоз­можно rsegm и нельзя, чтобы оба типа были т). Флаги: OF= 0 и CF= 0; ко­манда формирует PF,SF,ZF; значение AF не определено.