Написание COM- программ



 

Являются наиболее быстрыми и компактными. В этих программах и код, и данные находятся в одном сегменте, поэтому отсутствуют межсегментные переходы и межсегментные вызовы.

COM- программы быстрее загружаются в память.

Недостатком COM- программы является то, что общий размер не может превышать 64 Кбайт.

 

Правила создания COM- программы:

 

1. Указать модель памяти tiny.

2. Не задавать сегмент стека, так как для COM- программы стек выделяется операционной системой в конце сегмента программы.

3. Установить в начале программы значение счетчика адресов равное 100h, т.к. операционная система при загрузке программы размещает в ее первые 100h байт префикс программного сегмента (PSP - информация о количестве памяти, доступной программе, параметры командной строки и другая системная информация). Счетчик устанавливается командой ORG 100h.

· Во время загрузки COM- программы выделяется первый свободный сегмент памяти и в его начале размещается PSP.

· Все сегментные регистры устанавливаются на этот сегмент.

CS Рег. сегмента кода

DS Рег. сегмента данных

SS Рег. сегмента стека

ES Доп. сегментный

· Регистр SP (указатель стека) устанавливается на конец сегмента программы.

· В стек задается число 00h.

· Вся остальная память выделена программе. Это означает, что размер динамической памяти, с которой может работать COM- программа, может значительно превышать 64 Кбайт.



Дата добавления: 2015-12-17; просмотров: 141; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!