№ п/п | Название и содержание тем | Контрольная работа (номер и тема по п.2) | Лабораторная работа с указанием вида 1 (по п.1) | Оснащение контрольных и лабораторных работ (по п.5) | Литература (по п.4) | Рекомендуе-мый объем для изучения (в часах)2 | Форма контроля знаний (зачет по контрольной работе, тесты, защита лабораторной работы, защита курсового проекта, экзамен, зачет) |
2 | |||||||
ЧАСТЬ 1. АЛГОРИТМИЧЕСКИЙ ЯЗЫК СИ | |||||||
РАЗДЕЛ 1. ОСНОВНЫЕ ЭЛЕМЕНТЫ ЯЗЫКА СИ | |||||||
1. | Тема 1. Основные характеристики языка Си.Общий синтаксис алгоритмического языка Си. Типы данных. Элементарный ввод/вывод. Структура программы на Си. | — | — | — | Л1, разд. 1 | ||
2. | Тема 2. Операции.Операции и выражения. Операция присваивания. Арифметические и побитовые операции. Преобразование типов. Приоритеты в Си. | — | — | — | Л1, разд. 2 | ||
3. | Тема 3. Операторы управления вычислительным процессом.Принятие решений. Условный оператор if. Операции отношения. Логические операции. Операция условия. Оператор switch. Циклы for, while, do...while. Операция запятая. Операторы break, continue. | — | — | — | Л1, разд. 3 | ||
РАЗДЕЛ 2. УКАЗАТЕЛИ | |||||||
4. | Тема 4. Работа с указателями.Указатели. Операции с указателями. | — | — | — | Л1, разд. 4 | ||
РАЗДЕЛ 3. СТРУКТУРНЫЕ ТИПЫ ДАННЫХ | |||||||
5. | Тема 5. Массивы. Объявление. Связь массивов и указателей. Инициализация массивов. Динамическое распределение памяти. Массивы указателей и их инициализация. | — | 1** | 2 – 7 | Л1, разд. 4 | Защита лабораторной работы | |
6. | Тема 6. Строки. Объявление. Работа со строками. | — | 1** | 2 – 7 | Л1, разд. 6 | Защита лабораторной работы | |
7. | Тема 7. Структуры. Объявление. Доступ к элементам структуры. Оператор typedef. Указатели на структуру. Массивы структур. Поля. Объединения. Перечисления. | — | 2 – 7 | Л1, разд. 8 | Зачет по контрольной работе | ||
РАЗДЕЛ 4. ФУНКЦИИ | |||||||
8. | Тема 8. Функции. Объявление функции. Передача параметров функциям. Рекурсивные функции. Передача массивов функциям. | — | — | — | Л2, разд. 5 | ||
РАЗДЕЛ 5. ДИНАМИЧЕСКИЕ СТРУКТУРЫ ДАННЫХ | |||||||
9. | Тема 9. Списки.Структуры, ссылающиеся на себя. Списки, кольца. Операции над списками. Стеки. Операции над стеками. Очереди. Операции над очередями. | — | 2** | 2 – 7 | Л1, разд. 9 | Защита лабораторной работы | |
10. | Тема 10. Бинарные деревья. Объявление бинарного дерева. Операции над бинарными деревьями. | — | 2** | 2 – 7 | Л1, разд. 9 | Защита лабораторной работы | |
РАЗДЕЛ 6. РАБОТА С ФАЙЛАМИ | |||||||
11. | Тема 11. Файлы. Типы файлов. Функции для работы с файлами. | — | 2 – 7 | Л1, разд. 10 | Зачет по контроль-ной работе | ||
РАЗДЕЛ 7. ПРЕПРОЦЕССОР ЯЗЫКА СИ | |||||||
12. | Тема 12. Препроцессор языка Си. Макроподстановка без параметров и с параметрами. Управление компиляцией. | — | — | — | Л1, разд. 11 | ||
Зачет | |||||||
ЧАСТЬ 2. АЛГОРИТМИЧЕСКИЙ ЯЗЫК АССЕМБЛЕР | |||||||
РАЗДЕЛ 8. ОСНОВНЫЕ ЭЛЕМЕНТЫ ЯЗЫКА АССЕМБЛЕР | |||||||
- | Тема 13. Архитектура современного микропроцессора. Регистровая архитектура современного микропроцессора. Регистр флагов. Адресация. | — | — | — | Л2, разд. 1 | ||
- | Тема 14. Структура программы на языке Ассемблер.Директивы сегментации MASM и TASM. Структура программы. Форматы машинных команд. | — | — | — | Л2, разд. 2, разд. 4 | ||
- | Тема 15. Определение данных. Представление данных в компьютере. Первичные элементы языка Ассемблер. Директивы EQU и «=». Директивы определения данных. Определение адресов ячеек памяти. | — | — | — | Л2, разд. 3 | ||
РАЗДЕЛ 9. ОСНОВНЫЕ КОМАНДЫ ЯЗЫКА АССЕМБЛЕР | |||||||
- | Тема 16. Команды пересылки данных. Режимы адресации. Команды пересылки данных. Команды работы со стеком.. Команды ввода/вывода через порты. | — | — | — | Л2, разд. 5, разд. 6 | ||
13. | Тема 17. Команды двоичной арифметики. Сложение, вычитание, умножение и деление двоичных чисел. Переполнение при выполнении команд сложения, вычитания и деления. Команды преобразования типов. Команды сравнения | — | — | — | Л2, разд. 7 | ||
14. | Тема 18. Команды десятичной арифметики.Арифметика упакованных и неупакованных BCD-чисел. | — | — | — | Л2, разд. 7 | ||
- | Тема 19. Управляющие команды.Логические команды. Команды сдвига и циклического сдвига. Команды безусловного и условного перехода. Команды управления циклами | — | — | — | Л2, разд. 9, разд. 10 | ||
15. | Тема 20. Обработка строк.Команды обработки строк. Табличное преобразование | — | 4** | 1, 3, 5 – 7 | Л2, разд. 11 | Защита лабораторной работы | |
РАЗДЕЛ 10. СЛОЖНЫЕ СТРУКТУРЫ ДАННЫХ | |||||||
16. | Тема 21. Выражения и операторы. Сложные структуры данных. Массивы. | — | 3** | 1, 3, 5 – 7 | Л2, разд. 14 | Защита лабораторной работы | |
РАЗДЕЛ 11. ПОДПРОГРАММЫ | |||||||
17. | Тема 22. Процедуры.Объявлениепроцедур. Стеки.Передача параметров процедурам | — | 1, 3, 5 – 7 | Л2, разд. 13 | Зачет по контрольной работе | ||
- | Тема 23. Макросредства. Создание и вызов макроопределений. Макрооператоры и макродирективы. | — | — | — | Л2, разд. 15 | ||
РАЗДЕЛ 11. ПРЕРЫВАНИЯ | |||||||
- | Тема 24. Обработка прерываний.Команды прерывания. Организация ввода/вывода через прерывание | — | — | — | Л2, разд. 12 | ||
Экзамен Защита курсового проекта |
|
|
|
|
1 * – выполняется аудиторно, ** – выполняется виртуально
1. ЛАБОРАТОРНЫЕ ЗАНЯТИЯ, ИХ ХАРАКТЕРИСТИКА
№ пп | Тема | Содержание | Форма проведения | Объем в часах |
Первая часть | ||||
1. | Массивы и строки | Разработка, отладка и выполнение программ на примерах обработки массивов и строковых данных языка Си. Указания к выбору варианта лабораторной работы. Номер вашего варианта равен: 1 плюс остаток от деления номера вашей зачетной книжки (его двух последних цифр, стоящих после дефиса) на тридцать. | Виртуальная | |
2. | Работа с динамическими структурами данных | Разработка, отладка и выполнение программ обработки динамических структур языка Си. Указания к выбору варианта лабораторной работы. Номер вашего варианта равен: 1 плюс остаток от деления номера вашей зачетной книжки (его двух последних цифр, стоящих после дефиса) на тридцать. | Виртуальная | |
Вторая часть | ||||
3. | Обработка массивов | Разработка, отладка и выполнение программ на примерах обработки массивов языка Ассемблер. Указания к выбору варианта лабораторной работы. Номер вашего варианта равен: 1 плюс остаток от деления номера вашей зачетной книжки (его двух последних цифр, стоящих после дефиса) на пятнадцать. | Виртуальная | |
4. | Обработка строковых данных | Разработка, отладка и выполнение программ на примерах обработки строковых данных языка Ассемблер. Указания к выбору варианта лабораторной работы. Номер вашего варианта равен: 1 плюс остаток от деления номера вашей зачетной книжки (его двух последних цифр, стоящих после дефиса) на пятнадцать. | Виртуальная |
2. КОНТРОЛЬНЫЕ РАБОТЫ, ИХ ХАРАКТЕРИСТИКА
|
|
№ пп | Тема | Характеристика | Рекоменду-емый объем в часах |
Первая часть | ||||
1. | Работа с типом данных «структура» | Для заданного преподавателем варианта составить алгоритм решения задачи и соответствующую программу на языке Си. Указания к выбору варианта контрольной работы. Номер вашего варианта равен: 1 плюс остаток от деления номера вашей зачетной книжки (его двух последних цифр, стоящих после дефиса) на тридцать. | ||
2. | Разработка алгоритма решения задачи и соответствующей программы на языке Си с использованием файлов | Для заданного преподавателем варианта составить алгоритм решения задачи и соответствующую программу на языке Си. Указания к выбору варианта контрольной работы. Номер вашего варианта равен: 1 плюс остаток от деления номера вашей зачетной книжки (его двух последних цифр, стоящих после дефиса) на тридцать. | ||
Вторая часть | ||||
3. | Использование подпрограмм языка Ассемблер | Для заданного преподавателем варианта составить алгоритм решения задачи и соответствующую программу на языке Ассемблер с использованием подпрограмм. Указания к выбору варианта контрольной работы. Номер вашего варианта равен: 1 плюс остаток от деления номера вашей зачетной книжки (его двух последних цифр, стоящих после дефиса) на пятнадцать. | ||
3. КУРСОВОЙ ПРОЕКТ, ЕГО ХАРАКТЕРИСТИКА
№ пп | Тема | Характеристика | Рекомендуе-мый объем в часах |
1. | Примерная тематика индивидуальных заданий: 1. Обучающие программы. 2. Программная имитация дискретных и непрерывных процессов. 3. Задачи оптимизации. 4. Задачи численного интегрирования. 5. Задачи численного решения систем уравнений и дифференциальных уравнений. 6. Работа с динамическими структурами. 7. Работа с графикой. 8. Использование элементов объектно-ориентированного программирования. | Целью выполнения курсовой работы является углубление теоретических знаний и практических навыков в области алгоритмизации задач и разработки программных средств. В ходе выполнения курсовой работы студент получает индивидуальное задание, разрабатывает алгоритм его реализации, исходный текст программы на языке Си, отлаживает и выполняет программу на компьютере. Примерный объем исходного текста программы – 300 операторов языка Си. Пояснительная записка должна содержать примерно 25-35 стр. текста (описание входных и выходных данных, метода решения, схемы алгоритма, назначение применяемых в программе переменных и т.п.) и листинг программы. Примерное количество часов на выполнение курсовой работы 40 часов самостоятельной работы студента. Конкретная тема выдается преподавателем. | Примерное количество часов на выполнение курсовой работы 40 часов самостоятельной работы студента. |
4. ЛИТЕРАТУРА
|
|
4.1. ОСНОВНАЯ
1. Бахтизин В.В. Электронный учебно-методический комплекс «Конструирование программ и языки программирования»: Учеб. пособие. Часть 1. – Мн.: БГУИР, 2010.
2. Бахтизин В.В., Мусин С.Б. Электронный учебно-методический комплекс «Конструирование программ и языки программирования»: Учеб. пособие. Часть 2. – Мн.: БГУИР, 2010.
3. Зубков С.В. Assembler. - М.: ДМК Пресс, 1999.
4. Касаткин А.И., Вальвачев А.И. От Turbo C к Borland C++. - Мн.: Высш. школа, 1992.
5. Керниган Б., Ритчи Л., Фьюер А. Язык программирования Си. Задачи по языку СИ. - М.: Финансы и статистика, 1985.
6. Пирогов В.Ю. ASSEMBLER. Учебный курс. - М: Нолидж, 2001.
7. Универ Р. Язык Тurbo C. - М.: Мир, 1991.
8. Уэйт М., Прата С., Мартин Д. Язык СИ. - М.: Мир, 1988.
9. Юров В. Assembler. - СПб.: Питер, 2001.
4.2. Дополнительная
10. Абель П. Язык программирования для IBM PC. - М.: Высшая школа, 1992.
11. Берри Р., Микинз Б. Язык Си. Введение для программистов. - М.: Финансы и статистика, 1988.
12. Болски М.И. Язык программирования Си. - М.: Радио и связь, 1988.
13. Бредли Д. Программирование на языке Ассемблер для персональных компьютеров фирмы IBM. - М.: Радио и связь, 1988.
14. Григорьев В.Л. Программирование однокристальных микропроцессоров. -М.: Энергоатомиздат, 1987.
15. Дао Л. Программирование микропроцессора 8088. - М.: Мир, 1988.
16. Жаров С. Shareware. Профессиональная разработка и продвижение программ. – СПб, 2003.
17. Злобин В.К., Григорьев В.Л. Программирование арифметических операций в микропроцессорах.- М.: Высш. школа, 1991.
18. Кормен Т., Лейзерсон Ч., Ривест Р. Алгоритмы: Построение и анализ. – СПб, 2003.
19. Котлинская Г.П., Галиновский О.И. Программирование на языке Си. – Мн., 1991.
20. Одинцов И. Профессиональное программирование. Системный подход. – СПб, 2003.
21. Орлов С.А. Технологии разработки программного обеспечения: Учеб. Пособие. – СПб, 2003.
22. Романовская Л.М., Русс Т.В., Свитковский С.Г. Программирование в среде Си для ПЭВМ ЕС.- М.: Финансы и статистика, 1991.
23. Скенлок Л. Персональные ЭВМ IBM РС и ХТ. Программирование на языке Ассемблера. - М.: Радио и связь, 1989.
24. Соммервилл И. Инженерия программного обеспечения. – СПб, 2003.
25. Уилсон С. Принципы проектирования и разработки программного обеспечения. Учебный курс. – СПб, 2003.
26. Хенкок Я., Кригер М. Введение в программирование на языке Си. - М.: Радио и связь. - М.: Мир, 1993.
27. Шелест В.Д. Программирование: Структурный подход. Алгоритмы. Turbo Pascal. Borland C++. Современный Fortran. – СПб, 2003.
28. Юлин В.А., Булатова И.Р. Приглашение к Си. - Мн.: Выш. школа, 1990.
29. Ю-Чжен-Лю, Гибсон Г. Микропроцессоры семейства 8086/8088. - М.: Радио и связь, 1987.
5. ПЕРЕЧЕНЬ КОМПЬЮТЕРНЫХ ПРОГРАММ, НАГЛЯДНЫХ И ДРУГИХ ПОСОБИЙ, МЕТОДИЧЕСКИХ УКАЗАНИЙ И МАТЕРИАЛОВ И ТЕХНИЧЕСКИХ СРЕДСТВ ОБУЧЕНИЯ
Перечень методических материалов и пособий
1. Бахтизин В.В. и др. Лабораторный практикум по курсам "Конструирование программ и языки программирование" и "Программирование". Часть 4 Программирование на Ассемблере с использованием отладчика Turbo Debugger. - Мн.: БГУИР, 1996.
2. Бахтизин В.В., Глухова Л.А. Лабораторный практикум по курсам "Конструирование программ и языки программирование" и "Программирование". Часть 3. Программирование на языке Си в среде Турбо для ПЭВМ. - Мн.: БГУИР, 1993.
3. Бахтизин В.В., Глухова Л.А. и др. Методические указания по вычислительной практике и самостоятельной работе по курсам "Программирование" и "Конструирование программ и языки программирования" для студентов специальности "Вычислительные машины, комплексы, системы и сети", "Программное обеспечение ЭВМ и автоматизированных систем" и слушателей спецфакультета переподготовки по направлению "Микропроцессорные системы". Части 1, 2, 3, 4. - Мн.: Ротапринт МРТИ, 1989 – 1992.
4. Бахтизин В.В., Марина И.М., Шостак Е.В. Учебно-методическое пособие по курсу «Конструирование программ и языки программирования». Ч.1.-Мн:Ротапринт БГУИР, 2006.