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

UptoLike

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

Из обоих форматов видно, что пересылка из RS или в RS
отличается только первым байтом КОП. Рассмотрим пример.
Пример 5 —Необходимо выполнить действие: M
3B8D0
:=<AL>.
Ответ: распишем последовательность действий:
1) в любой регистр (кроме AX) загрузим данные для DS; пусть это
будет CX: CX:=3B00;
2) перешлем: DS:= <CX>;
3) перешлем: M
DS:EA
= M
3B00:8D0
= M
3B8D0
= <AL>
.
И пусть эта последовательность команд будет расположена с адреса
0100 (адресв H-коде).
Адрес
Машинный код
Ассемблер Комментарий
0100
0101
0102
0103
C7
C1
00
3B
MOV CX,3B00 В регистр CX
загрузить
данные 3B00
0104
0105
8E
D9
MOV DS,CX В сегментный регистр DS
переслать содержимое CX
0106
0107
0108
0109
88
06
D0
08
MOV [08D0],AL Загрузить в ячейку памяти
с адресом DS:08D0=3B8D0
содержимое AL
КОП только второй команды с сегментным регистром. Собственно
говоря, типы первой и третьей команды уже рассматривались, поэтому
составим только его вторую часть (2-й байт). Из архитектуры МП
(рисунок 3) определяем номер DS: DS= 11
2
.
Переводим вторую половину КОП в H-код: D9; а весь КОП=8E D9.
29
     Из обоих форматов видно, что пересылка из RS или в RS
отличается только первым байтом КОП. Рассмотрим пример.
     Пример 5 —Необходимо выполнить действие: M3B8D0:=.
Ответ: распишем последовательность действий:
     1) в любой регистр (кроме AX) загрузим данные для DS; пусть это
будет CX: CX:=3B00;
     2) перешлем: DS:= ;
     3) перешлем: MDS:EA = M3B00:8D0 = M3B8D0 = .
И пусть эта последовательность команд будет расположена с адреса
0100 (адрес — в H-коде).

 Адрес   Машинный код      Ассемблер             Комментарий
 0100        C7           MOV CX,3B00            В регистр CX
  0101       C1                                    загрузить
 0102        00                                  данные 3B00
 0103        3B
 0104        8E            MOV DS,CX        В сегментный регистр DS
 0105        D9                            переслать содержимое CX
 0106        88           MOV [08D0],AL    Загрузить в ячейку памяти
 0107        06                            с адресом DS:08D0=3B8D0
 0108        D0                                  содержимое AL
 0109        08

      КОП только второй команды с сегментным регистром. Собственно
говоря, типы первой и третьей команды уже рассматривались, поэтому
составим только его вторую часть (2-й байт). Из архитектуры МП
(рисунок 3) определяем номер DS: № DS= 112.




Переводим вторую половину КОП в H-код: D9; а весь КОП=8E D9.




                                                                       29