Арифметика с одним операндом


<br /> Nick Yk - Основные команды языка ASSEMBLER<br />

Основные команды языка ASSEMBLER

###  Команда INC #########################################################

 ### Увеличивает содержимое операнда на 1.  Операнд  считается  беззнаковым
 числом.

 ### Устанавливает в зависимости от результата  все  арифметические  флажки,
 за исключением флажка CF, состояние которого не изменяется.

 ### Форматы команды:
                                                       7                0
    +-------------------------+ l = 2-4 байта          +----------------+
    ¦ INC  Память             ¦ t = 15+ЕА тактов       ¦   1111111  w   ¦
    +-------------------------+                        ¦----------------¦
    +-------------------------+ l = 2 байта            ¦  mod  000  r/m ¦
    ¦ INC  Регистр            ¦ t = 3 такта            ¦----------------¦
    +-------------------------+                        ¦     dispL      ¦
     Можно  указывать  байт  и   слово.                +----------------¦
     При обращении к памяти необходимо                 ¦     dispH      ¦
     использовать   модификаторы  BYTE                 +----------------+
     (байт)  или   WORD  (слово),  без
     которых команда неоднозначна.
                                                       7                0
    +-------------------------+ l = 1 байт             +----------------+
    ¦ INC  Регистр            ¦ t = 2 такта            ¦   01000  reg   ¦
    +-------------------------+                        +----------------+
     Можно указывать только слово.

###  Команда DEC #########################################################

 ### Уменьшает  содержимое  операнда  на  1. Операнд  считается беззнаковым
 числом.

 ### Устанавливает в зависимости от  результата  все  арифметические флажки,
 за исключением флажка CF.

 ### Форматы команды:
                                                       7                0
    +-------------------------+ l = 2-4 байта          +----------------+
    ¦ DEC  Память             ¦ t = 15+ЕА тактов       ¦   1111111  w   ¦
    +-------------------------+                        ¦----------------¦
    +-------------------------+ l = 2 байта            ¦  mod  001  r/m ¦
    ¦ DEC  Регистр            ¦ t = 3 такта            ¦----------------¦
    +-------------------------+                        ¦     dispL      ¦
     Можно  указывать  байт  или слово.                +----------------¦
     При обращении к памяти необходимо                 ¦     dispH      ¦
     использовать   модификаторы  BYTE                 +----------------+
     (байт)   или   WORD (слово),  без
     которых команда неоднозначна.
                                                       7                0
    +-------------------------+ l = 1 байт             +----------------+
    ¦ DEC  Регистр            ¦ t = 2 такта            ¦   01001  reg   ¦
    +-------------------------+                        +----------------+
     Можно указывать только слово.

###  Команда NEG #########################################################

 ### Изменяет знак операнда образованием дополнительного кода. Если операнд
 равен нулю, его значение не изменяется.

 ### Команда  модифицирует  все  арифметические  флажки.  Флажок  CF всегда
 устанавливается в нулевое состояние, за исключением случая, когда  операнд
 равен нулю, - тогда CF = 0.

 ### Форматы команды:
                                                       7                0
    +-------------------------+ l = 2-4 байта          +----------------+
    ¦ NEG  Память             ¦ t = 16+ЕА тактов       ¦   1111011  w   ¦
    +-------------------------+                        ¦----------------¦
    +-------------------------+ l = 2 байта            ¦  mod  011  r/m ¦
    ¦ NEG  Регистр            ¦ t = 3 такта            ¦----------------¦
    +-------------------------+                        ¦     dispL      ¦
     Можно  указывать  байт  или слово.                +----------------¦
     При обращении к памяти необходимо                 ¦     dispH      ¦
     использовать   модификаторы  BYTE                 +----------------+
     (байт)   или   WORD (слово),  без
     которых команда неоднозначна.

[   ВЕРНУТЬСЯ К ОГЛАВЛЕНИЮ   ]
Сайт создан в системе uCoz