logo

Система команд x86
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

DAS

Десятичная коррекция AL после вычитания

Влияние команды на флаги и форматы команды:

OF

DF

IF

TF

SF

ZF

AF

PF

CF

?

*

*

*

*

*

 

Код

Команда

Описание

Проц.

Пример

2F

DAS

Десятичная коррекция AL после вычитания

8086

das

Операция:

tmpCF = 0;

tmpAL = AL;

IF ( ( (tmpAL AND 0x0F) > 0x09 ) or EFLAGS.AF = 1 )

   THEN

      EFLAGS.AF = 1;

      AL = AL - 0x06;

      tmpCF = (AL < 0) OR EFLAGS.CF;

   ELSE EFLAGS.AF = 0;

FI;

IF ( (tmpAL > 0x99) or EFLAGS.CF = 1 )

   THEN

      AL = AL - 0x60;

      tmpCF = 1;

FI;

EFLAGS.CF = tmpCF;

EFLAGS.OF = 0; (* недокументированнная операция *)

Описание:

Команда DAS предназначена для выполнения после команд вычитания SUB и SBB, которые оставляют однобайтный результат в регистре AL. Операнды команды вычитания должны состоять из двух упакованных BCD-цифр. Команда DAS корректирует регистр AL так, чтобы он содержал корректный упакованный результат из двух BCD-цифр.

Особые ситуации защищенного режима:


Нет.

Особые ситуации режима реальной адресации:


Нет.

Особые ситуации режима V86:


Нет.

Входит в группу команд: Базовая система команд CPU



Все права защищены © 1997-2011 Перепечатка возможна только по согласованию с владельцем авторских прав. admin@club155.ru

Яндекс.Метрика               Сервер радиолюбителей России - схемы, документация,

 соревнования, дипломы, программы, форумы и многое другое!   схемы новости электроники