Архитектура микропроцессоров и их программирование. Карягин А.П. - 21 стр.

UptoLike

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

21
-r
AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=1D60 ES=1D60 SS=1D60 CS=1D60 IP=0100 NV UP EI PL NZ NA PO NC
1D60:0100 B80500 MOV AX,0005
-t
AX=0005 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=1D60 ES=1D60 SS=1D60 CS=1D60 IP=0103 NV UP EI PL NZ NA PO NC
1D60:0103 BA0900 MOV DX,0009
-t
AX=0005 BX=0000 CX=0000 DX=0009 SP=FFEE BP=0000 SI=0000 DI=0000
DS=1D60 ES=1D60 SS=1D60 CS=1D60 IP=0106 NV UP EI PL NZ NA PO NC
1D60:0106 01D0 ADD AX,DX
-t
AX=000E BX=0000 CX=0000 DX=0009 SP=FFEE BP=0000 SI=0000 DI=000
DS=1D60 ES=1D60 SS=1D60 CS=1D60 IP=0108 NV UP EI PL NZ NA PO NC
Запись в отчёте:
mov ax,5 ; загрузить в регистр АХ число 5
mov dx,9 ; загрузить в регистр DХ число 9
add ax,dx ; сложить содержимое AX и DX, результат=Eh и помещает-
ся в регистр АХ, значения битов флагового регистра
остаются неизменными
1.3.6 Команды U и G отладчика на примере ввода данных с клавиатуры.
Введите A cs:100. Наберите программу:
100 mov ah,3f
102 mov bx,00
105 mov cx,0c
108 mov dx,10f
10b int 21
10d jmp 100
10f db ' '
Нажмите ENTER. Выполните команду U 100,10f. Выполните программу
до шага 10b и введите G 10D, введите данные и проверьте содержимое с адреса
10f. Напишите комментарий к каждой строке.
1.3.7 Определите размер памяти, используя прерывание BIOS int 12h,
для чего необходимо ввести команду "-e cs:100 cd 12 cb <enter>" и выполнить
программу по шагам до команды IRET( в AX-размер памяти).
1.3.8 Определите адрес подпрограммы обслуживания вектора прерыва-
ния n (по указанию преподавателя).
1.3.9 Составьте программу на Ассемблере или на другом языке по ука-
занию преподавателя, получите EXE-модуль и выполните его по шагам с по-
мощью отладчика DEBUG.
-r
AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=1D60 ES=1D60 SS=1D60 CS=1D60 IP=0100 NV UP EI PL NZ NA PO NC
1D60:0100 B80500        MOV AX,0005
-t
AX=0005 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=1D60 ES=1D60 SS=1D60 CS=1D60 IP=0103 NV UP EI PL NZ NA PO NC
1D60:0103 BA0900         MOV DX,0009
-t
AX=0005 BX=0000 CX=0000 DX=0009 SP=FFEE BP=0000 SI=0000 DI=0000
DS=1D60 ES=1D60 SS=1D60 CS=1D60 IP=0106 NV UP EI PL NZ NA PO NC
1D60:0106 01D0         ADD AX,DX
-t
AX=000E BX=0000 CX=0000 DX=0009 SP=FFEE BP=0000 SI=0000 DI=000
DS=1D60 ES=1D60 SS=1D60 CS=1D60 IP=0108 NV UP EI PL NZ NA PO NC
      Запись в отчёте:
      mov ax,5 ; загрузить в регистр АХ число 5
      mov dx,9 ; загрузить в регистр DХ число 9
      add ax,dx ; сложить содержимое AX и DX, результат=Eh и помещает-
                   ся в регистр АХ, значения битов флагового регистра
                   остаются неизменными

       1.3.6 Команды U и G отладчика на примере ввода данных с клавиатуры.
Введите A cs:100. Наберите программу:
   100 mov ah,3f
   102 mov bx,00
   105 mov cx,0c
   108 mov dx,10f
   10b int 21
   10d jmp 100
   10f db ' '
       Нажмите ENTER. Выполните команду U 100,10f. Выполните программу
до шага 10b и введите G 10D, введите данные и проверьте содержимое с адреса
10f. Напишите комментарий к каждой строке.
       1.3.7 Определите размер памяти, используя прерывание BIOS int 12h,
для чего необходимо ввести команду "-e cs:100 cd 12 cb " и выполнить
программу по шагам до команды IRET( в AX-размер памяти).
       1.3.8 Определите адрес подпрограммы обслуживания вектора прерыва-
ния n (по указанию преподавателя).
       1.3.9 Составьте программу на Ассемблере или на другом языке по ука-
занию преподавателя, получите EXE-модуль и выполните его по шагам с по-
мощью отладчика DEBUG.




                                                                         21