Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ПТСПЦУВСБ / 2. Организация выполняемых программ в MS – DOS. Система команд процессора Intel 86

..docx
Скачиваний:
70
Добавлен:
27.12.2015
Размер:
33.71 Кб
Скачать

2. Организация выполняемых программ в MS – DOS. Система команд процессора Intel 86.

  1. bat. – текстовый файл (с его помощью можно запускать) – для организации порядка и записи программ 2-х других типов (.com, .exe).

  2. .com, .exe – программы, полученные в результате компиляции и компановки.

.com:

  1. длина не превышает 64 КБ;

  2. рассчитан для работы с малыми моделями памяти (TINY, SMALL);

  3. хранится на диске в том виде, в котором исполняется и не требует дополнительной настройки после загрузки;

  4. все сегментные регистры в начальный момент времени настроены на один и тот же адрес, с которого начинается PSP этой программы.

Структура .com – файла:

64 КБ PSP всегда занимает 256 байт = 100Н

SP

Код программы

и данные

- заполнение

100Н

CS:IP

PSP

DS,SS,ES,CS

Первично после загрузки все сегментные регистры настроены на PSP. Тогда 1-ая команда в программе начинается с адреса IP=100H; указатель STACK устанавливается на конец сегмента (STACK растет как сосулька).

.exe:

  1. используется для моделей памяти SMALL и выше, позволяет применять любое количество сегментов;

  2. требует настройку – содержит заголовок при хранении на диске, с помощью которого выполняется настройка при загрузке (настройка заключается в то, что все адреса предварительно корректируются);

Структура .exe – файла: SP

Данные

Список

PSP

Код

SS

PSP (после загрузки)

CS

DS, ES

PSP (Префикс сегмент program) – специальная структура, которая формирует ОС для каждого исполняемого файла. Она содержит с нулевого адреса команду INT20 (прерывание) длиной 1 слово, которая обеспечивает возврат ОС после выполнения программы.

H 1слово INT20 (CD20)

2H 1слово размер доступной памяти (в параграфах)

от 4H до (2C-1) 1слово вспомогательные адреса и команды

2CH среда окружения программ

80H область передачи данных (DTA)

Система команд процессора Intel 86.

Формат:

Префикс

перераспределение

сегмента

КОП

режим

адресации

Данные

Адрес

0/1 байт

0/1 байт

Всегда 1 байт

0/1 байт

0/1/2 байт

0/1/2 байт

Есть всегда! Взаимоисключаемые

Максимальная длина команды = 6 байт.

Префикс используется для:

  1. задания, выполнения, повторения данной команды (обычно для строк);

  2. запрещает доступ к … на время выполнения команды (LOCK);

Переопределение сегментов – изменение сегмента, принятого поумолчанию.

Режим адресации – указание: с регистром или с памятью мы будем работать.