• A
  • A
  • A
  • АБВ
  • АБВ
  • АБВ
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

Архитектура компьютера и операционные системы

2019/2020
Учебный год
RUS
Обучение ведется на русском языке
4
Кредиты

Преподаватель

Программа дисциплины

Аннотация

Целями освоения данной дисциплины являются как получение теоретических знаний в области архитектуры компьютерных систем, принципов организации ввода/вывода и программирования на машинном уровне, так и приобретение практических навыков программирования на языке Ассемблер.
Цель освоения дисциплины

Цель освоения дисциплины

  • Получение теоретических знаний в области архитектуры компьютерных систем, принципов организации ввода/вывода и программирования на машинном уровне
  • Пиобретение практических навыков программирования на языке Ассемблер
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Программная модель микропроцессорных систем и организация памяти.
    Развитие компьютерных систем – технология, поколения, перспективы. Обзор основных архитектур ЭВМ. Программная модель микропроцессорной системы. Программно доступные регистры процессора, память, регисты ввода/вывода. Сегментная организация памяти
  • Команды и адресация. Простейшие программы.
    Методы адресации. Основные группы команд процессора Intel 8086. Язык ассемблер, мнемоника команд. Получение загрузочного модуля. Разбор примеров простейших программ
  • Основы программирования на языке ассемблер.
    Формат записи команд. Простейшие программы ввода/вывода.
  • Разработка программ на языке ассемблер для MS DOS.
    Ассемблер, трансляция получение объектного модуля, ключи программы tasm, редактирование связей, получение загрузочного модуля, ключи программы tlink.
  • Использование функций прерывания DOS.
    Обзор функций операционной системы. Программы ввода/вывода. Использование функций прерывания int 21h операционной системы для различных задач. Функции BIOS – обзор и использование
  • Работа с файлами.
    Работа с файлами в DOS. Дескрипторы, описание функций операционной системы для работы с файлами. Примеры программ создания, чтения файлов.
  • Работа с командной строкой.
    Обработка аргументов командной строки
  • Система прерываний.
    Векторная система прерываний. Распределение адресного пространства. Программы обработки прерываний. Использование стека при прерываниях.
  • Архитектура контроллера прерываний.
    Эволюция системы прерываний. Чтение и установка вектора прерываний. Контроллер прерываний и его функционирование. Обработчики программных и аппаратных прерываний.
  • Разработка резидентных программ.
    Резидентная программа. Способы передачи управления в системный обработчик. Защита от повторной загрузки. Выгрузка резидентной программы. Переключение стека в резидентной программе. Подключение собственного обработчика прерываний до системного, после системного и как до так и после системного. Обработчик прерываний от клавиатуры, кольцевой буфер. Разбор примеров резидентных программ.
  • Разработка программ ввода/вывода с использованием BIOS
    Системные возможности BIOS для организации ввода/вывода
  • Непосредственный вывод в видеобуфер.
    Логическая организация текстового видеобуфера. Знакоместо, атрибуты символа. Непо- средственный вывод в видеобуфер, целесообразность использования. Строковые команды. Примеры программ вывода непосредственно в видеобуфер.
  • Связь программ на ассемблере с программами на языке С
    Передача параметров из программ на языке С в подпрограмму-функцию на языке ассемблер
  • Структуры и записи.
    Примеры программ. Метка тома.
  • Основы организации Windows. WinAPI.
    События, очереди сообщений, ресурсы. Библиотеки динамической загрузки. Интерфейс WinAPI
  • Разработка программ на языке ассемблер под Windows.
    Разработка программ под Windows. Программирование простейшего консольного приложения.
Элементы контроля

Элементы контроля

  • неблокирующий Лабораторная работа 1
  • неблокирующий Лабораторная работа 2
  • неблокирующий Итоговый тест
Промежуточная аттестация

Промежуточная аттестация

  • Промежуточная аттестация (3 модуль)
    0.4 * Итоговый тест + 0.3 * Лабораторная работа 1 + 0.3 * Лабораторная работа 2