
- •Утверждаю
- •Системное программирование
- •Содержание
- •Пояснительная записка
- •Тематический план
- •Методические рекомендации по изучению тем дисциплины
- •Раздел 1. Системы программирования.
- •Раздел 2. Основы программирования на языке ассемблера.
- •Методические рекомендации по оформлению и выполнению домашней контрольной работы
- •Критерии оценки домашней контрольной работы
- •Теоретические сведения
- •Команды работы с адресами и указателями памяти
- •ПримерЫ решения задач
- •Раздел 1 Системы программирования
- •Раздел 2 Основы программирования на языке ассемблера.
- •Литература Основная
- •Дополнительная
Раздел 1 Системы программирования
Язык ассемблера, особенности, достоинства и недостатки.
Трансляторы. Этапы трансляции. Основные фазы трансляции и их выполняемые функции. Понятие прохода. Однопроходные и многопроходные трансляторы. Чем определяется количество проходов.
Что представляют собой трансляторы, компиляторы и интерпретаторы. Что в них общего и в чем различие.
Таблицы идентификаторов. Основные части информации о объекте. Как можно организовать таблицу идентификаторов.
Компоновщик, назначение, выполняемые функции.
Программный загрузчик, назначение, выполняемые функции.
Отладчик программ, назначение. Процесс отладки программы.
Раздел 2 Основы программирования на языке ассемблера.
Средства записи целых и вещественных чисел, целых чисел со знаком и без знака и символьных строк.
Адресация, виды используемой адресации, примеры.
Типы данных. Директивы описания и инициализации данных, назначение, формат, расположение в программе.
Операнды, классификация, описание, примеры.
Операторы, классификация, описание, примеры.
Что представляет собой программа на языке ассемблера. Четыре типа предложений использующихся в ассемблере. Форматы директив и команд.
Формат директивы сегментации. Атрибуты директивы и их назначение. Назначение директивы assume.
Назначение упрощенных директив. Упрощенные директивы определения сегмента. Идентификаторы директивы model и используемые модели памяти.
Этапы разработки программы на ассемблере. Командные строки каждого этапа разработки и их результаты.
Сложные структуры данных. Массивы, определение. Описание и инициализация линейных и прямоугольных массивов. Используемая адресация для линейных и прямоугольных массивов. Масштабирование. Доступ к элементам массива. Методы сортировки.
Цепочка элементов, определение. Цепочечные команды, особенности. Префиксы повторения. Особенности формирования физического адреса цепочки-источника и цепочки-приемника. Направление обработки цепочки. Флаг DF.
Директивы работы со строками CATSTR, SUBSTR, INSTR, SIZESTR, описания, примеры.
Структура, определение. Действия со структурой. Описание шаблона структуры. Определение данных с типом структуры. Обращение к полям структуры. Работа с массивом структур – таблицами. Поиск в таблице. Классификация таблиц по организации поиска.
Процедуры, определение. Описание процедуры, расположение в программе. Вызов процедуры и команда выхода из процедуры.
Макросредства языка ассемблера. Общая схема трансляции программы на TASM. Псевдооператоры EQU и =, описание, отличия. Макрокоманда. Макроопределение и его расположение в программе. Макрорасширение и макрогенерация. Сходства и различия макроопрелений и процедур. Директива local.
Работа с файлами, основные функции DOS для работы с файлами.
Работа с дисками и каталогами, основные функции DOS для работы с дисками и каталогами.
Ассемблер, встроенный в программу на языках Pascal и С. Использование процедуры. Оператор asm, формат, примеры.
Раздел 3 Обработка прерываний.
Обработка прерываний. Понятие прерывания. Процесс выполнения прерывания. Система прерываний.
Контроллер прерываний. Его состав. Программирование контроллера прерываний.
Таблица векторов прерываний. Определение адреса программы прерывания. Функции DOS для работы с прерываниями.
Раздел 4 Основы организации ввода/вывода информации.
Работа с консолью. Организация ввода/вывода. Основные функции DOS и BIOS для работы с консолью.
Вывод графической информации на экран терминала. Основные графические функции BIOS прерывания 10h. Состав программируемой модели видеоадаптера в графическом режиме. Режимы работы видеоадаптера.
Раздел 5 Управление памятью и процессами.
Управление памятью. Структура и образ памяти программ exe и com. Структура префикса программного сегмента PSP. Системные средства управления памятью.
Раздел 6 Резидентные программы.
Специфика резидентных программ. Структура резидентной программы. Обращение к резидентной программе.
Раздел 7 Драйверы внешних устройств.
Введение в драйвер. Функции драйвера. Архитектура драйвера. Команды драйвера.