Технология программирования
Общий курс
Составитель: к.ф.-м.н., доцент Сергеев С.Л.
1. Компьютерная арифметика.
- Системы счисления.
- Форматы чисел.
- Коды чисел.
- Диапазон и точность.
- Нечисловые данные.
- Выполнение арифметических операций.
- Выполнение логических операций.
2. Принципы организации однопроцессорной машины.
- Основные блоки компьютера и их функции.
- Адреса, адресность машины.
- Регистры.
- Основные блоки процессора. Этапы выполнения команды.
3. Алгоритмы и управление их выполнением.
- Языки программирования. Ассемблер.
- Локальные операции. Команды.
- Виды адресов в команде.
- Разветвления и циклы. Переменные адреса. Индексация.
- Признаки результата.
- Реализация команд управления в различных архитектурах.
4. Подпрограммы.
- Процедуры и функции.
- Виды адресов в подпрограммах. Настройка подпрограмм.
- Компиляция и интерпретация.
- Аппаратная поддержка организации подпрограмм. Стек. Базирование.
- Макроассемблер. Макросы.
- Прерывания, микропрограммы, сопроцессоры.
5. Операционные системы и их аппаратная поддержка.
- Монопольный режим.
- Пакетная обработка.
- Многозадачный режим. Контроллеры. Защита памяти.
- Режим разделения времени. Приоритеты.
- Надежность.
- Основные функции операционных систем и их аппаратная поддержка.
6. Методы повышения быстродействия памяти.
- Иерархия памяти.
- Пространственная и временная локальность
- Кэш-память и стратегии ее использования.
- Расслоение памяти.
7. Методы повышения быстродействия процессора.
- Конвейер команд. Предсказание переходов.
- Компьютеры с несколькими АЛУ.
- Изменение порядка исполнения команд.
- Переименование регистров.
- Переключение контекста.
- Скалярные и суперскалярные компьютеры.
- Мультискалярные компьютеры.
8. Суперкомпьютеры.
- Векторные и матричные компьютеры.
- Многопроцессорные компьютеры и многомашинные комплексы.
- Векторизация и распараллеливание алгоритмов.
- Машины потоков команд и машины потоков данных.
- Транспьютеры.
- Нейрокомпьютеры.
Список рекомендуемой литературы:
- Сергеев С.Л. Компьютерная арифметика.- СПб.: Изд-во С.-Петербург. ун-та, 1995.
- Джермейн К. Программирование на IBM/360: Пер. с англ.- М.: Мир, 1978.
- Корнеев В.В., Киселев А.В. Микропроцессоры.- М.: Нолидж, 2000.
- Корнеев В.В. Параллельные вычислительные системы.- М.: Нолидж, 1999.
- Гук М. Процессоры Pentium II, Pentium Pro и просто Pentium.- СПб.: Питер, 1999.
- Шагурин И.И. Микропроцессоры и микроконтроллеры фирмы MOTOROLA.- М.: Радио и связь, 1998.
- Жаров А. Железо IBM 2001. Ежегодник. М.: МикроАрт.
- Амамия М., Танака Ю. Архитектура ЭВМ и искусственный интеллект: Пер. с яп.- М.: Мир, 1993.