Читаем Искусство схемотехники. Том 2 [Изд.4-е] полностью

Практическое замечание по поводу нашей схемы: следует избегать чрезмерной нагрузки линий шины. В приведенной схеме к каждой линии Dn подключаются выходы четырех тристабильных регистров `173, что создает чрезмерную емкостную нагрузку. Хотя наш интерфейс будет, несомненно, работать правильно, его подключение ограничит число дополнительных плат, которые можно установить на шине (особенно, если остальные разработчики окажутся грешными в том же отношении!). В нашем случае следовало использовать тристабильный 8-разрядный буфер (микросхема `244), включив его между выходами D0-D7 и шиной данных PC. Сигнал разрешения микросхемы можно получить, образовав логическое И декодированного адреса и сигнала IOR.


10.23. Форматы чисел

Формат байтов (или слов), получаемых из частотомера в рассмотренном примере, отличается от внутримашинного двоичного формата; частотомер образует двоично-кодированные десятичные коды, упакованные по две цифры в байте (или четыре цифры в слове). Чтобы с этими числами можно было выполнять какие-то вычисления, их следует преобразовать в целые числа или в числа с плавающей точкой (хотя в системе команд микропроцессора предусмотрены и команды с «десятичной коррекцией», позволяющие выполнять арифметические операции непосредственно над упакованными двоично-кодированными десятичными числами). Рассмотрим форматы чисел, обычно используемые в компьютерах (рис. 10.24), предмет, кратко затронутый нами в начале гл. 8.



Рис. 10.24.Форматы чисел. S-знак.


Целые числа. Целые числа (integer) со знаком всегда представляются, как дополнение до 2 и занимают 1,2 или 4 байт (см. рис. 10.24). Старший бит является знаковым, хотя дополнение до двух не совпадает с представлением в виде знака и числа (т. е. — 1 записывается, как 11111111, а не 10000001; см. разд. 8.03). Дополнение до 2 можно представить себе, как «смещенное» двоичное[11] с инвертированным старшим битом; но можно рассматривать его и как целое число со значением бит, указанным на рис. 10.24. Многие компьютеры позволяют объявлять переменные, как целые без знака в дополнение к объявлению целых со знаком в виде дополнения до 2. Двухбайтовое беззнаковое целое может иметь значение от 0 до 65535.

Числа с плавающей точкой. Числа с плавающей точкой, называемые также действительными числами (real), обычно занимают 32 бит («одинарная точность») или 64 бит («двойная точность»), однако иногда для промежуточных результатов вычислений используется дополнительный 80-бит формат. К сожалению, имеется несколько употребительных представлений этих чисел. Наиболее распространен формат IEEE (официальное название ANSI/IEEE Std 754-1985), который реализован почти во всех микропроцессорных наборах с плавающей точкой (включая Intel 8087/287/287, Motorola 68881, а также наборы фирм AMD, Weitek и др.) и по этой причине является стандартным для микрокомпьютеров, использующих эти наборы (в том числе IBM PC).

На рис. 10.24 показаны 32-бит и 64-бит форматы IEEE. 32-бит формат одинарной точности предусматривает 1 знаковый бит, 8 бит порядка и 23 бит мантиссы. Порядок определяет степень 2, на которую следует умножить мантиссу (см. ниже). Порядок «смещен» путем прибавления 127, так что поле порядка 01111111 соответствует порядку 0; в результате диапазон порядка составляет от —127 до +128. Мантисса также записывается любопытным способом, который был впервые использован фирмой DEC в своем формате с плавающей точкой. Двоичное число с плавающей точкой всегда можно записать в виде f.fff x 2е, где f.fff — мантисса (по основанию 2) («значащая часть»), а е — порядок (степень 2). Для того чтобы получить при заданном числе бит мантиссы максимальную точность, она «нормализуется» путем сдвига влево (с соответствующим декрементом порядка), пока лидирующий бит не станет равен 1, в результате чего мантисса представляется в виде 1.fff x 2е. Далее, используется прием «скрытого бита». Поскольку результирующая значащая часть мантиссы всегда имеет ненулевой старший бит, хранить его в памяти было бы избыточно; вместо 1fff можно записать просто fff, где лидирующая 1 подразумевается. В результате точность числа возрастает, так как его представление увеличивается на 1 бит, образуя диапазон от ±1.2·10-38 до ±3.4·1038.

Упражнение 10.9. Сконструируйте на бумаге минимальное и максимальное нормализованные числа с плавающей точкой и убедитесь, что приведенные выше предельные значения соответствуют истине.


Перейти на страницу:

Похожие книги

Электроника для начинающих (2-е издание)
Электроника для начинающих (2-е издание)

В ходе практических экспериментов рассмотрены основы электроники и показано, как проектировать, отлаживать и изготавливать электронные устройства в домашних условиях. Материал излагается последовательно от простого к сложному, начиная с простых опытов с электрическим током и заканчивая созданием сложных устройств с использованием транзисторов и микроконтроллеров. Описаны основные законы электроники, а также принципы функционирования различных электронных компонентов. Показано, как изготовить охранную сигнализацию, елочные огни, электронные украшения, устройство преобразования звука, кодовый замок и др. Приведены пошаговые инструкции и более 500 наглядных рисунков и фотографий. Во втором издании существенно переработан текст книги, в экспериментах используются более доступные электронные компоненты, добавлены новые проекты, в том числе с контроллером Arduino.

Чарльз Платт

Радиоэлектроника / Технические науки
Искусство схемотехники. Том 3 (Изд.4-е)
Искусство схемотехники. Том 3 (Изд.4-е)

Широко известная читателю по предыдущим изданиям монография известных американских специалистов посвящена быстро развивающимся областям электроники. В ней приведены наиболее интересные технические решения, а также анализируются ошибки разработчиков аппаратуры: внимание читателя сосредотачивается на тонких аспектах проектирования и применения электронных схем. На русском языке издается в трех томах. Том 3 содержит сведения о микропроцессорах, радиотехнических схемах, методах измерения и обработки сигналов, принципах конструирования аппаратуры и проектирования маломощных устройств, а также обширные приложения. Для специалистов в области электроники, автоматики, вычислительной техники, а также студентов соответствующих специальностей вузов и техникумов.

Пауль Хоровиц , Уинфилд Хилл

Техника / Радиоэлектроника