Digital circuitry part 3 9785907206175, 9785907206205

The third part of the textbook discusses the need for coding and the main types of codes used to represent numerical inf

206 48 68MB

Russian Pages [1198]

Report DMCA / Copyright

DOWNLOAD FILE

Polecaj historie

Digital circuitry part 3
 9785907206175, 9785907206205

Citation preview

В.А. Фролов

ЦИФРОВАЯ СХЕМОТЕХНИКА В четырех частях

Часть 3 Арифметическо-логические основы цифров цифровой ой схемотехники сх емотехники Рекомендовано Экспертным советом Федерального учебно-методического объединения в системе среднего профессионального образования по укрупненной группе профессий, специальностей (ФУМО СПО по УГПС) 23.00.00 «Техника и технологии наземного транспорта» в качестве учебника для использования в учебном процессе образовательных организаций и учреждений, реализующих программы по специальности 27.02.03 «Автоматика и телемеханика на транспорте (железнодорожном транспорте)». Регистрационный номер экспертного заключения 112 от 17 октября 2019 г.

Москва 2020

УДК 621.38 ББК 32.85 Ф91 Р е ц е н з е н т : преподаватель Орловского филиала Петербургского государственного университета путей сообщения (ПГУПС) А.С. Одиноков

Фролов В.А. Ф91 Цифровая схемотехника: учебник: в 4 ч. — М.: ФГБУ ДПО «Учебно-методиче ский центр по образованию на железнодорожном транспорте», 2020. ISBN 978-5-907206-17-5 Ч. 3.: Арифметическо-логические основы цифровой схемотехники. — 600 с.

ISBN 978-5-907206-20-5 В третьей части учебника рассмотрены вопросы о необходимости кодирования и основные виды кодов, применяемых для представления числовой информации в вычислительных системах обработки цифровой информации. Описано кодирование чисел в простых и модифицированных прямом, обратном и дополнительном двоичных кодах. Приведены правила кодирования двоично-десятич ных кодов одноразрядных чисел с переводом из одного вида ДДК в другой в отдельных приложениях с примерами выполнения кодирования. Изложены правила и примеры арифметических операций сложения десятичных чисел. В учебнике также раскрыты логические основы цифровой схемотехники и фундаментальное понятие алгебры логики, основные операции, законы и тождества. Также подробно рассмотрены процесс минимизации при построении логического устройства цифровой обработки информации, переключательных функций и методы перехода между ними, основы синтеза и анализа цифровых логических устройств, общие сведения о ЦИМС и область их применения. Учебник предназначен для студентов техникумов и колледжей железнодорожного транспорта по специальности «Автоматика и телемеханика на транспор транспорте те (железнодорожном транспорте)» и других специальностей, а также может служить пособием для инженерно-технического персонала различных отраслей промышленности и студентов высших технических учебных заведений железнодорожного транспорта и всех лиц, интересующихся современной цифровой схемотехникой.

УДК 621.38 ББК 32.85 ISBN 978-5-907206-20-5 (ч. 3) ISBN 978-5-907206-17-5

© Фролов В.А., 2020 © ФГБУ ДПО «Учебно-методический центр по образованию на железнодорожном транспорте», 2020

Список сокращений

АЦП БИС ДДК ДНФ

аналогово-цифровой преобразователь большая интегральная схема двоично-десятичный код дизъюнктивная нормальная форма представления переключательной функции ДРЛ ДР Л — диодно-резисторная логика ДТЛ — диодно-транзисторная логика ИИЛ или И 2Л — инжекционно-интегральная логика КНФ — конъюнктивная нормальная форма представления переключательной функции ЛЭ — логический элемент ПФ — переключательная функция РЕТЛ — резисторно-емкостная транзисторная логика РТЛ — резисторно-транзисторная логика СБИС — сверхбольшая интегральная схема СДНФ — совершенная дизъюнктивная нормальная форма СКНФ — совершенная конъюнктивная нормальная форма ТТЛ — транзисторно-транзисторная логика УГО — условное графическое обозначение элемента схемы ФАЛ — функция алгебры логики ЦАП — цифро-аналоговый преобразователь ЦИМС — цифровая интегральная микросхема ЦИС — цифровая интегральная схема ЭСЛ — эмиттерно-связанная логика — — — —

Раздел 3. АРИФМЕТИЧЕСКО-ЛОГИЧЕСКИЕ ОСНОВЫ ЦИФРОВОЙ СХЕМОТЕХНИКИ Глава 5. АРИФМЕТИЧЕСКИЕ ОСНОВЫ ЦИФРОВОЙ СХЕМОТЕХНИКИ

