Поиск по сайту:


«Assembler IBM PC 1. Краткая характеристика операционной среды MS-DOS в компьютерах с операционной системой Windows»

Файл: 4 КБ
Поделиться:

ПРЕДИСЛОВИЕ

Assembler IBM PC, являющийся символическим представлением машинного языка, неразрывно связан с архитектурой процессоров Intel 80x86, что создаёт возможность изучения компьютера на "нижнем уровне", а именно: систему команд и форматы данных, программную модель компьютера и логическую организацию памяти, управление операциями ввода-вывода и систему обработки прерываний, функции базовой системы ввода/вывода BIOS и операционной системы DOS. Следовательно, язык ассемблера является неотъемлемой частью профессионального компьютерного образования.

Предлагаемое читателю учебное пособие (часть 1) ориентировано на проведение лабораторного практикума по дисциплине "Программирование. Раздел: Assembler IBM PC", включающей, помимо лекций и лабораторных занятий, выполнение курсовой работы. Выполнению курсовой работы "Разработка прикладных обработчиков прерываний и резидентных программ в MS-DOS." – будет посвящена вторая часть учебного пособия.

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

·     к использованию программного пакета Turbo Assembler фирмы Borland (TASM) для ассемблирования, компоновки и отладки программ;

·     применению сервисных функций DOS и BIOS в ассемблерных программах;

·     архитектурным особенностям процессоров Intel (организация памяти, программная модель, система команд процессора и обработка программных прерываний).

Все эти вопросы нашли отражение в пособии.

Описание каждой лабораторной работы включает большое количество фрагментов и целых программ, иллюстрирующих выполнение типовых заданий. Кроме того, в работу включены разделы, которые не содержатся в традиционной литературе по ассемблеру, но являются важными для профессиональной подготовки специалистов в области программирования:

·     характеристика операционной среды MS DOS в операционной системе Windows;

·     особенности взаимодействия ассемблерных программ с MS DOS и аппаратными средствами компьютера;

·     форматы исполняемых файлов .EXE и .COM в памяти и на диске.

Книга может служить практическим пособием для самостоятельной разработки программ и упражнений в рамках заданий к лабораторным работам.

1. КРАТКАЯ ХАРАКТЕРИСТИКА ОПЕРАЦИОННОЙ СРЕДЫ MS-DOS 
   В КОМПЬЮТЕРАХ С ОПЕРАЦИОННОЙ СИСТЕМОЙ WINDOWS

Программа, написанная на любом языке программирования, выполняется под управлением операционной системы. Операционная система выделяет программе память, загружает, обеспечивает взаимодействие с устройствами ввода-вывода в процессе её исполнения, а также выгружает её из памяти по завершении работы. В данном учебном пособии рассматриваются вопросы программирования на языке ассемблера в среде MS-DOS.

В чём заключается основное различие программ, написанных для MS-DOS и Windows? Программа для DOS "считает", что она – единственная программа на компьютере и поэтому может и должна напрямую взаимодействовать с программно- управляемыми аппаратными средствами, такими, например, как запись информации на диск или вывод на экран дисплея. Программа для Windows, реализующей многозадачный режим, наоборот, использует ресурсы компьютера совместно с другими программами Windows. Распределение ресурсов компьютера между программами – одна из основных функций данной операционной системы. Развитие операционной системы Windows прошло к настоящему времени (в свете её взаимодействия с DOS) три стадии. Первые версии Windows основывались на DOS и скорее представляли развитую графическую надстройку к ней, однако Windows 95/98 и их модификации (кратко Windows 9х) представляют собой полнофункциональные операционные системы, обеспечивающие полную обратную совместимость с 16-разрядными приложениями DOS.

Запустить программу DOS в компьютере, оснащённом операционной системой Windows 9х, можно щелчком на имени файла расширением .exe, .com, .bat, .pif (последнее расширение представляет специальный информационный файл-ярлык, содержащий установки для наиболее эффективного выполнения в Windows 9х конкретной программы DOS). Однако на практике поступают по-другому.

Первый и наиболее предпочтительный способ основывается на использовании так называемых файловых "оболочек-командиров" для DOS и Windows, предоставляющих большое множество сервисных услуг по манипулированию файлами и директориями. К тому же каждая такая "оболочка-командир" содержит встроенные текстовые редакторы для DOS-программ. К наиболее популярным программам следует отнести: Norton Commander, DOS Navigator, Volkov Commander, Far и Windows Commander (разработаны соответственно в США, Молдове, Украине, России и Швейцарии).

Запуск программы из среды Windows 9х в сеансе MS-DOS: подменю <Программы>, меню <Пуск>, пункт <Сеанс MS-DOS>. Для переключения сеанса MS-DOS между оконным и полноэкранным отображением нужно нажать клавиши <Alt – Enter>. Для запуска сеанса MS-DOS можно воспользоваться файлом Command.com или соответствующим ему информационным файлом Command.pif (pif-файл сообщает Windows режим окна сеанса – полноэкранный или оконный, характер использования памяти, приоритет программы в многозадачном режиме и прочее).

Наконец, Windows 9х предоставляет возможность исполнить DOS-программу непосредственно в операционной среде MS-DOS (правильнее – в подсистеме MS-DOS, входящей в состав Windows 9х). Для этого нужно выполнить команду: <Пуск> – <Завершение работы> – <Перезагрузить компьютер в режиме MS-DOS>.

Последние версии операционной системы Windows 2000 основаны на продолжении линии Windows NT. Не вдаваясь в характеристику операционных систем из семейства Windows NT/2000, отметим лишь, что в них исключена возможность исполнения программы в режиме MS-DOS. В Windows 2000 имеется своя "DOS" – виртуальная DOS-машина (VDM). VDM поддерживает большую часть команд DOS, расширив их за счёт команд специфичных для самой Windows. В Windows 2000 DOS нет: за все процедуры, которые обычно выполняет MS-DOS, отвечает ядро Windows 2000 – NtOsKrnl.

VDM запускается командой <Пуск> – <Командная строка>. Что соответствует запуску универсального интерпретатора команд Cmd.exe в каталоге Windows\System32 (впрочем сохранён и интерпретатор командного процессора DOS – Command.com). С возможностями командной строки можно ознакомится с помощью команды Help cmd. Для инициализации среды VDM, вместо файлов Autoexec.bat и Config.sysиспользуются Autoexec.nt и Config.nt, также расположенные в папке Windows\System32[1].

 

 

[1] Особенности инициализации среды для запуска DOS-программ из командной строки программ-оболочек Far и Windows Commander будут рассмотрены далее в п. 6.2.2.