- •Основы компьютерной арифметики и логики
- •Предисловие
- •Глава 4, подготовленная доцентом о.П. Шафеевой, посвящена вопросам разработки алгоритмических моделей выполнения арифметических операций и моделирования на пэвм спроектированных алгоритмов.
- •Основы двоичной компьютерной арифметики
- •1.1. Позиционные системы счисления
- •Десятичная позиционная система счисления
- •Двоичная позиционная система счисления
- •1.1.3. Восьмеричная позиционная система счисления
- •1.1.4. Шестнадцатеричная позиционная система счисления
- •Сложение Вычитание
- •Перевод чисел из одной позиционной системы счисления в другую
- •1.2.1. Перевод целых чисел
- •1.2.2. Перевод правильных дробей
- •1.2.3. Перевод неправильных дробей из одной системы счисления в другую
- •1.2.4. Частный случай перевода чисел из одной системы счисления в другую
- •1.2.5. Перевод чисел из одной системы счисления в другую с использованием промежуточной двоично-десятичной системы
- •1.3. Представление чисел с фиксированной запятой (точкой)
- •1.4. Представление чисел с плавающей запятой (точкой)
- •1.5. Коды двоичных чисел
- •1.5.1. Прямой код
- •1.5.2. Обратный код
- •1.5.3. Модифицированный обратный код
- •1.5.4. Дополнительный код
- •2.1.1. Алгебраическое сложение чисел в дополнительном коде
- •2.1.2. Алгебраическое сложение чисел в обратном коде
- •2.1.3. Переполнение разрядной сетки при сложении чисел
- •2.2. Сложение (вычитание) двоичных чисел с плавающей запятой
- •2.2.1. Метод ускоренного сложения двоичных чисел с запоминанием переносов
- •2.3. Умножение двоичных чисел с фиксированной запятой
- •2.4. Машинные технологии выполнения операции умножения двоичных чисел с фиксированной запятой
- •2.5. Умножение двоичных чисел с плавающей запятой
- •2.6. Методы ускоренного выполнения операции умножения двоичных чисел
- •2.6.1. Метод пропуска такта суммирования
- •2.6.2. Метод анализа сомножителей
- •2.6.3. Метод расшифровки и одновременного умножения на два разряда множителя
- •2.6.4. Метод ускоренного умножения Мак-Сорли
- •2.6.5. Метод ускоренного умножения Лемана
- •2.6.6. Метод умножения с расшифровкой пар разрядов множителя и запоминанием переносов
- •2.7. Деление двоичных чисел с фиксированной запятой
- •2.8. Деление двоичных чисел с плавающей запятой
- •3. Основы десятичной компьютерной арифметики
- •3.1. Машинное кодирование десятичных чисел
- •3.2. Выполнение арифметических операций с десятичными числами
- •3.2.1. Сложение десятичных чисел в эвм
- •3.2.2. Умножение десятичных чисел в эвм
- •3.2.3. Ускорение умножения в -кодах
- •Деление десятичных чисел в эвм
- •4.2. Моделирование алгоритма сложения двоичных чисел
- •Различные случаи ненормализованных мантисс
- •4.3. Проектирование алгоритма умножения чисел
- •4.5. Проектирование алгоритма деления чисел
- •4.7. Разработка алгоритма вычисления квадратного корня
- •Определение 1. Пусть и произвольные множества. Соответствием называется тройка множеств
- •Свойства отношений
- •Эквивалентность
- •Толерантность
- •Отношения порядка
- •Самодвойственные функции
- •Монотонные функции
- •Линейные функции
- •Функции, сохраняющие константу
- •5.2.7. Минимизация булевых функций
- •Метод Блейка
- •Метод Квайна-Мак-Класки
- •Минимизация с использованием карт Карно
- •Дана функция четырех переменных (рис. 5.13):
- •Минимизация не полностью определенных булевых функций
- •Минимизация систем булевых функций
- •5.3. Методика синтеза комбинационных схем на логических элементах
- •5.3.1. Логические элементы
- •5.3.2. Общий алгоритм построения комбинационных схем
- •5.3.3. Синтез кс в классическом базисе
- •5.3.4. Синтез кс в базисах «и-не», «или-не»
- •5.3.5. Реализация кс в базисе Жегалкина
- •5.3.6. Синтез составных кс
- •Заключение
- •Библиографический список к главам 1, 2, 3, 4
- •Библиографический список к главе 5
Заключение
Рассмотренные в настоящем учебном пособии фундаментальные вопросы компьютерной арифметики и логики при глубоком их изучении студентами на первом и втором курсах составляют фундамент их общепрофессиональной подготовки и в значительной степени влияют на качество подготовки специалистов.
Учебное пособие построено так, что каждый теоретический материал, читаемый на лекциях, подкреплен многочисленными примерами, используемыми при проведении практических занятий, лабораторных работ и выполнении курсового проектирования. При этом лабораторная база для закрепления на практике теоретических знаний включает более пятидесяти персональных ЭВМ на платформе Pentium 4 и выше.
Учебное пособие составлено так, что позволяет проводить аттестацию студентов по отдельным разделам дисциплин по мере их изучения и тем самым повысить качество аттестации студентов.
Изучаемые первоначально фундаментальные понятия информатики, системы счисления, алгоритмы перевода чисел из любой системы счисления в любую другую, рассматриваемые алгоритмы выполнения основных арифметических операций над числами в двоичной и десятичной системе с фиксированной и плавающей запятой, а также многочисленные алгоритмы ускоренного выполнения операций компьютерной арифметики используются далее в курсе «Алгоритмические языки и программирование» алгоритмов и программ. В этом курсе на практических занятиях студентам предлагается путем восходящего проектирования разработать универсальный алгоритм перевода чисел из любой позиционной системы счисления в любую другую, проанализировать применение в ЭВМ систем счисления с основаниями 2, 8, 10, 16 и исследовать соответствующие компьютерные арифметические операции. Методом нисходящего проектирования студенты разрабатывают универсальный алгоритм-модель функционирования операционного устройства под числами с плавающей запятой. При этом проектируется первоначально общая модель, а затем выполняется ряд этапов детализации с учетом изученных алгоритмов. На таких занятиях развивается у студентов опыт программирования относительно сложных задач в профессионально ориентированной предметной области. Проверкой качественного усвоения полученных знаний и умения применять их на практике являются выполнение студентами курсовой работы, включающей самостоятельную разработку алгоритмов и программ их реализации на языке высокого уровня.
Следующей ступенью изучения материала учебного пособия являются проработка более сложных алгоритмов двоично-десятичной арифметики, основных понятий математической логики и переключательных (булевых) функций, вопросы их минимизации, а также изучение начальных стадий логического проектирования комбинационных схем и простейших операционных устройств. Закрепление у студентов полученных на данном этапе теоретических знаний осуществляется на практических и лабораторных занятиях с использованием моделирующих программ и персональных ЭВМ.
Библиографический список к главам 1, 2, 3, 4
Потапов В.И., Потапова Л.О. Введение в информатику и вычислительную технику: Учеб. пособие. – Омск: Изд-во ОмГТУ, 1995. – 138 с.
Савельев А.Я. Основы информатики: Учебник. – М.: Изд-во МГТУ, 2001. – 327 с.
Операции двоичной и десятичной арифметики в ЭВМ: Метод. указания к практическим занятиям по курсу «Прикладная теория цифровых автоматов» / Сост. И.А. Пальянов. – Омск: Изд. ОмПИ, 1990. – 36 с.
Потапов В.И. Методы ускоренного выполнения арифметических операций в ЦВМ: Учеб. пособие. – Омск: Изд. ОмПИ, 1980. – 87 с.
Савельев А.Я. Арифметические и логические основы цифровых автоматов: Учебник. – М.: Высш. школа, 1980. – 255 с.
Каган Б.М. Электронные вычислительные машины и системы: Учеб. пособие для вузов. – М.: Энергоатомиздат, 1991. – 592 с.
Гаврилов Ю.В., Пучко А.Н. Арифметические устройства быстро-действующих ЭЦВМ. – М.: Сов. радио, 1970. – 279 с.
Карцев М.А. Арифметика цифровых машин. – М.: Наука, 1969. – 575 с.
Моделирование на ЭВМ алгоритмов выполнения арифметических операций и синтез управляющих автоматов: Метод. указания / Сост. И.А. Пальянов, О.П. Шафеева. – Омск: Изд-во ОмПИ, 1988. – 36 с.