Министерство образования Российской Федерации Санкт-Петербургский государственный электротехнический университет “ЛЭТИ” РАБОЧАЯ ПРОГРАММА дисциплины КОМПЬЮТЕРНАЯ АРИФМЕТИКА Для подготовки дипломированных специалистов по направлению 654600 – “Информатика и вычислительная техника” по специальности 220100 – “Вычислительные машины, комплексы, системы и сети”. Санкт-Петербург 2002 Санкт-Петербургский государственный электротехнический университет “ЛЭТИ” “УТВЕРЖДАЮ” Проректор по учебной работе проф. ___________ Ушаков В.Н. “_____”_______________2002 г. РАБОЧАЯ ПРОГРАММА дисциплины КОМПЬЮТЕРНАЯ АРИФМЕТИКА Для подготовки дипломированных специалистов по направлению 654600 – “Информатика и вычислительная техника” по специальности 220100 – “Вычислительные машины, комплексы, системы и сети”. Факультет Компьютерных технологий и информатики Кафедра Вычислительной техники Курс – 3 Семестр –5 Лекции 48 ч. Практические занятия 16 ч. Аудиторные занятия Самостоятельные занятия Всего часов Экзамен семестр 5 64 ч. 60 ч. 124 ч. Санкт-Петербург 2002 2 Рабочая программа обсуждена на заседании кафедры Вычислительной техники “____”_______________2002 г., протокол №______. Рабочая программа составлена в соответствии с государственным образовательным стандартом по направлению 654600 – “Информатика и вычислительная техника” и специальности 220100 – “Вычислительные машины, комплексы, системы и сети”. Рабочая программа согласована с рабочей программой изученной ранее дисциплины: 1) Организация ЭВМ и систем. Рабочая программа одобрена методической комиссией факультета Компьютерных технологий и информатики “____”_____________2002г. 3 Цели и задачи дисциплины 1. Изучение основ представления данных, теории арифметических кодов, элементарных приемов обработки чисел с фиксированной и плавающей точкой, теории и практики мониторинга арифметических погрешностей, стандарта IEEE (P-754) и его реализации, арифметических аспектов языков программирования, направлений специализации арифметических систем 2. Формирование навыков анализа и синтеза программно-аппаратных арифметических объектов. Требования к уровню освоения дисциплины В результате изучения дисциплины студенты должны: 1. ЗНАТЬ основы представления данных, теорию арифметических кодов на базе понятия модели числа, элементарные приемы обработки чисел с фиксированной и плавающей точкой, теорию и практику мониторинга арифметических погрешностей, стандарт IEEE (P-754) и его реализацию, арифметические аспекты языков программирования, направления специализации арифметических систем; 2. УМЕТЬ проводить анализ и синтез программно-аппаратных арифметических объектов на базе четкого понимания механизма отображения данных на структуру; 3. ИМЕТЬ ПРЕДСТАВЛЕНИЕ о современном состоянии и проблематике компьютерной реализации математических операций на всех уровнях иерархии вычислительных систем. Содержание рабочей программы Введение Цель курса "Машинная арифметика и микропрограммное управление". Структура курса. Понятие компьютерной арифметики. Данные и информация. Количественные меры. Тема 1. Понятие операционного устройства. Общие сведения об иерархии управления и иерархии аппаратуры. Уровни рассмотрения операционных устройств: архитектура, организация, структура, реализация. Тема 2. Числа как объект машинной обработки. Понятие системы счисления. Модель числа. Понятие системы счисления и производные понятия. Инструментарий. Двоичная система счисления. Тема 3. Арифметические коды. Коды: натуральный, прямой, дополнительный, обратный. Их обоснование. Ключевая таблица формул количественного эквивалента. Принцип инвариантности представления положительных чисел. Тема 4. Элементарные приемы арифметической обработки. Алгебраическое сложение и проблема переполнения. Расширение разрядной сетки и арифметические сдвиги. 4 Тема 5. Представление данных с фиксированной точкой. Вариантность положения двоичной точки. Характерные форматы. Базовая арифметика с фиксированной точкой. Каноническое АЛУ. Схемы формирования признаков результата. Понятие функционально полного набора арифметических операций. Тема 6. Представление данных с плавающей точкой. Введение в предметную область. Система нотации. Иерархия моделей данных вещественного типа. Обзор типичных форматов. Начальные сведения о стандарте IEEE (P-754). Базовая арифметика с плавающей точкой. Машинный нуль как особый объект обработки. Тема 7. Арифметические погрешности. Обзор типов вычислительных погрешностей: методическая, трансформированная, инструментальная. Способы измерения и количественные оценки. Взаимовлияние погрешностей. Теория и практика мониторинга трансформированной и инструментальной погрешностей. Вероятностные оценки результатов арифметических операций. Тема 8. Методы и способы округления. Классификация методов округления, инструментарий, графоаналитическая интерпретация, сравнительный анализ, области преимущественного использования. Тема 9. Стандарт IEEE (P-754). Обзор стандарта IEEE (P-754) на представление данных с плавающей точкой, его анализ и обоснование. Характерные объекты формата: формализованные и денормализованные числа, не-числа, актуальная бесконечность. Тема 10. Реализация стандарта IEEE (P-754) на примере математического сопроцессора К1810ВМ87 (i8087). Концепция и архитектура сопроцессора; его регистровая модель. Обзор системы инструкций. Тема 11. Арифметические инструкции сопроцессора К1810ВМ87. Пооперационный анализ арифметических инструкций. Примеры реализации расширенного набора элементарных и специальных функций. Особенности ассемблерного программирования. Тема 12. Арифметические аспекты языков программирования. Арифметические аспекты языков высокого уровня. Арифметика ассемблерного уровня. Тема 13. Функциональная ориентация операционных блоков. Классификация и обзор вычислительных систем с точки зрения функциональной ориентации их операционных блоков. Арифметические расширители, специализированные процессоры, функционально ориентированные процессоры, проблемно-ориентированные вычислительные системы, универсальные вычислительные системы. Обзор нетрадиционных арифметических систем. Тема 14. Алгоритмы арифметических операций и схемы арифметических устройств. Алгоритмы арифметических операций (сложение, умножение, деление) и комбинационные и микропрограммные схемы арифметических устройств. Тема 15. Способы повышения производительности арифметических устройств. 5 Обзор основных направлений повышения производительности: специализация, распараллеливание, конвейеризация. функциональная Перечень практических занятий № 1 2 3 4 Наименование темы занятия Элементарные приемы арифметической обработки План занятия: 1) преобразование чисел из одного арифметического кода в другой; 2) алгебраическое сложение и фиксация переполнения; 3) расширение разрядной сетки и арифметические сдвиги. Базовые операции с фиксированной точкой. План занятия: 1) канонические способы выполнения сложения, умножения и деления; 2) влияние положения двоичной точки на форматирование результата. Базовые операции с плавающей точкой. План занятия: 1) практические следствия качественного разнообразия форматов; 2) канонические способы выполнения сложения, умножения и деления. Математический сопроцессор К1810ВМ87. План занятия: 1) пооперационный анализ арифметических инструкций сопроцессора; 2) реализация различных элементарных и специальных функций. Номер темы программы 4 5 6 11 6 Распределение учебных часов по темам и видам занятий № темы 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Название разделов и тем Введение. Понятие операционного устройства Числа как объект машинной обработки. Понятие системы счисления. Арифметические коды Элементарные приемы арифметической обработки Представление данных с фиксированной точкой Представление данных с плавающей точкой Арифметические погрешности Методы и способы округления Стандарт IEEE (P-754) Реализация стандарта IEEE (P-754) на примере математического сопроцессора К1810ВМ87 (i8087). Арифметические инструкции сопроцессора К1810ВМ87 Арифметические аспекты языков программирования Функциональная ориентация операционных блоков Алгоритмы арифметических операций и схемы арифметических устройств Способы повышения производительности арифметических устройств Курсовое проектирование Индивидуальное домашнее задание Реферат ИТОГО: Объем учебных часов Аудит. занятия Самост. работа Всего Семест р 2 2 2 2 4 4 6 6 5 5 3 3 4 3 7 4 4 7 11 5 5 4 4 8 4 12 5 4 4 8 4 12 5 3 3 3 3 4 4 4 4 7 7 7 7 5 5 5 5 7 4 11 5 2 2 4 6 5 3 3 4 7 5 6 6 4 10 5 4 4 4 8 5 * * * * 60 124 Лекци и Лабор. занятия Практ. занятия 3 3 3 3 3 48 4 16 64 7 ЛИТЕРАТУРА Основная № Название, библиографическое описание 1 Грушин В.В. Выполнение математических операций в ЭВМ. Основы представления данных: Учеб. пособие /ГЭТУ.- СПб, 1994. Грушин В.В. Выполнение математических операций в ЭВМ. Погрешности компьютерной арифметики: Учеб.пособие /СПбГЭТУ.- СПб, 1999. Карцев М.А. Арифметика цифровых машин.- М.: Наука, 1969 2 3 4 5 Каган Б.М., Каневский М.М. Цифровые вычислительные машины и системы. / Учеб. пособие для вузов. М. Энергия, 1973, 1985. Угрюмов Е.П. Цифровая схемотехника. / Учеб. пособие для вузов. СПб. BHV, 2001. К-во экз. в Пз Кп Инд. Л Лр библ. (С) (р) зад. (на каф.) Гриф Ф 3973.23 __________ 5 151 5 80 5 58 621.399 __________ 5 215 К 27 621.399 __________ 5 68 У Г 91 Ф 3973.23 __________ У Г 91 К 12 621.399 __________ К 12 Дополнительная № Название, библиографическое описание 1 2 Кнут Д. Искусство программирования для ЭВМ.- Т.2.- М.: Мир, 2001. Угрюмов Е.П. Проектирование элементов и узлов ЭВМ. / Учеб. пособие для вузов. М. Высшая школа, 1987. К-во экз. в библ. (на каф.) 7 216 8 Авторы: к.т.н., доц. Рецензент д.т.н., проф. Миронов С.Э. Водяхо А.И. Зав. кафедрой Вычислительной техники д.т.н., проф Пузанков Д.В. Декан факультета Компьютерных технологий и информатики д.т.н., проф. Герасимов И.В. Программа согласована: Зав. кафедрой Вычислительной техники д.т.н., проф Пузанков Д.В. Зав. отделом учебной литературы Киселева Т.В. Председатель методической комиссии факультета компьютерных технологий и информатики к.т.н., доц. Чугунов Л.А. Руководитель методического отдела к.т.н., доцент Марасина Л.А. 9