- •1. Основы программирования для dos 9
- •1.1.7. Средства bios 21
- •2. Приемы системного программирования 57
- •Введение
- •1.Основы программирования для dos
- •1.1. Структура и выполнение программ в dos
- •Программа типа сом
- •Программа типа ехе
- •1.2.Использование служебных функций dos и bios
- •1.3.Вывод на экран в текстовом режиме
- •Средства dos
- •Средства bios
- •Выбор видеорежима
- •Управление положением курсора
- •Вывод символов на экран
- •Прямая работа с видеопамятью
- •1.4.Ввод с клавиатуры
- •Средства dos
- •Средства bios
- •1.5.Графические видеорежимы
- •Работа со стандартными графическими режимами
- •Работа с svga-режимами
- •(Продолжение таблицы 4)
- •(Окончание таблицы 4)
- •1.6.Работа с мышью
- •1.7.Другие устройства
- •Системный таймер
- •Последовательный порт
- •Параллельный порт
- •1.8.Работа с файлами
- •Создание и открытие файлов
- •Чтение из файла и запись в файл
- •Закрытие и удаление файла
- •Поиск файлов
- •Управление файловой системой
- •1.9.Управление памятью
- •Обычная память
- •Область памяти umв
- •Область памяти нма
- •Интерфейс ems
- •Интерфейс xms
- •1.10.Организация процессов
- •Запуск программ на выполнение
- •Переменные окружения
- •Командные параметры
- •2.Приемы системного программирования
- •2.1.Управляющие структуры
- •Структуры if... Then... Else
- •Структуры case
- •Конечные автоматы
- •2.2.Процедуры и функции
- •Передача параметров
- •Передача параметров по значению
- •Передача параметров по ссылке
- •Передача параметров по возвращаемому значению
- •Передача параметров по результату
- •Передача параметров по имени
- •Передача параметров отложенным вычислением
- •Передача параметров в регистрах
- •Передача параметров в глобальных переменных
- •Передача параметров в стеке
- •Передача параметров в потоке кода
- •Передача параметров в блоке параметров
- •Локальные переменные
- •2.3.Обработка прерываний
- •Обработчики прерываний
- •Прерывания от внешних устройств
- •Взаимодействие прикладных и системных обработчиков прерываний
- •2.4.Резидентные программы
- •Системные средства организации резидентных программ
- •Взаимодействие с резидентной программой
- •2.5.Драйверы устройств в dos
- •Литература
Литература
Зубков С. В. Ассемблер для DOS, Windows и Unix.— М., 1999.— 640 с.
Юров В., Хорошенко С. Assembler: учебный курс.— СПб., 1999.— 672 с.
Рудаков П. И., Финогенов К. Г. Программируем на языке ассемблера IBM PC. — Обнинск, 1999. — 495 c.
Абель П. Язык Ассемблера для IBM PC и программирования.— М., 1992.— 447 с.
Финогенов К. Г. Основы языка ассемблера.— М., 1999.— 288 с.
Сван Т. Освоение Turbo Assembler.— К.-М.-СПб., 1995.— 544 с.
Лей Р. и "Уэйт-Груп". Написание драйверов для MS-DOS.— М., 1995.— 527 с.
Рис. 1. Буфер клавиатуры 23
Рис. 2. Координатные оси адресуемой плоскости экрана 24
Рис. 3. Пример организации программы СОМ после запуска 53
Рис. 4. Пример организации программы EXE после запуска 54
Рис. 5. Стек при вызове процедуры foobar 65
Рис. 6. Процедура обслуживания прерывания 66