
- •Основы прикладной теории цифровых автоматов
- •Основы прикладной теории цифровЫх автоматов
- •Оглавление
- •Предисловие
- •Глава 1. Информационные основы цифровых автоматов
- •1.1. Информация и общие принципы ее преобразования
- •1.2. Обмен информацией между различными информационными устройствами
- •1.3. Аппаратные средства хранения и обработки информации
- •1.4. Общие понятия о цифровом автомате и алгоритме
- •Глава 2. Представление числовой информации в цифровом автомате
- •2.1. Системы счисления и понятие кода
- •2.2. Выбор системы счисления
- •2.3. Формальные правила двоичной арифметики
- •2.4. Перевод числа из одной позиционной системы счисления в другую
- •Глава 3. Формы представления чисел в цифровых автоматах
- •3.1. Форма представления двоичных чисел с фиксированной запятой
- •3.2. Представление отрицательных чисел в формате с фиксированной запятой
- •3.3. Форма представление чисел с плавающей запятой
- •3.4. Перевод чисел из формата с фиксированной запятой в формат с плавающей запятой и обратно
- •3.5. Погрешности представления чисел
- •20 [A]ф 2n - 1 для целых чисел
- •Глава 4. Арифметические действия с двоичными числами
- •4.1. Сложение двоичных чисел
- •4.1.1. Алгебраическое сложение чисел, представленных в форме с фиксированной запятой
- •4.1.2. Переполнение разрядной сетки
- •4.1.3. Модифицированный прямой, обратный и дополнительный код
- •4.1.4. Алгебраическое сложение чисел, представленных в форме с плавающей запятой
- •4.2. Умножение двоичных чисел
- •4.2.1. Методы умножения двоичных чисел
- •4.2.2. Умножение чисел, представленных в форме с фиксированной запятой
- •4.2.3. Умножение чисел, представленных в форме с плавающей запятой
- •4.2.4. Ускорение операции умножения
- •4.3. Деление двоичных чисел
- •4.3.1. Деление двоичных чисел, представленных в форме с фиксированной запятой.
- •4.3.2. Деление двоичных чисел, представленных в форме с плавающей запятой.
- •4.4. Оценка точности выполнения арифметических операций
- •4.4.1. Погрешность округления
- •Глава 5. Выполнение операций над десятичными числами
- •5.1. Представление десятичных чисел в д-кодах
- •5.2. Формальные правила поразрядного сложения в д-кодах
- •5.3. Представление отрицательных чисел в д-кодах
- •5.4. Выполнение операций сложения и вычитания в д-кодах
- •5.5. Умножение чисел в д-кодах
- •5.6. Деление чисел в д-кодах
- •5.7. Перевод чисел из д-кода в двоичный и из двоичного в д-код
- •Глава 6 контроль работы цифрового автомата
- •6.1. Основные понятия теории кодирования
- •6.2. Кодирование по методу четности-нечетности
- •6.3. Коды Хеминга
- •6.4. Контроль по модулю
- •6.5. Контроль арифметических операций
- •Глава 7. Основы алгебры логики
- •7.1. Основные понятия алгебры логики
- •7.2. Свойства элементарных функций алгебры логики
- •7.3. Аналитическое представление функций алгебры логики
- •7.4. Совершенные нормальные формы
- •7.5. Системы функций алгебры логики
- •7.6. Числовое и геометрическое представление логических функций
- •Глава 8. Упрощение и минимизация логических функций
- •8.1. Задача минимизации
- •8.2. Метод Квайна и импликантные матрицы
- •8.3. Метод Карно (диаграммы Вейча)
- •Глава 9. Методы анализа и синтеза логических электронных схем
- •9.1. Логические операторы электронных схем или цепей
- •9.1.1. Задачи анализа и синтеза электронных схем
- •9.2. Синтез логических схем с одним выходом
- •9.3. Электронные схемы с несколькими выходами
- •9.4. Временные булевы функции и последовательностные автоматы
- •Глава 10. Введение в теорию автоматов и структурный синтез цифровых автоматов
- •10.1. Основные понятия и определения
- •10.2. Методы структурного синтеза и языки описания цифровых автоматов
- •10.3. Элементарный автомат (триггерный элемент)
- •10.4. Синтез цифрового автомата с памятью
- •Глава 11 алгоритмы реализации арифметических действий в цифровых автоматах
- •11.1. Общие принципы разработки алгоритмов
- •11.2. Алгоритмы реализации арифметических действий с операндами, представленными в форме с фиксированной запятой
- •11.2.1.Сложение и вычитание
- •11.2.2. Умножение
- •11.2.3. Деление
- •11.3 Алгоритмы реализации арифметических действий с операндами, представленными в форме с плавающей запятой
- •11.3.1. Сложение и вычитание
- •11.3.2. Умножение
- •11.3.3. Деление
- •11.4. Блок-схемы регистра накапливающего сумматора
- •11.4.1. Для работы с обратным кодом
- •11.4.2. Для работы с дополнительным кодом
- •11.5. Алгоритм извлечения квадратного корня операнда с плавающей запятой
- •Определения основных понятий и терминов
- •Литература
Глава 3. Формы представления чисел в цифровых автоматах
Формой представления чисел в цифровых автоматах называется совокупность правил, позволяющих установить взаимное соответствие между записью числа и его количественным эквивалентом.
Машинное (автоматное) изображение числа это есть представление числа в разрядной сетке цифрового автомата. Условное обозначение машинного изображения числа, например, A будем представлять как [A].
Из-за ограниченной длины машинных слов, множество чисел, которые можно представить в машине конечное. Сравнение различных форм представления чисел в компьютерах обычно производится на основе оценки диапазона и точности представления числа.
В повседневной практике наиболее распространенной является форма представления чисел в виде последовательности цифр, разделенной запятой на целую и дробную части. Числа, представленные в такой форме, называются числами с естественной запятой или числами в естественной форме. В естественной форме число записывается в естественном натуральном виде, например 12560 - целое число, 0,003572 - правильная дробь, 4,89760 - неправильная дробь.
При представлении чисел в такой форме обязательно требуется для каждого числа указание о положении его запятой в разрядной сетке, выделенной для представления числа в машине, что требует дополнительных аппаратных затрат достаточно большого объема. Поэтому в компьютерах получили распространение две другие формы представления: с фиксированной и плавающей запятой.
3.1. Форма представления двоичных чисел с фиксированной запятой
Необходимость в указании положения запятой отпадает, если место запятой в разрядной сетки машины заранее фиксировано раз и навсегда. Такая форма представления чисел называется представлением с фиксированной запятой (точкой).
Так как числа бывают положительные и отрицательные, то формат (разрядная сетка) машинного изображения разбивается на знаковую часть и поле числа. В поле числа размещается само изображение числа, которое мы будем условно называть мантиссой числа. Для кодирования знака числа используется самый старший разряд разрядной сетки, отведенной для изображения двоичного числа, а остальные разряды отводятся под мантиссу числа. Положение запятой в разрядной сетке строго фиксируется, обычно или правее самого младшего разряда мантиссы, или левее самого старшего. В первом случае число представляется как целое, во втором - как правильная дробь. В настоящее время в подавляющем большинстве в компьютерах в формате с фиксированной точкой представляются целые числа.
В знаковую часть записывается информация о знаке числа. Принято, что знак положительного числа "+" изображается символом 0, а знак отрицательного числа "-" изображается символом 1.
Например, в двоичном коде, используя 6-разрядную сетку, число 7 в форме с фиксированной запятой можно представить в виде:
0.001112,
где цифра левее точки это знак числа, а пять цифр правее точки - мантисса числа в прямом коде. Здесь подразумевается, что запятая фиксирована правее младшего разряда, а точка в изображении числа в данном случае просто разделяет знаковый бит от мантиссы числа.
В дальнейшем часто будет использоваться в примерах такой вид представления числа в машинной форме. Можно использовать и другую форму представления числа в машинной форме:
[0]001112,
где знаковый разряд выделяется квадратными скобками.
Количество разрядов в разрядной сетке, отведенное для изображения мантиссы числа, определяет диапазон и точность представления числа с фиксированной запятой. Максимальное по абсолютной величине двоичное число изображается единицами во всех разрядах, исключая знаковый, т.е. для целого числа
|A|max = (2(n-1) - 1),
где n - полная длина разрядной сетки. В случае 16-разрядной сетки
|A|max = (2(16-1) - 1) = 3276710 ,
т.е. диапазон представления целых чисел в этом случае будет от +3276710 до -3276710 .
Для случая, когда запятая фиксируется правее младшего разряда мантиссы, т.е. для целых чисел, числа, у которых модуль больше, чем
(2(n-1) - 1) и меньше единицы не представляются в форме с фиксированной запятой. Числа, по абсолютной величине меньше единицы младшего разряда разрядной сетки, называются в этом случае машинным нулем. Отрицательный ноль запрещен.
В некоторых случаях, когда можно оперировать только модулями чисел, вся разрядная сетка, включая самый старший разряд, отводится для представления числа, что позволяет расширить диапазон изображения чисел.