- •Понятие архитектуры эвм. Эволюция универсальных эвм. Поколения эвм. Элементная база эвм.
- •Основы классификации эвм. Классификационные признаки. Принципы устройства последовательной эвм (архитектура фон Неймана). Технические показатели эвм.
- •Архитектура универсальной эвм с последовательным выполнением команд. Функциональное назначение, физические принципы действия и организация основных блоков.
- •Серия ibm-совместимых пэвм (ibm pc). Основные современные конфигурации. Технические показатели и характеристики. Другие типы аппаратных платформ пэвм.
- •Блочно-функциональное устройство персонального компьютера с магистральной организацией ( общей системной шиной ). Понятие открытой архитектуры.
- •Внутренние интерфейсы эвм. Системные и локальные шины. Контроллер шины. Иерархическая организация шин.
- •Контроллер шины
- •Основы систем счисления. Методы представления чисел и операции в позиционных системах счисления с различным основанием. Системы счисления в эвм.
- •Внутренняя организация числовых и символьных данных в эвм. Машинные форматы числовых данных пэвм. Стандарты кодировок символьной информации (ascii, unicode) и десятичных чисел (код bcd).
- •Кодировка ascii
- •Кодировка (encoding) Юникод - Unicode
- •Машинный формат с фиксированной точкой (Fixed Point Representation). Специальные коды для представления знаковых целых двоичных чисел и операций с ними(прямой, обратный, дополнительный).
- •11. Машинный формат с плавающей точкой (Float Point Representation). Параметры форматов сопроцессора intel (fpu 80x87).
- •Функционально-логическая организация микропроцессоров серии intel 80x86. Основные блоки и устройства: - назначение, функции, принципы действия. Режимы работы мп и способы адресации операндов.
- •Программная модель мп Intel (ia-32). Система регистров мп. Назначение, типы регистров. Регистры прикладного программиста. Флаги.
- •Специальные типы регистров защищенного режима мп (ia-32): управляющие, отладки, системные адресные регистры. Селекторы сегментов: - организация в разных режимах.
- •Регистровая (локальная) память мп. Сверхбыстрая буферная память. Внешний и внутренний кэш: - алгоритмы обслуживания. Стековая (магазинная) память. Fifo - буфера.
- •Специализированные процессоры. Числовой арифметический сопроцессор intel 80x87(fpu). Программная (регистровая) модель. Форматы данных. Система команд.
- •Оперативная (основная) память эвм (озу). Назначение, программная модель. Элементная база озу.
- •Системы памяти в эвм. Иерархия запоминающих устройств. Оперативная и долговременная внешняя память.
- •Типы запоминающих устройств внешней памяти эвм. Методы моделирования цифровых (двоичных) данных. Общая организация носителей данных, технические характеристики.
- •Программная модель памяти эвм. Иерархическая структура памяти. Концепция виртуальной памяти. Страничное распределение памяти.
- •21. Сегментная и страничная модели оперативной памяти (на платформе Intel). Системные адресные регистры цп, таблицы дескрипторов сегментов.
- •22.Специальные типы организации памяти: - стековая (магазинная) память, fifo-буфера. Сегмент стека, команды цп для работы со стеком
- •23. Физическая организация внешней долговременной памяти эвм (дзу). Дисковая магнитная память.
- •24. Постоянные запоминающие устройства (пзу). Базовая система ввода-вывода (bios) и ее функции. Конфигурационная память (cmos), ее свойства и назначение. Часы реального времени (rtc).
- •25. Интерфейсы пэвм. Системные и локальные шины. Интерфейсы дисковых накопителей и периферийных устройств. Стандарты и технические характеристики.
- •Интерфейс scsi
- •26. Организация взаимодействия элементов эвм под управлением цп. Цикл выполнения команд. Циклы шины. Система прерываний. Типы прерываний
- •27. Система прерываний эвм. Назначение, роль и место в общей организации управления и взаимодействия в эвм. Типы прерываний.
- •28. Обслуживание запросов внешних устройств. Аппаратные (асинхронные) прерывания. Контроллер прерываний pic. Линии запросов на прерывание - irq. Исключительные ситуации цп.
- •29. Программные (синхронные) прерывания, команды прерывания мп. Сервисы bios, как программные прерывания.
- •30. Процедуры обработчиков прерывания Таблицы дескрипторов (векторов) прерываний в защищенном и реальном режимах работы процессора intel.
- •31. Организация ввода-вывода. Принципы обмена информацией цп с внешними устройствами. Порты ввода-вывода. Устройства ввода: - клавиатура, мышь. Динамик pc.
- •32. Видеоподсистема пэвм. Принципы формирования изображений. Элементы видеоподсистемы: - монитор, видеоконтроллер, видеопамять. Видеорежимы.
- •33. Периферийное оборудование пэвм. Обзор основных устройств: - принципы действия, функциональное назначение, интерфейс с компьютером.
- •34. Системный (ассемблерный) отладчик ос ms-dos - debug. Интерактивные типы отладчиков.
- •35. Ассемблер для микропроцессоров с архитектурой intel 80x86. Общая характеристика языка, основные особенности и возможности. Инструментальные системы для разработки программ на языке Ассемблера.
- •36. Алфавит языка Ассемблер. Базовые синтаксические элементы (лексемы) языка. Предложения: - команды, директивы, комментарии. Синтаксис команд и директив. Резервированные идентификаторы.
- •37. Структура программ на языке Ассемблер. Программные сегменты. Типы, описание, назначение. Макроопределения. Специальные директивы компилятора. Определение именованных констант.
- •Include - Вложить другой файл
- •38. Форматы загрузочных (исполняемых) модулей типа *.Exe и *.Com. Загрузка программ, инициализация сегментных регистров. Префикс программного сегмента. (psp).
- •39. Типы данных Ассемблера. Константы. Директивы описания и инициализации данных, директивы эквивалентности (описания констант). Формат директив.
- •40. Директивы описания сегментов. Процедуры в Ассемблере. Вызовы и возвраты (дальние и ближние).
- •Система команд Ассемблера. Основные типы команд и их классификация. Синтаксис (формат записи) команд. Способы адресации операндов.
- •Методы адресации
- •Команды пересылки данных. Операции со стековой памятью. Арифметические команды Ассемблера. Команды пересылки данных
- •Арифметические команды
- •Логические команды. Команды сдвига. Команды прямой манипуляции с битами. Логические команды
- •44. Команды программной передачи управления. Команды переходов
- •Команды обработки строк. Префиксы повторения.
- •Организация циклов в Ассемблере. Команды управления циклами. Организация циклов
- •Режимы адресации операндов в командах Ассемблера. Косвенная адресация. Модификация адресов, и индексирование.
- •48. Команды управления состоянием микропроцессора.
- •Моделирование структурных типов данных в Ассемблере (строки, векторы, матрицы, записи, структуры). Организация обработки структурных данных.
- •Двухмерные массивы
- •Структуры
- •Описание шаблона структуры
- •Определение данных с типом структуры
- •Объединения
- •Описание записи
- •Определение экземпляра записи
- •Функциональное обслуживание устройств на уровне ос ms-dos. Прерывания dos. Программный интерфейс ms-dos - прерывание int 21h. Основные группы функций. Прерывания dos
- •Получение системной информации.
- •Символьный ввод/вывод.
- •Работа с файловой системой.
- •Управление программами.
- •Управление памятью.
- •Связь с драйверами устройств.
Получение системной информации.
Функция 30h возвращает в регистре AX номер версии DOS. Например, для версии MS-DOS 5.00 содержимое регистра AH равно 00, регистра AL - 05.
Дополнительно через регистр BH функция возвращает программе серийный номер фирмы-производителя ОЕМ (IBM - 00, DEC - 16h, 0FFh - Microsoft и т.п.), а в регистрах BL:CX после вызова функции находится серийный номер пользователя.
Эта информация может применяться для анализа возможности использования таких средств операционной системы, которые поддерживаются не всеми версиями DOS, или для настройки программы на конкретный серийный номер пользователя.
Функции 2Ah и 2Ch позволяют программе узнать системную дату и время.
Есть функции, возвращающие текущий диск и текущий каталог. Номера этих функций - 19h и 47h.
Функция 2Fh позволяет программе узнать адрес текущей области DTA (Disk Transfer Area). Эта область используется, например, при поиске файлов в каталоге.
Важная информация находится в блоке PSP (Programm Segment Prefix). Этот блок располагается в памяти непосредственно перед выполняющейся программой. В нем находятся, в частности, параметры, передаваемые программе при запуске. Функция 62h возвращает адрес текущего блока PSP.
Кратко перечислим некоторые другие функции для получения системной информации:
35h |
получить значение вектора прерывания с заданным номером; |
4Dh |
узнать код завершения процесса; |
59h |
получить расширенный код ошибки; |
54h |
узнать, используется ли проверка при записи на диск; |
33h |
узнать, используется ли проверка на CTRL-BREAK. |
Символьный ввод/вывод.
Эти функции применяются для работы со всеми символьными устройствами, такими как консоль, принтер, последовательный порт, и называются функциями стандартного ввода/вывода.
Ввод/вывод программы, использующей стандартные функции, может быть переназначен.
Приведем обзор основных функций стандартного символьного ввода/вывод в виде таблицы:
Код |
Назначение |
Описание |
01h |
Ввод с клавиатуры |
Выполняется ввод символа со стандартного ввода и эхо-вывод символа на стандартное устройство вывода. Выполняется проверка на нажатие комбинации клавиш CTRL/C и CTRL-BREAK |
06h |
Ввод с клавиатуры |
Ввод символа со стандартного ввода без ожидания и вывод его на устройство стандартного вывода. Комбинации CTRL/C и CTRL-BREAK не проверяются. |
07h |
Прямой ввод |
Ввод символа со стандартного с клавиатуры устройства ввода. Комбинации клавиш CTRL/C и CTRL-BREAK не проверяются. |
08h |
Ввод с клавиатуры |
Аналогично функции 07h, но проверяются комбинации клавиш CTRL/C и CTRL-BREAK. |
02h |
Отобразить символ |
Отображаемый символ посылается на стандартное устройство вывода. |
09h |
Отобразить строку |
На стандартное устройство вывода символов посылается строка, закрытая символом '$'. |
03h |
Ввод из последовательного порта |
Вводится символ из последовательного порта |
04h |
Вывод в последовательный порт |
Выводится символ на последовательный порт |
05h |
Вывод на принтер |
Выводится символ на принтер. |
Из таблицы видно, что для ввода с клавиатуры можно использовать несколько функций. Ввод без эхо-вывода удобен для такой информации, как пароли. Если логика работы программы не допускает прерывания по нажатию комбинаций клавиш CTRL-C или CTRL-BREAK, нужно использовать функции, которые не проверяют эти комбинации.
Для вывода строки символов можно использовать функцию 09h, но выводимая строка не может содержать символ '$', так как этот символ используется в качестве признака конца строки.