Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Заголовок программы (512 байт)





00000: 4D 5A 70 00 02 00 01 00 20 00 00 00 FF FF 04 00 MZ p ☻ ☺ ♦

00010: 30 00 00 00 00 00 00 00 3E 00 00 00 01 00 FB 71 0 > ☺ √ q

00020: 6A 72 00 00 00 00 00 00 00 00 00 00 00 00 00 00 jr

00030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 ☺

00040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

...................................

001F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Загрузочный модуль: Сегмент кода (32 байта)

00200: B8 02 00 8E D8 B4 09 BA 00 00 CD 21 B8 00 4C CD ╕ ☻ o╪ ┤ o║ ═! ╕ L=

00210: 21 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00!

Сегмент данных (32 байта)

00220: 8F E0 AE A3 E0 A0 AC AC A0 20 E2 A8 AF A0 20 2E Программа типа.

00230: 65 78 65 0A 0D 24 00 00 00 00 00 00 00 00 00 00 exe◙ ♪ $

Сегмент стека (48 байт)

00240: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

00250: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

00260: 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F????????????????

Рис. П.1.3_2. Листинг и машинный код программы типа.exe

Таблица П.1.3_2

Формат заголовка исполняемого.exe – файла на диске

Смещение Число байтов Описание
00h   Сигнатура " MZ" (Mark Zbikowski) или код 4D5A
02h   Остаток от деления размера загрузочного модуля на 512. (для нашего примера 624 -512=112=70h)
04h   Размер файла в блоках по 512 байт, округленный в большую сторону
06h   Число элементов таблицы настройки адресов
08h   Размер заголовка в параграфах
0Ah   Минимальное число параграфов, требуемых программе дополнительно к её образу на диске
0Ch   Максимальное число параграфов, требуемых программе дополнительно к её образу на диске (по умолчанию FFFFh)
0Eh   Смещение в параграфах сегмента стека в загрузочном модуле (SS0)
10h   Значение регистра SP0
12h   Поразрядная контрольная сумма EXE- файла
14h   Значение регистра IP0 при входе в программ
16h   Смещение в параграфах сегмента кода в загрузочном модуле (CS0)
18h   Расстояние в байтах от начала файла до первого элемента таблицы настройки адресов
1Ah   Содержат «0», если программа является резидентной, или отличное от нуля число, если данная часть программы является оверлейной
1Ch   Различные сигнатуры, в том числе версия Tlink (смещение 1Fh)

 

Действия MS DOS при запуске.exe-программы отличаются от действий при запуске программы типа.com, хотя в обоих случаях используется одна и та же функция Exec.

1. Запускаемой программе отводится вся свободная в данный момент оперативная память, в которой определяется начальный сегментный адрес программы (NS0).

2. По нулевому смещению в выделенном для программы сегменте памяти Exec создаёт служебную структуру – префикс программного сегмента PSP. Его размер, как и для COM- программ, равен 256 байт.

3. Вслед за PSP размещается загрузочный модуль программы, а заголовок и таблица настройки в память не копируются. После этого выполняется так называемая настройка адресов.

4. Суть настройки состоит в следующем: компоновщик (Tlink или какой-либо другой) строит exe- модуль относительно некоторого " базового адреса" (в MS DOS программы могут загружаться в произвольную область памяти). Поэтому при загрузке программы к каждому сегментному адресу прибавляется значение начального сегмента программы (NS0). Элементы, требующие настройки, указываются в таблице настройки. Таким образом, устанавливаемые значения регистров для программы рис. П.1.3_2 примут следующие значения:

DS = ES = NS0;

CS = NS0 + 10h + CS0=NS0 +10h;

SS = NS0 + 10h + SS0=NS0 + 14h;

IP = IP0 =00h, SP = SP0 = 30h

Здесь CS0, SS0, IP0 и SP0 берутся загрузчиком Exec из заголовка exe- файла, а значение 10h – резервирует пространство (в параграфах) для PSP.

5. После загрузки программы начинается процесс её исполнения, для чего Exec передает управление по адресу cs: ip.

 







Дата добавления: 2014-11-10; просмотров: 779. Нарушение авторских прав; Мы поможем в написании вашей работы!




Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Тема: Кинематика поступательного и вращательного движения. 1. Твердое тело начинает вращаться вокруг оси Z с угловой скоростью, проекция которой изменяется со временем 1. Твердое тело начинает вращаться вокруг оси Z с угловой скоростью...

Условия приобретения статуса индивидуального предпринимателя. В соответствии с п. 1 ст. 23 ГК РФ гражданин вправе заниматься предпринимательской деятельностью без образования юридического лица с момента государственной регистрации в качестве индивидуального предпринимателя. Каковы же условия такой регистрации и...

Седалищно-прямокишечная ямка Седалищно-прямокишечная (анальная) ямка, fossa ischiorectalis (ischioanalis) – это парное углубление в области промежности, находящееся по бокам от конечного отдела прямой кишки и седалищных бугров, заполненное жировой клетчаткой, сосудами, нервами и...

Метод Фольгарда (роданометрия или тиоцианатометрия) Метод Фольгарда основан на применении в качестве осадителя титрованного раствора, содержащего роданид-ионы SCN...

Потенциометрия. Потенциометрическое определение рН растворов Потенциометрия - это электрохимический метод иссле­дования и анализа веществ, основанный на зависимости равновесного электродного потенциала Е от активности (концентрации) определяемого вещества в исследуемом рас­творе...

Гальванического элемента При контакте двух любых фаз на границе их раздела возникает двойной электрический слой (ДЭС), состоящий из равных по величине, но противоположных по знаку электрических зарядов...

Studopedia.info - Студопедия - 2014-2024 год . (0.007 сек.) русская версия | украинская версия