5.1 5. 1. Коди Кодирова рование ние чисе чисел л д л я вы выпол полнени нения я операц операций ий в ц ифровы ифровыхх устройс устройства твахх Рассмотренные форматы представления информации, которые позволяют обеспечивать точность ввода, хранения и выдачи информации, не могут обеспечить точность при непосредственном выполнении операций. Для обеспечения точности и простоты выполнения арифметических операций разработано большое количество различных специальных кодов, в частности, при двоичной системе счисления, когда операцию вычитания легко заменить операцией сложения. Возникновение различных систем кодирования связа но со стремлением придать коду какие-либо дополнительные свойства. Например, код, который обеспечивает большую равномерность ввода информации в управляющие устройства и упро щает преобразование чисел из одной системы счисления в другую и из одного кода в другой, позволяя при этом также упростить вычислительные операции и придать коду свойства обнаруже ния или исправления ошибок и др. Вообще-то, необходимость кодирования чисел определяется тем, что в цифровых устройствах, выполняющих арифметические операции, нерационально вводить числа в том виде, в котором они изображаются человеком на бумаге. 4

Код выбирают таким образом, чтобы дальнейшее преобразование информации выполнялось проще, а именно, чтобы легче было реализовать арифметические операции и подсчет сигналов, расшифровку кодов (декодирование), обнаружение и исправление ошибок, приведение к виду виду,, удобному для использования внешними устройствами и т.д. Известно большое количество кодов, систематизация и классификация которых из-за их многочисленных признаков является довольно затруднительной, в соответствии с этим рассмотрим некоторые разновидности кодов. Все коды можно разделить на две самостоятельные группы — неизбыточные и избыточные. К неизбыточным относятся коды, в которых используются все возможные комбинации, их также еще называют простыми или первичными, а к избыточным кодам относят коды, в которых только часть из всех возможных комбинаций. Оставшаяся часть кодовых комбинаций не несет информации о числах, а может использоваться для обнаружения ошибок при передаче и обработке сообщений. Также все коды в свою очередь подразделяются на равномерные — это коды, все комбинации которых содержат постоянное количество разрядов в представлении числовой информации, и неравномерные — коды, в которых информация представлена с различным числом разрядов. Необходимо отметить, что неравномерные коды имеют ограниченное применение, что особенно характерно для цифровых логических систем обработки информации, и в соответствии с этим, рассмотрение данного вида кодов не преду предусмотрено. смотрено. По весовому соотношению разрядов все коды подразделяются на взвешенные, в которых каждому разряду присваивается весовое соотношение (вес), и невзвешенные коды, разрядам которых нельзя присвоить «вес», а соответствие кода и числа определяется какимлибо иным способом. В зависимости от порядка следования степеней числа 2, определяющих весовое соотношение разрядов, взвешенные коды делятся на регулярные, в которых степени расположены в возрастающем порядке, т.е. весовое соотношение разрядов увеличивается от разряда к разряду в 2 раза, и нерегулярные нерегулярные,, если степени числа 2 расположены другим способом. 5

Под цифровым кодированием понимают условное представление числового значения величины определенным цифровым кодом последовательностью цифр (сигналов) в соответствии с принятой системой исчисления. В цифровой технике наиболее распространенными являются десятичный, двоичный и двоично-десятичный коды, а также применяются и некоторые другие коды, с прикладным применением на основе специальных программ обработки цифровой информации. В цифровых системах в целях упрощения выполнения арифметических операций с числами применяют двоичные коды для представления чисел, применение которых упрощает определение знака резуль результата тата операции, а также позволяет заменить операцию вычитания (или алгебраического сложения) чисел, арифметическим сложением кодов, облегчая выработку признаков переполнения разрядной сетки. В резуль результате тате чего упрощаются схемотехнические решения устройств, выполняющих арифметические операции. Числа, представляемые для цифровых устройств в двоичном коде, кодируются специальными простыми или модифицированными машинными двоичными кодами, как первичными: прямой, обратный и дополнительный машинные коды, которые используются для представления любой обрабатываемой информации, рассматривая модифицированные коды как разновидность простых кодов. Необходимо отметить, что понятие машинные коды нельзя отождествлять с машинной записью кода, при которой младший разряд кода записывается крайним слева, в то время как при математической записи кода младший разряд кода располагается справа. Машинные простые и модифицированные двоичные коды представляют,, в соответствии с классификацией, группу неизбыточных ставляют равномерных взвешенных регулярных кодов, которая достаточно полно позволяет представить числовые данные для выполнения с ними математических операций, применяя правила двоичной арифметики. Общая идея построения машинных кодов заключается в том, что код тракту трактуется ется как число без знака, а диапазон представляемых кодами чисел без знака разбивается на два поддиапазона, один из которых представляет положительные числа, другой — отрицательные. Разбиение выполняется таким образом, чтобы принадлеж6

