1.3.1. Двоичные числа.
Основной формой представления числовых значений в ЭВМ являются двоичные числа. Двоичные числа – это значения представленные в двоичной системе счисления. Числовые значения могут быть двух типов: целые и действительные и для их изображения в ЭВМ используют две формы: с фиксированной запятой (точкой) и с плавающей запятой (точкой).
Представление числа с фиксированной запятой имеет следующий формат (структуру):
(1.5)
Разряд с номером «n» является знаком числа: знак «+» кодируется цифрой 0, а знак «» - цифрой 1. Разряды от 0 до n-1 являются цифровыми. Запятая фиксируется в определённом месте относительно разрядов числа. Обычно она находится или перед старшим разрядом или после младшего. Формат числа с фиксированной запятой после младшего разряда служит для изображения целых чисел N. Число разрядов n определяет диапазон значений, которые могут быть представлены в этом формате: N[-(2n-1),+(2n-1)].
Увеличение количества цифровых разрядов n на единицу расширяет диапазон значений в два раза.
Выполнение операций над целыми числами, изображаемыми словами фиксированной длины, имеет следующие особенности. Операции сложения и вычитания определены только в том случае, если результат может быть представлен в n цифровых разрядах, т. е. если результат |C|<2n. В противном случае говорят, что результат переполняет размерную сетку ЭВМ. Если |C|2n в процессоре формируется признак переполнения, используемый для прекращения вычислений.
Формат числа с запятой, фиксированной перед старшими разрядом, используется для представления действительных чисел, принадлежащих отрезку [-(1-2-n),+(1-2-n)] и изменяются с шагом 2-n. В отличие от целых, они представляются приближённо с погрешностью =2-(n+1). Отсюда следует, что количество цифровых разрядов определяет точность представления значений числами с фиксированной запятой. С увеличением n на один дополнительный разряд погрешность уменьшается в два раза.
Выполнение операций над действительными числами в форме с фиксированной запятой имеет следующие особенности. Операции сложения и вычитания определены в том случае, если результат может быть представлен в форме с фиксированной запятой, т.е. если результат |C|<1. В противном случае фиксируется переполнение. Деление А/B возможно, если B0 и |A|<|B|.
В современных ЭВМ для представления действительных чисел широкое распространение получил другой способ – представление чисел с плавающей запятой. При этом число представляется в виде:
Z=MdP (1.6)
где d – основание чисел с плавающей запятой.
P – целое число, называемое порядком числа Z;
M – мантисса числа Z.
Как видно из (1.6) число представляет собой произведение мантиссы и экспоненты по основанию d, поэтому такое представление называют также экспоненциальным.
Обычно d=2r, r=1,2,… В качестве основания d чаще всего используется значение 2 или 16. Мантисса числа с плавающей запятой всегда меньше единицы, и если выполняется условие:
, (1.7)
то такое число называется нормализованным. В противном случае число называется ненормализованным.
Число с плавающей запятой имеет следующий формат:
(1.8)
Разряд m+p+1 слова представляет знак числа, который одновременно является знаком мантиссы. Мантисса М представляется m – разрядным числом с фиксированной запятой. Знак порядка кодируется «m+p» - ым разрядом слова. Порядок Р является целым числом и занимает р разрядов с m по m+p+1. У нормализованных чисел r старших разрядов мантиссы не равны нулю.
В ЭВМ знак порядка и порядок представляются одним (р+1) – разрядным целым значением Х, называемым характеристикой числа с плавающей запятой, которая связана с порядком соотношением:
X=2P+P, (1.9)
С учётом этого порядок определяется по значению характеристики Х следующим образом:
P=2P-X, (1.10)
где 0X2P+1-1
Как следует из (1.9) и (1.10), значение характеристики 0,1,2,…,2P используются для представления порядков –2P,-(2P-1),-(2P-2),…,0 соответственно, а значения характеристики 2P+1, 2P+2,…,2P+(2P-1) – значения для представления порядков 0,1,2,…,2P–1. При этом нулевое значение старшего разряда характеристики соответствует знаку порядку минус, а единичное значение – знаку плюс. Таким образом, характеристика – это дополнительный код порядка с инверсным представлением знака. Использование характеристики несколько упрощает алгоритм операций над числами с плавающей запятой.
Учитывая, что и , и , получим, что нормализованные числа с плавающей запятой обеспечивают представление значений в диапазоне
(1.11)
с предельной относительной погрешностью
(1.12)
так как 2-m<<1, выражение (1.11) преобразуется к виду
, (1.13)
или переходя к десятичному основанию,
(1.14)
За счёт ненормализованных чисел диапазон значений Z расширяется слева на . В этой области значения представляются с предельной относительной погрешностью, лежащий в интервале Из (1.13) и (1.14) видно, что диапазон определяется величиной основания и порядком, а точность представления чисел количеством разрядов мантисс. Увеличение основания d приводит к существенному расширению диапазона значений, а погрешность при этом увеличивается незначительно. По этой причине в ЭВМ общего назначения, к которым принадлежат ЕС ЭВМ, IBM 360/370, использовалось основание 16.
Из–за ограниченности числа разрядов мантиссы и порядка при выполнении операций над числами с плавающей запятой могут возникать следующие особые случаи.
Потеря значимости имеет место при выполнении операций сложения и вычитания, когда при равных порядках модули мантисс равны с точностью до m старших разрядов. В этом случае выполнение операции приводит к числу с нулевой мантиссой и ненулевым порядком, т.е. к числу без значащих цифр. Полученное значение рассматривается как машинный нуль, который представляется словом с нулевыми значениями во всех разрядах.
Исчезновение порядка происходит, когда порядок результата должен иметь значение, меньшее –2P – максимального по модулю отрицательного порядка. В таком случае результат приходиться представлять машинным нулём.
Переполнение порядка возникает, когда порядок результата должен иметь значение, превосходящее максимально возможное (2Р-1). Такое значение не может быть представлено в формате (1.8), поэтому результат операции считается неопределённым, что отличается выработкой признака переполнения.
Деление на нуль, которое невозможно, что отличается выработкой признака переполнения.
В современных ЭВМ используются целые числа и числа с плавающей запятой. Целые числа представляются в формате с фиксированной запятой (1.5), расположенной после младшего разряда. Используется представление целых чисел со знаком и без знака. Для примера рассмотрим представление целых чисел в персональных ЭВМ IBM PC.
Для представления действительных чисел с различной точностью используются несколько форматов чисел с плавающей запятой. В персональных ЭВМ IBM PC используются следующие форматы:
- 0.1. Понятие организации эвм.
- Функция, структура и организация систем.
- Основные факторы, влияющие на принципы построения эвм.
- 0.2. Содержание курса.
- 1. Представление информации в эвм.
- 1.1. Системы счисления.
- 1.1.1. Позиционные системы счисления.
- Пример 1.1.
- 1.1.2. Двоично-кодированные системы счисления.
- Пример 1.2.
- 1.2. Преобразование из одной системы счисления в другую.
- 1.2.1. Преобразование целых чисел. Метод деления.
- Пример 1.7.
- Метод деления.
- Пример 1.8.
- Пример 1.9.
- 1.3. Представление информации в эвм.
- 1.3.1. Двоичные числа.
- 1.3.2. Кодирование десятичных чисел и алфавитно-цифровой информации.
- Пример 1.10.
- Пример 1.11.
- 1.3.3. Логические значения.
- 1.4. Машинные коды.
- 1.4.1. Прямой код.
- Пример 1.12.
- 1.4.2. Дополнительный код.
- Пример 1.13.
- 1.4.3. Обратный код числа.
- Пример 1.14.
- 1.4.4. Выполнение арифметических действий с кодами.
- Пример 1.15.
- 1.4.5. Признаки переполнения разрядной сетки.
- Пример 1.16.
- Пример 1.17.
- 2. Синтез комбинационных устройств.
- 2.1 Логические переменные и функции.
- Физическая природа.
- Пример 2.1.
- 2.2 Элементарные функции.
- 2.2.1 Функции одной переменной.
- Элемент повторения.
- Элемент «не».
- 2.2.2 Функции двух переменных.
- 2.3 Функции многих переменных.
- Примеры (2.2.) базисов:
- Основные законы Булевского базиса:
- Действия с константами «0» и «1»:
- Правило введения и исключения лишних связок:
- 2.4. Задание функции комбинационных логических схем.
- Пример 2.5.
- Пример 2.6.
- 2.6. Минимизация нормальных форм булевых функций.
- 2.7 Минимизация с помощью диаграмм Карно.
- 2.8 Топологическая интерпретация правил минимизации.
- Правила минимизации:
- 2) Коэффициент объединения по входу.
- 3) Быстродействие.
- Пример 2.10.
- 2.9.1 Порядок синтеза комбинационных схем.
- 2.9.2 Элементы «и», «или», «не».
- 2.9.3 Элементы «и-не», «или-не».
- Пример 2.14.
- 2.10. Цифровые устройства на программируемых бис с матричной структурой.
- 2.10.1. Матричная реализация булевых функций.
- 2.10.2. Программируемые логические матрицы (плм).
- 2.10.3. Другие структуры матричных бис.
- Постоянные запоминающие устройства (пзу).
- Пример 2.15.
- Программируемая матрица вентилей (пмв).
- Программируемые матрицы логики (пмл).
- 3. Построение цифровых устройств автоматного типа.
- 3.1. Понятие автомата.
- 3.2. Синтез абстрактных автоматов.
- 3.2.1. Определение абстрактного автомата.
- 3.2.2. Методы задания автоматов.
- Задание автомата в виде графа переходов и выходов.
- Пример 3.1.
- Задание автомата в виде таблиц переходов и выходов.
- Задание автомата в виде матриц переходов и выходов.
- Табличная форма представления матриц переходов и выходов.
- 3.2.3. Минимизация числа внутренних состояний абстрактных автоматов.
- 3.3. Структурный синтез конечных автоматов.
- 3.3.1 Этапы структурного синтеза автоматов.
- 3.3.2. Кодирование символов алфавитов абстрактных автоматов.
- С труктурная схема автомата.
- Проблемы возникающие при кодировании.
- Пример 3.2.
- 3.3.3. Получение кодированной таблицы переходов и выходов.
- Пример 3.3.:
- 3.3.4. Определение функций внешних переходов.
- 3.3.5 Элементарные автоматы и их свойства.
- 3.3.6 Определение функций возбуждения элементарных автоматов.
- Литература: