Программа дисциплины Теоретические основы информатики и архитектура ЭВМ  для направлений 010500. 62 «Прикладная математика и информатика», 080700. 62 «Бизнес-информатика» подготовки бакалавра

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

Содержание


Область применения и нормативные ссылки
1Цели освоения дисциплины
2Компетенции обучающегося, формируемые в результате освоения дисциплины
3Место дисциплины в структуре образовательной программы
4Тематический план учебной дисциплины
5Формы контроля знаний студентов
5.1Критерии оценки знаний, навыков
6Содержание дисциплины
7Образовательные технологии 7.1Методические рекомендации преподавателю
7.2Методические указания студентам
8Оценочные средства для текущего контроля и аттестации студента 8.1Тематика заданий текущего контроля
8.2Вопросы для оценки качества освоения дисциплины
8.3Примеры заданий промежуточного /итогового контроля
9Порядок формирования оценок по дисциплине
10Учебно-методическое и информационное обеспечение дисциплины 10.1Базовый учебник
10.3Дополнительная литература
Подобный материал:

Правительство Российской Федерации


Федеральное государственное автономное образовательное учреждение высшего профессионального образования


"Национальный исследовательский университет
"Высшая школа экономики"


Нижегородский филиал


Факультет Бизнес-информатики и прикладной математики


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

Теоретические основы информатики и архитектура ЭВМ




для направлений 010500.62 «Прикладная математика и информатика»,

080700.62 «Бизнес-информатика» подготовки бакалавра


Автор программы:

Бацын М.В., к. ф.-м. н., batsyn@yandex.ru


Одобрена на заседании кафедры Прикладной математики и информатики


«___»____________ 2011 г


Зав. кафедрой В.А. Калягин


Рекомендована секцией УМС «Прикладная математика»


«___»____________ 2011 г


Председатель В.А.Калягин


Утверждена УМС филиала


«___»_____________2011 г.


Председатель Макарова Л.Г.


Нижний Новгород, 2011

Настоящая программа не может быть использована другими подразделениями университета и другими вузами без разрешения кафедры-разработчика программы.

Область применения и нормативные ссылки


Настоящая программа учебной дисциплины устанавливает минимальные требования к знаниям и умениям студента и определяет содержание и виды учебных занятий и отчетности.

Программа предназначена для преподавателей, ведущих данную дисциплину, учебных ассистентов и студентов направлений подготовки 010500.62 «Прикладная математика и информатика», 080700.62 «Бизнес-информатика».

Программа разработана в соответствии с образовательным стандартом государственного образовательного бюджетного учреждения высшего профессионального образования высшей школы экономики.

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


Целями освоения дисциплины «Теоретические основы информатики и архитектура ЭВМ» являются ознакомление студентов с основными элементами аппаратного обеспечения ЭВМ, принципами работы современных процессоров и устройств ввода-вывода, а также с основами программирования на ассемблере x86.

2Компетенции обучающегося, формируемые в результате освоения дисциплины


В результате освоения дисциплины студент должен:
  • Знать базовые элементы и основные устройства аппаратного обеспечения компьютера.
  • Знать особенности функционирования конвейера процессора.
  • Иметь навыки (приобрести опыт) программирования на ассемблере х86 под операционную систему Linux.


В результате освоения дисциплины студент осваивает следующие компетенции:

Компетенция

Код по ФГОС/ НИУ

Дескрипторы – основные признаки освоения (показатели достижения результата)

Формы и методы обучения, способствующие формированию и развитию компетенции

Готовность выявить естественнонаучную сущность проблем, возникающих в ходе профессиональной деятельности, привлечь для их решения соответствующий физико-математический аппарат

ОНК-5

Использует опыт мат. моделирования


Задачи, предлагаемые студентам, должны содержать некоторую «легенду». Например, вместо задачи: «Разработайте программу для вычисления НОК(a, b)», лучше предложить задачу «В велосипеде шестерня заднего колеса имеет a зубцов, а шестерня педали b зубцов. Какое наименьшее число оборотов должна сделать педаль, чтобы шестерни вернулись в свое первоначальное положение?. Разработайте соответствующую программу.»

Способность порождать новые идеи (креативность)

ОНК-7

Использует опыт программирования и поиска оптимального алгоритма

Задания студентам должны иметь несколько решений, отличающихся своей оптимальностью. Например, вычислить можно просто умножив 5 само на себя 999 раз, но более оптимально возводить в квадрат: = , = , = , = , = , = , = , = , = . Т.о. достаточно сделать 14 вместо 999 умножений. Соответствующая задача может звучать так: «Разработайте программу для быстрого вычисления ». После того как найдено оптимальное решение, возникает вопрос, почему оно оптимально: почему лучше возводить в квадрат, а не в куб, например. Ответ на него требует дополнительно исследования.

Способность к письменной и устной коммуникации на государственном языке и необходимое знание второго языка, владение иностранным языком на уровне, достаточном для разговорного общения, а также для поиска и анализа иностранных источников информации

ИК-1

Использует знания английского языка для чтения документации.

Изучение документации, написанной на английском языке.

Умение работать на компьютере, навыки использования основных классов прикладного программного обеспечения, работы в компьютерных сетях, составления баз данных

ИК-2

Демонстрирует умение разрабатывать программы на ассемблере х86 под Linux.

Разработка программ на ассемблере х86 под Linux (в качестве заданий в классе и дома).

Способность к целеполаганию, интеллектуальному, культурному, нравственному, физическому и профессиональному саморазвитию, стремление к повышению своей квалификации и мастерства

СЛК-11

Распознает в заданиях проблемы, к которым можно применить тот или иной подход. Выявляет возможности оптимизации.

Разработка программ на ассемблере х86 под Linux (в качестве заданий в классе и дома).

Способность применять в профессиональной деятельности современные языки программирования и языки баз данных, операционные системы, электронные библиотеки и пакеты программ, сетевые технологии и т.п.

ПК-9

Владеет языком ассемблера х86.

Изучение языка программирования ассемблер х86, как языка, лежащего в основе любого другого языка программирования более высокого уровня.



3Место дисциплины в структуре образовательной программы


Изучение данной дисциплины базируется на следующих дисциплинах:
  • Методы программирования

Для освоения учебной дисциплины, студенты должны владеть следующими знаниями и компетенциями:
  • Основные алгоритмы
  • Язык программирования Си

Основные положения дисциплины должны быть использованы в дальнейшем при изучении следующих дисциплин:
  • Язык программирования Си++
  • Операционные системы

4Тематический план учебной дисциплины




Название раздела

Всего часов

Аудиторные часы

Самостоя­тельная работа

Лекции

Семинары

Практические занятия

1

Основные элементы аппаратного обеспечения компьютера

6

2




2

2

2

Основные устройства компьютера

6

2




2

2

3

Конвейер: структурные конфликты

6

2




2

2

4

Конвейер: конфликты данных

6

2




2

2

5

Конвейер: конфликты управления

6

2




2

2

6

Предсказание переходов в конвейере

6

2




2

2

7

Параллелизм уровня инструкций

6

2




2

2

8

Динамическое планирование: алгоритм Табло

6

2




2

2

9

Динамическое планирование: алгоритм Томасуло

6

2




2

2

10

Архитектуры RISC и CISC

6

2




2

2

11

Организация кеш-памяти

6

2




2

2

12

Уменьшение частоты кеш-промахов: программная и аппаратная оптимизация

6

2




2

2

13

Операционная система, режимы процессора

6

2




2

2

14

Организация виртуальной памяти

6

2




2

2

15

Обработка исключений

6

2




2

2

16

Организация ввода-вывода

6

2




2

2

17

Суперскалярные процессоры

6

2




2

2

18

Векторная обработка

6

2




2

2

19

Кеш-память в многопроцессорных системах

6

2




2

2

20

Современные технологии: Hyper-Threading

6

2




2

2




Всего

120

40




40

40



5Формы контроля знаний студентов


Тип контроля

Форма контроля

1 год

Параметры

1

2

3

4

Домашнее задание







4, 7







Контрольная




5










Промежуточный

Зачет




х










Итоговый

Экзамен







х




письменная форма, 2-3 задачи на 1 пару

5.1Критерии оценки знаний, навыков


Текущий контроль осуществляется в виде домашних работ. Промежуточный контроль – зачет. Итоговый контроль - экзамен на последней неделе. Учитываются результаты домашней работы (ДР) и выполнение контрольного задания (КЗ). Оценка определяется по формуле: 0.3*ДР + 0.7*КЗ.

Домашняя и контрольная работы содержат несколько заданий, для каждого из которых необходимо реализовать программу на ассемблере. Для каждого из заданий студент должен представить текст программы.

6Содержание дисциплины


Основные элементы аппаратного обеспечения компьютера

Вентили НЕ, НЕ-И, НЕ-ИЛИ. Основные функциональные элементы ЭВМ: дешифратор, шифратор, триггеры, счетчики, регистры хранения, сдвига.

Количество часов аудиторной работы – 4 часа.

Объем самостоятельной работы – 2 часа. Домашняя работа – 1 час. Подготовка к практическим занятиям – 1 час.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Основные устройства компьютера

Арифметико-логическое устройство. Устройство управления. Запоминающее устройство. Схема простейшего АЛУ, выполняющего умножение чисел с плавающей точкой в прямом коде.

Количество часов аудиторной работы – 4 часа.

Объем самостоятельной работы – 2 часа. Домашняя работа – 1 час. Подготовка к практическим занятиям – 1 час.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Конвейер: структурные конфликты, конфликты данных, конфликты управления

Однопортовый конвейер MIPS с упорядоченной обработкой целочисленных операций. Производительность конвейера. Структурные (или аппаратные) конфликты. Конфликты данных. Минимизация конфликтов данных за счет пересылки. Классификация конфликтов данных. Статическое планирование инструкций компилятором (переупорядочивание) для сокращения простоев из-за конфликтов данных. Конфликты управления. Сокращение числа тактов простоя из-за переходов.

Количество часов аудиторной работы – 12 часа.

Объем самостоятельной работы – 6 часа. Домашняя работа – 3 часа. Подготовка к практическим занятиям – 3 часа.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Предсказание переходов

Статическое предсказание переходов компилятором. Задержанные переходы. Конвейер с поддержкой операций с плавающей точкой.

Количество часов аудиторной работы – 4 часа.

Объем самостоятельной работы – 2 часа. Домашняя работа – 1 час. Подготовка к практическим занятиям – 1 час.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Параллелизм уровня инструкций

Количество часов аудиторной работы – 4 часа.

Объем самостоятельной работы – 2 часа. Домашняя работа – 1 час. Подготовка к практическим занятиям – 1 час.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Динамическое планирование

Алгоритмы Табло и Томасуло

Количество часов аудиторной работы – 8 часов.

Объем самостоятельной работы – 4 часа. Домашняя работа – 2 часа. Подготовка к практическим занятиям – 2 часа.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Архитектуры RISC и CISC

Количество часов аудиторной работы – 4 часа.

Объем самостоятельной работы – 2 часа. Домашняя работа – 1 час. Подготовка к практическим занятиям – 1 час.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Кеш-память

Организация кеш-памяти. Уменьшение частоты кеш-промахов: программная и аппаратная оптимизация

Количество часов аудиторной работы – 8 часов.

Объем самостоятельной работы – 4 часа. Домашняя работа – 2 часа. Подготовка к практическим занятиям – 2 часа.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Операционная система

Взаимодействие с операционной системой, режимы процессора, системные вызовы. Организация виртуальной памяти.

Количество часов аудиторной работы – 8 часов.

Объем самостоятельной работы – 4 часа. Домашняя работа – 2 часа. Подготовка к практическим занятиям – 2 часа.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Обработка прерываний

Обработчики прерываний. Приоритеты прерываний и уровни маскирования. Опрос (polling) вместо прерываний: преимущества и недостатки. Классификация исключений. Привилегированный режим. Точные и почти точные исключения.

Количество часов аудиторной работы – 4 часа.

Объем самостоятельной работы – 2 часа. Домашняя работа – 1 час. Подготовка к практическим занятиям – 1 час.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Организация ввода-вывода

Понятие интерфейса и его характеристики. Магистрально-модульный принцип организации системы ввода-вывода. Контроллеры. Методы взаимодействия CPU с устройством I/O. Работа контроллера DMA. Системы хранения данных.

Количество часов аудиторной работы – 4 часа.

Объем самостоятельной работы – 2 часа. Домашняя работа – 1 час. Подготовка к практическим занятиям – 1 час.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Суперскалярные процессоры

Количество часов аудиторной работы – 4 часа.

Объем самостоятельной работы – 2 часа. Домашняя работа – 1 час. Подготовка к практическим занятиям – 1 час.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Векторная обработка

Обработка векторных инструкций. Расширения MMX, SSE.

Количество часов аудиторной работы – 4 часа.

Объем самостоятельной работы – 2 часа. Домашняя работа – 1 час. Подготовка к практическим занятиям – 1 час.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Кеш-память в многопроцессорных системах

Количество часов аудиторной работы – 4 часа.

Объем самостоятельной работы – 2 часа. Домашняя работа – 1 час. Подготовка к практическим занятиям – 1 час.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

Современные технологии: Hyper-Threading

Технология Intel: hyper-threading. Неупорядоченное исполнение команд. Выполнение нескольких программ операционной системой. Однопоточный процессор. Однопоточная SMP (Symmetric MultiProcessing – симметричная многопроцессорная обработка). Super-Threading (Супер-поточность). Hyper-Threading (Гипер-поточность).

Количество часов аудиторной работы – 4 часа.

Объем самостоятельной работы – 2 часа. Домашняя работа – 1 час. Подготовка к практическим занятиям – 1 час.

Для освоения раздела предусмотрена разработка программ на языке ассемблера х86.

Литература по разделу:

- Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

- Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

- Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

7Образовательные технологии

7.1Методические рекомендации преподавателю


Для лучшего понимания алгоритмов и их реализаций в виде программ (особенно рекурсивных) на некоторых лекциях и практических занятиях можно показать в отладчике (с помощью проектора) основные шаги исполнения программы.

7.2Методические указания студентам


Рекомендуется подготовка к каждому занятию по заданиям, озвученным преподавателем на предыдущем занятии. При этом важно не только решение задачи, но и оценка его оптимальности, сравнение нескольких решений.

8Оценочные средства для текущего контроля и аттестации студента

8.1Тематика заданий текущего контроля


Примерные задания для домашнего задания:

1. Написать программу перевода числа в строку, например на входе:

number dd 1234567890

as_string resb 20

на выходе:

as_string = ‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’, ‘8’, ‘9’, ‘0’ = 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x30 = “1234567890”


2. Написать программу перевода строки в число.

3. Написать программу для вычисления факториала.

8.2Вопросы для оценки качества освоения дисциплины


Примерный перечень вопросов к зачету (экзамену) по всему курсу или к каждому промежуточному и итоговому контролю для самопроверки студентов.
  1. Как реализовать функцию на ассемблере?
  2. Какие возможны варианты передачи аргументов функции?
  3. Каким образом функция может передать возвращаемое значение?
  4. Какие конфликты могут возникать в конвейере?
  5. Какие типы кешей существуют, их преимущества и недостатки?

8.3Примеры заданий промежуточного /итогового контроля


Написать программу «угадай число» под операционной системой Linux. Программа должна загадать число и отвечать больше, меньше, равно на каждую догадку пользователя.

9Порядок формирования оценок по дисциплине


Преподаватель оценивает домашние работы студентов. Оценки преподаватель выставляет в рабочую ведомость.

Результирующая оценка за текущий контроль учитывает результаты студента по текущему контролю следующим образом:

Отекущий = 0.4·Одз + 0.6·Окр

Результирующая оценка за итоговый контроль в форме экзамена выставляется по следующей формуле, где Оэкзамен – оценка за работу непосредственно на зачете:

Оитоговый = 0.6·Оэкзамен + 0.4·Отекущий


На пересдаче студенту не предоставляется возможность получить дополнительный балл для компенсации оценки за текущий контроль.

В диплом ставится оценка за итоговый контроль, которая является результирующей оценкой по учебной дисциплине.

10Учебно-методическое и информационное обеспечение дисциплины

10.1Базовый учебник


Таненбаум Э. Архитектура компьютера. СпБ. "Питер". 2003.

10.2Основная литература


Марек Р. Ассемблер на примерах. СпБ. "Наука и Техника". 2005. ISBN 5-94387-232-9.

t.ru/department/hardware/archhard2.

10.3Дополнительная литература


Hennessy J.L., Patterson D.A. Computer Architecture, a Quantitative Approach. Morgan Kaufman, 3rd Edition, 2002, ISBN 1-55860-724-2.

ru.

t.ru.

10.4Справочники, словари, энциклопедии

10.5Программные средства


Для успешного освоения дисциплины, студент использует следующие программные средства:
  • Ассемблер Nasm
  • Дебаггер Ald
  • Компилятор gcc
  • Дебаггер gdb

10.6Дистанционная поддержка дисциплины

11Материально-техническое обеспечение дисциплины


Проектор может использоваться для демонстрации лекций.


Автор М.В. Бацын