Рабочая учебная программа по дисциплине «Системное программное обеспечение» Направление №230100 «Информатика и вычислительная техника»
Вид материала | Рабочая учебная программа |
- Рабочая учебная программа по дисциплине «Базы данных» Направление №230100 «Информатика, 115.03kb.
- Рабочая учебная программа по дисциплине вычислительная математика специальность: 230100, 133.73kb.
- Учебная программа (Syllabus) Дисциплина: «Информатика» Специальность Вычислительная, 323.55kb.
- Рабочая учебная программа по дисциплине «Программирование на языке высокого уровня», 119.59kb.
- Рабочая учебная программа по дисциплине «Математическая логика и теория алгоритмов», 69.99kb.
- Рабочая учебная программа по дисциплине «Информатика» Направление №230100 «Информатика, 91.73kb.
- Рабочая учебная программа по дисциплине «Прикладное программное обеспечение» Направление, 64.54kb.
- Методика рейтингового контроля знаний студентов по дисциплине «Системное программное, 42.76kb.
- Рабочая программа дисциплина системное программное обеспечение направление, 92.28kb.
- Рабочая программа учебной дисциплины днн. 02 Современные научные проблемы автоматизированных, 221.23kb.
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«МАТИ» - РОССИЙСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ
имени К.Э. ЦИОЛКОВСКОГО
Кафедра «Проектирование вычислительных комплексов»
РАБОЧАЯ УЧЕБНАЯ ПРОГРАММА
по дисциплине «Системное программное обеспечение»
Направление № 230100 «Информатика и вычислительная техника»
Шифр учебного плана: 230100.03пвк
Факультет № 6
Выпускающая кафедра: Проектирование вычислительных комплексов
Форма обучения: очная
Количество часов по дисциплине: 144
Цикл дисциплин: С
Распределение времени студента по видам учебных занятий
(часы аудиторных занятий/самостоятельная работа)
Семестр | 5 | |
По учебному плану (АР/СР) | 64/80 | |
Лекции (АР/СР) | 32/40 | |
Лабораторные работы (АР/СР) | 32/40 | |
Практические занятия (АР/СР) | - | |
Курсовая работа (0/СР) | - | |
Форма контроля | экзамен | |
Москва 2006 г.
-
ЦЕЛЬ И ЗАДАЧИ ДИСЦИПЛИНЫ, ЕЕ МЕСТО В УЧЕБНОМ ПРОЦЕССЕ
Цель преподавания дисциплины
Целью преподавания курса “Системное программное обеспечение” является введение студентов в круг основных понятий и идей, связанных с разработкой алгоритмических языков, компиляторов и операционных систем, которые необходимы для обеспечения плодотворной профессиональной деятельности специалистов по направлению 230100 “Информатика и вычислительная техника”.
- Задачи изучения дисциплины
Задачей изучения курса “Системное программное обеспечение” является получение знаний и выработка умений, необходимых при разработке и системных программ разных типов (в первую очередь ОС и компиляторов), а также при работе с указанными программными системами.
- Перечень тем и разделов предшествующих дисциплин, освоение которых необходимо для изучения данной дисциплины
Курс должен читаться после курса “Программирование на языках высокого уровня” и должен быть связан с курсом “Операционные системы”.
- СОДЕРЖАНИЕ ДИСЦИПЛИНЫ
- Наименования разделов и тем, объем в часах лекционных занятий.
5 семестр (32 часа)
№ | Тема и содержание | Кол-во часов |
| Общие вопросы Сферы применения языков программирования (научные исследования, коммерческие применения, искусственный интеллект, системное программирование и др.). Разработка и реализация языков программирования. Краткий исторический очерк. Классификация языков программирования. | 2 |
| Общие вопросы Характеристики (простота/ортогональность языка, управляющие структуры, типы и структуры данных, синтаксическая структура языка, поддержка абстракции, обработка исключительных ситуаций и др.) и критерии оценки языков программирования (читабельность, легкость создания, надежность программ). | 2 |
| Синтаксис и семантика языков программирования Понятия синтаксиса и семантики. Задача описания синтаксиса языка программирования. Методы формального описания синтаксиса. Форма Бэкуса-Наура. Контекстно-свободные грамматики. Деревья синтаксического анализа. Приоритет операторов, ассоциативность операторов. Расширенные формы БНФ. Синтаксические графы. Статическая семантика. Виды динамической семантики (операционная, аксиоматическая, денотационная). | 2 |
| Синтаксис и семантика языков программирования Приоритет операторов, ассоциативность операторов. Расширенные формы БНФ. Синтаксические графы. Статическая семантика. Виды динамической семантики (операционная, аксиоматическая, денотационная). | 2 |
| Основные понятия и конструкции языков программирования Имена. Основные вопросы их реализации. Специальные слова, ключевые и зарезервированные слова. Переменные и их атрибуты: имя, адрес, значение, тип. Время жизни переменной. | 2 |
| Основные понятия и конструкции языков программирования Область видимости. Концепция связывания (способы связывания, статические, автоматические, динамические переменные). Именованные константы. Инициализация переменных. | 2 |
| Основные понятия и конструкции языков программирования Типы данных. Проверка типов, строгая типизация, совместимость типов. Простые типы данных (целые, вещественные, логические, литерные). Перечислимые и интервальные типы. Массивы и строки. Записи, объединения, множества. Ссылочный тип. | 4 |
| Основные понятия и конструкции языков программирования Выражения. Арифметические выражения. Порядок выполнения операторов. Порядок вычисления операндов. Перегрузка операторов. Преобразования типов. Отношения и булевские выражения. Сокращенные вычисления. | 2 |
| Основные понятия и конструкции языков программирования Операторы присваивания. Основные вопросы реализации: множественные целевые объекты, условные целевые объекты, составные и унарные операторы присваивания, присваивание как выражение. | 2 |
| Основные понятия и конструкции языков программирования Операторы. Составные операторы. Операторы ветвления: двухвариантные, вложенные, многовариантные. Специальные слова и замыкание операторов ветвления. Операторы цикла. | 2 |
| Основные понятия и конструкции языков программирования Циклы со счетчиком, логически управляемые циклы, циклы с механизмом управления, размещаемым пользователем. Эволюция операторов цикла и особенности реализации в разных языках программирования. Переходы и метки. | 4 |
| Основные понятия и конструкции языков программирования Подпрограммы. Процедуры и функции. Параметры. Методы передачи параметров: по значению, по имени, по ссылке. Их использование в разных языках программирования. Побочные эффекты. Реализация подпрограмм. | 2 |
| Непроцедурные парадигмы программирования Объектно-ориентированное программирование. Инкапсуляция, наследование, полиморфизм. История и проблемы разработки объектно-ориентированных языков. Краткий обзор языков C++ и Java. Функциональное программирование. Возникновение и применение. Языки Lisp и ПЛЭНЕР. Сравнение функциональных и императивных языков. Логическое программирование. Язык Prolog и его применение. | 4 |
- Лабораторные занятия, их содержание и объем в часах
5 семестр (32 часа)
№ | Тема и содержание | Кол-во часов |
| Программная реализация эвристического алгоритма планирования выполнения набора задач ОС. | 8 |
| Программная реализация алгоритма перевода арифметического выражения в бесскобочную форму записи. | 8 |
| Программная реализация алгоритма перевода арифметического выражения в триады на основе стеков с приоритетами. | 8 |
| Программная реализация алгоритма перевода языковых конструкций в бесскобочное представление. | 8 |
-
САМОСТОЯТЕЛЬНАЯ РАБОТА
5 семестр
- Проработка конспекта лекций и изучение дополнительной литературы по основным темам лекций (40 часов).
- Подготовка к лабораторным занятиям (40 часа)
-
УЧЕБНО-МЕТОДИЧЕСКИЕ МАТЕРИАЛЫ ПО ДИСЦИПЛИНЕ
4.1. Основная литература.
1. Гордеев А.В., Молчанов А.Ю. Системное программное обеспечение СПб., Питер, 2003.
2. Вирт Н. Алгоритмы и структуры данных М., Мир, 2000.
4.2. Дополнительная литература.
1. Грис. Д. Конструирование компиляторов для цифровых вычислительных машин. – М., Мир, 1975.
2. Ахо А., Сети Р., Ульман Дж. Компиляторы
3. Пратт Т., Зелковиц М. Языки программирования: реализация и разработка. – СПб., Питер, 2001.
4. Себеста Р. Основные концепции языков программирования М., Вильямс, 2001.
5. Андреева Е, Фалина И. Системы счисления и компьютерная арифметика – М., Лаборатория базовых знаний, 2003.
- Перечень технических средств обучения по данной дисциплине
- ПК не менее Pentium 4-\2.4G\256Mb\40Gb;