Архитектура микропроцессорной системы. Состав машинных команд и основы программирования микропроцессорной системы на ассемблере. Булатов В.Н. - 39 стр.

UptoLike

Составители: 

Здесь в разряде D9 указывают знаковый признак данных.
1) Если S=0, то dataбеззнаковый операнд, и длина его
соответствует: при W=0байт; при W=1слово.
2) Если S=1, то:
а) data длиной только в 1 байт;
б) D7знак; число воспринимается в дополнительном коде;
в) если dstслово, то data расширяется до слова (знак
переносится в D15).
Все эти тонкости, на первый взгляд, являются запутанными, но если
отталкиваться от четкого представления, как в цифровой электронике
представляются положительные и отрицательные числа со знаком и без
знака, и как реализуются операции сложения и вычитания (последняя
заменяется сложением с дополнительным кодом вычитаемого), то все
встанет на свои места.
В таблице 5 представлены команды в ассемблере и комментарии
для всех типов команд. Коды типов команд приводятся не по порядку, а
по смыслу, связанному с назначением групп родственных команд. Все
команды АЛУ, приведенные в таблице 5, воздействуют на флаги.
Таблица 5 —Команды АЛУ
п/п
Вид
команд
ы
Ассембле
р
Комментарий для команд АЛУ, содержащих:
а) dst и src (тип 1) б) dst и data (тип2)
1 000 ADD dst:=<dst>+<src> dst:=<dst>+data
2 010 ADC dst:=<dst>+<src>+<cf> dst:=<dst>+data+<cf>
3 101 SUB dst:=<dst>-<src> dst:=<dst>-data
4 011 SBB dst:=<dst>-<src>-<cf> dst:=<dst>-data-<cf>
dst:=<dst><src> dst:=<dst>data
5 001 OR
(дизъюнкцияИЛИ)
dst:=<dst><src> dst:=<dst>data
6 100 AND
(конъюнкцияИ)
dst:=<dst>+<src> dst:=<dst>+data
7 110 XOR
(сложение по модулю 2)
<dst>-<src> <dst>-data
8 111 CMP
(компарациясравнение)
Рассмотрим команды АЛУ в порядке номеров пунктов таблицы 5.
6.1 Команды сложения
а) Сложение содержимым dst и src; результатв dst.
Ассемблер с комментариями (примеры):
ADD AX,BX ; AX:=<AX>+<BX>
ADD SI,[1CDO] ; SI:=<SI>+<M
1СD0
>
в) Сложение содержимого dst и данных, указанных в команде.
Ассемблер c комментариями (примеры):
39
Здесь в разряде D9 указывают знаковый признак данных.
     1) Если S=0, то data — беззнаковый операнд, и длина его
соответствует: при W=0 —байт; при W=1 — слово.
     2) Если S=1, то:
        а) data длиной только в 1 байт;
        б) D7 —знак; число воспринимается в дополнительном коде;
        в) если dst — слово, то data расширяется до слова (знак
   переносится в D15).
     Все эти тонкости, на первый взгляд, являются запутанными, но если
отталкиваться от четкого представления, как в цифровой электронике
представляются положительные и отрицательные числа со знаком и без
знака, и как реализуются операции сложения и вычитания (последняя
заменяется сложением с дополнительным кодом вычитаемого), то все
встанет на свои места.
     В таблице 5 представлены команды в ассемблере и комментарии
для всех типов команд. Коды типов команд приводятся не по порядку, а
по смыслу, связанному с назначением групп родственных команд. Все
команды АЛУ, приведенные в таблице 5, воздействуют на флаги.

   Таблица 5 —Команды АЛУ
          Вид
    №          Ассембле     Комментарий для команд АЛУ, содержащих:
        команд
    п/п            р      а) dst и src (тип 1)         б) dst и data (тип2)
           ы
     1    000    ADD       dst:=+            dst:=+data
     2    010    ADC    dst:=++       dst:=+data+
     3    101    SUB       dst:=-            dst:=-data
     4    011    SBB    dst:=--        dst:=-data-
                           dst:=            dst:=∨data
     5    001     OR
                                         (дизъюнкция —ИЛИ)
                           dst:=            dst:=∧data
     6    100    AND
                                           (конъюнкция —И)
                           dst:=+            dst:=+data
     7    110    XOR
                                        (сложение по модулю 2)
                              -                 -data
     8    111    CMP
                                     (компарация — сравнение)

     Рассмотрим команды АЛУ в порядке номеров пунктов таблицы 5.

6.1 Команды сложения
     а) Сложение содержимым dst и src; результат — в dst.
Ассемблер с комментариями (примеры):
     ADD AX,BX      ; AX:=+
     ADD SI,[1CDO] ; SI:=+
     в) Сложение содержимого dst и данных, указанных в команде.
     Ассемблер c комментариями (примеры):
                                                                              39