ность к поддиапазону определялась максимально просто. Наиболее распространенным и удобным способом формирования машинных кодов является такой, при котором значение старшего разряда указывает на знак представляемых чисел, т.е. знаковый разряд — знаковое поле, а в остальных разрядах кода — цифры разрядов числа, как числовой компонент или числовой модуль, т.е. разряды, образующие числовое поле. Простые машинные двоичные коды — прямой, обратный и дополнительный коды, что равнозначно, могут быть представлены в естественной форме в рассмотренном ранее формате с фиксированной запятой, со знаковым разрядом. Однако, при простом математическом рассмотрении арифметических операций, можно кодировать информацию в виде чисел и без знакового разряда числа, что также может использоваться и при работе отдельных видов цифровых устройств. Беззнаковый способ представления информации может применяться, и применяется, в цифровых устройствах, которые производят математические операции числовыми значениями, представленными в обратном и дополнительном машинном двоичном коде. Для представления чисел, вводимых в цифровые устройства обработки информации, в двоичном коде, цифровые устройства производят перевод чисел из десятичной системы в двоичную систему и, наоборот наоборот,, при выводе, что занимает значительное машинное время особенно при решении задач с огромным количеством данных. В соответствии с этим, для решения задач с большим количеством данных были разработаны, и в современных цифровых системах широко используются, специальные так называемые двоично-десятичные коды на основе двоично-десятичной системы счисления, позволяющие представлять десятичные цифры посредством двоичных символов (0 и 1). Применение двоично-десятичных кодов при работе с числовой информацией в цифровых системах, несмотря на то, что требу требуется ется больше времени на вычисления, чем с двоичными кодами, значительно сокращает время на ввод и преобразование данных. Также облегчается связь человека с цифровыми устройствами, предоставляя возможность подготавливать и вводить исходную информацию в привычной для человека десятичной системе счисления, получая 7

результаты обработки информации также в десятичной системе. результаты С помощью специальных алгоритмов в цифровых устройствах обработки информации производятся операции над числами в десятичной системе счисления. В этом случае к способу кодирования десятичных чисел в двоично-десятичном коде предъявляются требования удобства выполнения арифметических операций над этими числами. Известен ряд способов двоично-десятичного кодирования десятичной информации, определяющих разновидность двоично-десятичных кодов, выбор которых определяется особенностью использования десятичной информации в цифровых устройствах. Двоично-десятичные числа, представляемые для цифровых устройств, также как и двоичные числа, кодируются специальными машинными двоичными кодами: прямой, обратный и дополнительный машинные двоично-десятичные коды (ДДК), в формате с фиксированной запятой, как правило, со знаковым разрядом. Знак числа кодируется кодиру ется одним разрядом, который не использу используется ется для фиксирования и обнаружения неправильного резуль результата тата числового значения при выполнении арифметических операций, т.к. со знаками чисел в ДДК арифметические действия не выполняются. Машинные ДДК, в соответствии с классификацией кодов, представляют группу равномерных взвешенных кодов, в основном избыточных, которые могут быть как регулярными, так и нерегу лярными. Рассмотрим кодирование чисел, представленных в форматах со знаковым разрядом, в простых и модифицированных прямом, обратном и дополнительном двоичных кодах. Прямой простой двоичный код Такой код основан на представлении чисел в виде их абсолютного значения с кодом соответствующего знака: плюса или мину минуса, са, т.е. цифровые разряды числа дополняются знаковым разрядом. Примечание. В функциональных записях для представления кода знака в числе знаковый разряд представлен в двух видах — в прямом, определяя плюсовое значение, и в инверсном, определяя минусовое значение числа, например, обозначив плюс в знаковом разряде числа буквой «е», принимая в числовом значение равным единице (1), минус будет 8

представлен инверсным (противоположным) значение от «е», т.е. записан как e, что равнозначно нулю (0), как противоположному значению в двоичной системе счисления. Прямой код — способ представления двоичных чисел с фиксированной запятой в цифровых устройствах обработки числовой информации. Целые числа, правильные и смешанные дроби, представленные общими формулами записи чисел: qA =±a n-1an-2… a0, Aq=±0, a-1 … a-m+1 a-m и Aq=±a n-1 an-2 …a0, a-1 … a-m+1 a-m, соответственно, где a n-1,a n-2, …a0 , a-1 , … a-m+1 , a-m — цифры в разрядах целой (n — количество цифровых разрядов целой части) и дробной (m — количество циф ровых разрядов дробной части) части чисел в виде 0 или 1, q — основание системы счисления (для двоичной q =2), представляются в виде: — целые числа: , если А≥0, где e=0 — знак положительно[А] пр= еа nn12 - аа - ... 0 го числа и аа = — абсолютная величина числа A, т.е.прА nn 12 - ... а 0 = 0 аа ... а0 ; nn- 12 , если А