Бакалавриат
2021/2022





Архитектура компьютера и операционные системы
Лучший по критерию «Новизна полученных знаний»
Статус:
Курс обязательный (Прикладная математика и информатика)
Направление:
01.03.02. Прикладная математика и информатика
Когда читается:
2-й курс, 3, 4 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Язык:
русский
Кредиты:
6
Контактные часы:
60
Программа дисциплины
Аннотация
Целями освоения данной дисциплины являются как получение теоретических знаний в области архитектуры компьютерных систем, принципов организации ввода/вывода и программирования на машинном уровне, так и приобретение практических навыков программирования на языке Ассемблер. Также пройти курс по изучению языка программирования Python.
Цель освоения дисциплины
- Получение теоретических знаний в области архитектуры компьютерных систем, принципов организации ввода/вывода и программирования на машинном уровне
- Пиобретение практических навыков программирования на языке Ассемблер
- Приобретение практических навыков программирования на языке Ассемблер
- Изучение языка программирования Python
Планируемые результаты обучения
- Знает библиотеки динамической загрузки и умеет пользоваться интерфейсом WinAPI.
- Знает векторную систему прерываний, умеет использовать стек при прирываниях
- Знает логическую организацию текстового видеобуфера, умеет выводить в видеобуфер
- Знает методы адресации, основные группы команд процессора Intel 8086
- Знает обработчики программных и аппаратных прерываний.
- Знает основные понятия раздела и примеры программ
- Знает основные понятия раздела и программно доступные регистры процессора, память, регистры ввода/вывода
- Знает основные понятия раздела, умеет редактировать связи, получать загрузочный модуль
- Знает Системные возможности BIOS для организации ввода/вывода
- Знает способы передачи управления в системный обработчик, умеет выгружать резидентные программы
- Знает Формат записи команд. Простейшие программы ввода/вывода.
- Знает функции операционной системы, программы ввода/вывода, умеет использовать функции прерывания int 21h операционной системы для различных задач
- Умеет передавать параметры из программ на языке С в подпрограммуфункцию на языке ассемблер
- Умеет работать с файлами в DOS и обрабатывать аргументы командной строки
- Умеет разрабатывать программы на языке ассемблер под Windws
- Знает векторную систему прерываний. Знает распределение адресного пространства. Понимает программы обработки прерываний. Умеет использовать стек при прерываниях.
- Знает методы адресации. Знает основные группы команд процессора Intel 8086.
- Знает понятие резидентной программы.Знает способы передачи управления в системный обработчик и защиту от повторной загрузки. Умеет сделать выгрузку резидентной программы и переключить стек в резидентной программе. Подключение собственного обработчика прерываний до системного, после системного и как до так и после системного. Обработчик прерываний от клавиатуры, кольцевой буфер. Разбор примеров резидентных программ.
- Знает программную модель микропроцессорных систем и организацию памяти.
- Знает формат записи команд. Знает простейшие программы ввода/вывода.
- Знает функции операционной системы и программы ввода/вывода. Использует функции прерывания int 21h операционной системы для различных задач.
- Знает эволюцию системы прерываний. Чтение и установка вектора прерываний. Знает контроллер прерываний и его функционирование. Знает обработчики программных и аппаратных прерываний.
- Знает язык ассемблер, знает трансляцию получение объектного модуля, ключи программы tasm, редактирование связей, получение загрузочного модуля, ключи программы tlink.
- Умеет обрабатывать аргументы командной строки
- Умеет работать с файлами в DOS. Знает дескрипторы, описание функций операционной системы для работы с файлами. Понимает примеры программ создания, чтения файлов.
Содержание учебной дисциплины
- Программная модель микропроцессорных систем и организация памяти.
- Программная модель микропроцессорных систем и организация памяти.
- Команды и адресация. Простейшие программы.
- Команды и адресация. Простейшие программы.
- Основы программирования на языке ассемблер.
- Основы программирования на языке ассемблер.
- Разработка программ на языке ассемблер для MS DOS.
- Разработка программ на языке ассемблер для MS DOS.
- Использование функций прерывания DOS.
- Использование функций прерывания DOS.
- Работа с файлами.
- Работа с файлами.
- Работа с командной строкой.
- Работа с командной строкой.
- Система прерываний.
- Система прерываний.
- Архитектура контроллера прерываний.
- Архитектура контроллера прерываний.
- Разработка резидентных программ.
- Разработка резидентных программ.
- Разработка программ ввода/вывода с использованием BIOS
- Разработка программ ввода/вывода с использованием BIOS
- Непосредственный вывод в видеобуфер.
- Непосредственный вывод в видеобуфер.
- Связь программ на ассемблере с программами на языке С
- Связь программ на ассемблере с программами на языке С
- Структуры и записи.
- Структуры и записи.
- Основы организации Windows. WinAPI.
- Основы организации Windows. WinAPI.
- Разработка программ на языке ассемблер под Windows.
- Разработка программ на языке ассемблер под Windows.
Элементы контроля
- Лабораторная работа 1
- Лабораторная работа 2
- Итоговый тестЭкзамен проводится в письменной форме (опрос по материалам курса). Экзамен проводится на платформе Zoom, github. К экзамену необходимо подключиться согласно расписанию ответов, высланному преподавателем на корпоративные почты студентов накануне экзамена. Компьютер студента должен удовлетворять требованиям: наличие рабочей камеры и микрофона, поддержка Zoom, github. Для участия в экзамене студент обязан: поставить на аватар свою фотографию, явиться на экзамен согласно точному расписанию, при ответе включить камеру и микрофон. Во время экзамена студентам запрещено: выключать камеру, пользоваться конспектами и подсказками. Кратковременным нарушением связи во время экзамена считается нарушение связи до 5 минут. Долговременным нарушением связи во время экзамена считается нарушение 5 минут и более. При долговременном нарушении связи студент не может продолжить участие в экзамене. Процедура пересдачи аналогична процедуре сдачи.
- Итоговый тест
- Лабораторная работа 1
- Лабораторная работа 2
Промежуточная аттестация
- 2020/2021 учебный год 3 модуль0.3 * Лабораторная работа 2 + 0.3 * Лабораторная работа 1 + 0.4 * Итоговый тест
- 2020/2021 учебный год 4 модуль
- 2021/2022 учебный год 4 модуль0.3 * Лабораторная работа 1 + 0.3 * Лабораторная работа 2 + 0.4 * Итоговый тест
Список литературы
Рекомендуемая дополнительная литература
- Практикум по программированию на языке Паскаль: Массивы, строки, файлы, рекурсия, линейные динамические структуры, бинарные деревья: учебное пособие / М.Э. Абрамян. - Ростов н/Д: Издательство ЮФУ, 2010. - 276 с. ISBN 978-5-9275-0801-3 - Режим доступа: http://znanium.com/catalog/product/549917
- Сузи, Р. А. Язык программирования Python : учебное пособие / Р. А. Сузи. — 2-е изд. — Москва : ИНТУИТ, 2016. — 350 с. — ISBN 5-9556-0058-2. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/100546 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Язык программирования Python: практикум : учеб. пособие / Р.А. Жуков. — М. : ИНФРА-М, 2019. — 216 с. + Доп. материалы [Электронный ресурс; Режим доступа: http://www.znanium.com]. — (Высшее образование: Бакалавриат). — www.dx.doi.org/10.12737/textbook_5cb5ca35aaa7f5.89424805.
- Язык программирования Python: практикум : учебное пособие / Р.А. Жуков. — Москва : ИНФРА-М, 2020. — 216 с. + Доп. материалы [Электронный ресурс]. — (Высшее образование: Бакалавриат). — www.dx.doi.org/10.12737/textbook_5cb5ca35aaa7f5.89424805. - Режим доступа: http://znanium.com/catalog/product/1045700
- Язык программирования Python: практикум : учебное пособие / Р.А. Жуков. — Москва : ИНФРА-М, 2020. — 216 с. + Доп. материалы [Электронный ресурс]. — (Среднее профессиональное образование). - Текст : электронный. - URL: http://znanium.com/catalog/product/1044193