Лабораторная работа 2. Описание простых типов данных. Отладчик TURBO DEBUGGER (TD)
Цель работы: изучить правила описания простых типов данных и основные моменты работы с отладчиком TD.
Задания.
1. Наберите исходный текст программы согласно варианту:
Data | segment | |
Mess | DB | ‘ Директивы данных $’ |
Pa | DB | |
Pb | DW | |
Pc | DD | данные из вариантов заданий |
Mas | DB | |
Pole | DB | |
Adr | DW | |
Adr_full | DD | |
Data | ends | |
code | segment | |
assume | cs:code, ds:data | |
start: | ||
mov | AX, data | |
mov | DS, AX | |
mov | DX, offset mess | |
mov | AH, 9h | |
int | 21h | |
mov | AX, 4c00h | |
int | 21h | |
code | ends | |
end | start |
Получив загрузочный модуль, запустите его в Турбо отладчике (TD). В окне DUMP просмотреть сегмент данных, найти все переменные, заданные в вашем варианте и объяснить местоположение и занимаемый объем этой переменной. Вы ответственны не только за описание переменной в сегменте данных, но и за каждый байт памяти.
2. Набрать в кодовом сегменте команды:
mov | AL, | Pa | ; AL =? |
mov | BX, | Pb | ; BX =? |
mov | BL, | byte ptr Pb | ; BL =? |
mov | DX, | word ptr Pc | ; DX =? |
mov | CX, | word ptr Pc+2 | ; CX =? |
mov | DL, | byte ptr Pc | ; DL =? |
mov | DH, | byte ptr Pc+1 | ; DH =? |
В отладчике посмотреть результат выполнения этих команд
|
|
Варианты заданий:
1. | Pa | db | 73H | 8. | Pa | db | 5BH |
Pb | dw | 0AE21H | Pb | dw | 0BA21H | ||
Pc | dd | 38EC76A4H | Pc | dd | 0FA4A32BCH | ||
Mas | db | 10 dup(1),2,3 | Mas | db | 4,5,6,5 dup(0) | ||
Pole | db | 5 dup(?) | Pole | db | 6 dup(?) | ||
Adr | dw | Pc | Adr | dw | Pc | ||
Adr_full | dd | Pc | Adr_full | dd | Pc | ||
2. | Pa | db | 67H | 9. | Pa | db | 4AH |
Pb | dw | 4AEFH | Pb | dw | 0DEFCH | ||
Pc | dd | 12DC4567H | Pc | dd | 81ADFF06H | ||
Mas | db | 5,6,7,8 | Mas | db | 5 dup(1),2,3,3 dup(4) | ||
Pole | db | 6 dup(0) | Pole | db | 6 dup(“ “) | ||
Adr | dw | Pc | Adr | dw | Pc | ||
Adr_full | dd | Pc | Adr_full | dd | Pc | ||
3. | Pa | db | 4DH | 10. | Pa | db | 7FH |
Pb | dw | 0ED56H | Pb | dw | 0ACDEH | ||
Pc | dd | 32AF8DD7H | Pc | dd | 10B0A488H | ||
Mas | db | 4,3,5, 4 dup(0) | Mas | db | 3 dup(0),1,2,3, 4 dup(0) | ||
Pole | db | 6 dup(?) | Pole | db | 5 dup(32) | ||
Adr | dw | Pc | Adr | dw | Pc | ||
Adr_full | dd | Pc | Adr_full | dd | Pc | ||
4. | Pa | db | 5DH | 11. | Pa | db | 0BCH |
Pb | dw | 0A1A3H | Pb | dw | 903FH | ||
Pc | dd | 3 dup(4),5,6 | Pc | dd | 6CAA3E41H | ||
Mas | db | 4,3,5, 4 dup(0) | Mas | db | 1,2,3, 4 dup(4) | ||
Pole | db | 5 dup(?) | Pole | db | 5 dup(?) | ||
Adr | dw | Pc | Adr | dw | Pc | ||
Adr_full | dd | Pc | Adr_full | dd | Pc | ||
5. | Pa | db | 62h | 12. | Pa | db | 0FBH |
Pb | dw | 7ED1H | Pb | dw | 54ADH | ||
Pc | dd | 0EE45DA31H | Pc | dd | 0E04365FAH | ||
Mas | db | 1,2, 6 dup(3),0 | Mas | db | 3 dup(0), 4 dup(1),2,3 | ||
Pole | db | 5 dup(0) | Pole | db | 5 dup(?) | ||
Adr | dw | Pc | Adr | dw | Pc | ||
Adr_full | dd | Pc | Adr_full | dd | Pc | ||
6. | Pa | db | 0FFH | 13. | Pa | db | 11H |
Pb | dw | 4ADEH | Pb | dw | 4D2DH | ||
Pc | dd | 0C23891F5H | Pc | dd | 98ADF156H | ||
Mas | db | 4 dup(0),1,2,3 | Mas | db | 5 dup(0),1,2,3 | ||
Pole | db | 3 dup(‘ ‘) | Pole | db | 3 dup(?) | ||
Adr | dw | Pc | Adr | dw | Pc | ||
Adr_full | dd | Pc | Adr_full | dd | Pc | ||
7. | Pa | db | 0AEH | 14. | Pa | db | 10H |
Pb | dw | 63BCH | Pb | dw | 1A2DH | ||
Pc | dd | 63BCDEF3H | Pc | dd | 55AEF2C8H | ||
Mas | db | 9,8,3 dup(0) | Mas | db | 1,2,3,4,5,6 | ||
Pole | db | 5 dup(“ “) | Pole | db | 5 dup(0) | ||
Adr | dw | Pc | Adr | dw | Pc | ||
Adr_full | dd | Pc | Adr_full | dd | Pc | ||
|
|