
- •1. Представление информации в эвм
- •1.1. Общие положения
- •1.2. Цифровая форма представления информации
- •1.3. Системы счисления
- •1.3.1. Общие положения
- •1.3.2. Двоичная система счисления
- •1.3.3. Смешанные системы счисления
- •1.3.4. Таблицы сложения и умножения в двоичной системе счисления
- •1.3.5. Перевод чисел из одной системы счисления в другую
- •1.4. Способы представления чисел со знаком
- •1.4.1. Общие положения
- •1.4.2. Дополнительный код.
- •1.4.3. Обратный код
- •1.5. Формы представления числовых данных
- •1.5.1. Общие положения
- •1.5.2. Представление числовых данных с фиксированной запятой
- •1.5.3. Представление числовых данных с плавающей запятой
- •2. Представление символьной информации
- •3. Представление графической информация
- •4. Oсновы схемотехники
- •4.1. Основы математической логики
- •4.2. Логические элементы
- •4.3. Проектирование логических схем
- •4.3.1. Комбинационные схемы и конечные автоматы
- •4.3.2. Синтез комбинационных схем
- •4.4. Элементы памяти (триггеры)
- •С амыми универсальными и сложными являются jk-триггеры. Они могут строиться как со статическим, так и с динамическим управлением. Универсальный jk-триггер
- •4.5. Регистры
- •4.6. Счетчики
- •5. Арифметические основы эвм
- •5.1. Основные положения
- •5.2. Арифметические операции с плавающей запятой
- •5.3. Десятичная арифметика
- •5.4. Схемы выполнения основных операций над числами с фиксированной запятой в двоичной системе счисления
- •6. Теоретические основы проектирования устройств обработки информации
- •6.1. Микропрограммы выполнения арифметических операций
- •6.1.1. Структура арифметико-логического устройства (алу) эвм
- •6.2.1. Язык микроопераций для представления алгоритмов выполнения арифметических операций
- •7. Основы проектирования операционной части алу
- •7.1. Этапы проектирования
- •7. 2. Проектирование операционной части алу
- •7.2.1. Разработка структурной схемы операционной части алу
- •7.2.2. Разработка функциональной схемы операционной части алу
- •8. Проектирование управляющей части алу
- •8.1. Способы построения управляющей части алу
- •8.2. Проектирование управляющей части алу на основе конечных автоматов
- •8.2.1. Общие вопросы проектирования устройств управления на основе конечных автоматов
- •8.2.2. Основные этапы проектирования схем мпа
- •8.2.3. Проектирование мпа на основе автомата Мура
- •8.2.4. Проектирование мпа на основе автомата Мили
- •8.3. Проектирование микропрограммных устройств управления
- •8.3.1. Основные принципы работы микропрограммных устройств управления
- •8.3.2. Типы микропрограммных устройств управления
- •8.3.4. Кодирование поля микроопераций регистра микрокоманд
- •8.3.5. Кодирование поля адресов схемы формирования адресов микрокоманд
- •9. Глоссарий
5. Арифметические основы эвм
5.1. Основные положения
Основой всех арифметических операций в ЭВМ являются операции сложения/вычитания, умножения и деления.
Операнды могут задаваться в формате с фиксированной или с плавающей запятой; в двоичной или десятичной системах счисления; в прямом, обратном или дополнительном кодах.
Выполнение арифметических операций над числами может быть реализовано в виде последовательной или параллельной (по разрядам) обработки.
Обычно все операции над данными в современных ЭВМ выполняются параллельно-последовательно. Количество параллельно обрабатываемых разрядов определяется шириной трактов передачи и обработки информации. Обычно это 1, 2 , 4 или 8 байт. В десятичной арифметике и при обработке строк символов, вне зависимости от ширины трактов, используется побайтовая обработка данных.
Основными арифметическими операциями в ЭВМ являются операции:
сложения / вычитания,
умножения,
деления.
5.2. Арифметические операции с плавающей запятой
Обработка данных с плавающей запятой отличается тем, что она включает в себя, кроме обработки мантисс, обработку "сдвинутых" порядков (характеристик). При операциях сложения/вычитания вначале производится операция выравнивания порядков, а затем операция сложения/вычитания мантисс. При этом результирующая мантисса может оказаться ненормализованной дробью. В этом случае производится третий этап – нормализация результата.
Выравнивание порядков выполняется следующим образом:
сравниваются порядки операндов,
если порядки не равны, производится денормализация операнда с меньшим порядком. Мантисса сдвигается вправо с коррекцией порядка, до совпадения порядков обоих операндов.
Нормализация результата заключается в сдвиге мантиссы вправо (при переполнении) или влево с коррекцией порядка до получения нормализованной мантиссы.
Пример:
Операнд А=0,11112 × 21,, после выравнивания порядков А = 0,01112 × 22
Операнд В=0,11012 × 22,
Порядки операндов не равны. Производится денормализация операнда А. После выравнивания порядков А = 0,01112 × 22
С = А+В = 1,01002 × 22, после нормализации С = 0,10102 × 23.
С = В–А = 0,01002 × 22, после нормализации С= 0,10002 × 21.
При выполнении операций умножения или деления производятся следующие действия (возможно, параллельные) над компонентами чисел в формате с плавающей запятой:
умножение или деление мантисс,
сложение или вычитание порядков.
Если мантисса результата получается ненормализованной, то производится ее нормализация.
Пример:
Операнд А=0,10002 × 21,,
Операнд В=0,10012 × 22,
С=А × В
Умножение мантисс: МС = 0,10002 × 0,10012= 0,0100 10002 или, с учетом разрядности регистров, МС = 0,01002
Сложение порядков: ПС = 1+2=3 (21× 22=23)
Предварительный результат: С=0,01002× 23
Или, После нормализации мантиссы – С=0,10002 × 22.
Таким образом, операции обработки данных с плавающей запятой сводятся к серии операций над их компонентами (порядками и мантиссами) как с числами в формате с фиксированной запятой.