Основы цифровой техники

ЦИФРОВЫЕ И МИКРОПРОЦЕССОРНЫЕ УСТРОЙСТВА

Конспект лекций

для студентов специальностей

2-45 01 03 – Сети телекоммуникаций

2-45 01 02 – Системы радиосвязи, радиовещания и телевидения

В 5 частях

Часть 1

Минск


УДК 81.332

ББК 32.97

Ц75

Рекомендовано к изданию

кафедрой информатики и вычислительной техники

27 мая 2010 г., протокол № 9

Составитель

В. И. Богородов, преподаватель высшей категории

кафедры информатики и вычислительной техники

Рецензент

Е. В. Новиков, канд. техн. наук, доцент

кафедры информатики и вычислительной техники

  Ц75 Цифровыеи микропроцессорные устройства: конспект лекций для студентов специальностей 2-45 01 03 – Сети телекоммуникаций, 2-45 01 02 – Системы радиосвязи, радиовещания и телевидения. В 5 ч. Ч. 1: Основы цифровой техники / сост. В. И. Богородов. – Минск: УО ВГКС, 2010. – 91 с. ISBN Рассматриваются арифметические, логические и схемотехнические основы цифровой техники, а также основы теории анализа и синтеза комбинационных цифровых устройств. Предназначено для студентов и преподавателей колледжа. УДК 81.332 ББК 32.97

©Учреждение образования

Высший государственный

колледж связи, 2010


ВВЕДЕНИЕ

В первой части конспекта лекций рассматриваются системы счисления (СС), применяемые в цифровой технике, правила и примеры преобразования чисел из одной позиционной СС в другую, а также формы представления и способы кодирования двоичных чисел и правила выполнения арифметических операций над двоичными и двоично-десятичными числами в коде 8421.

Раскрываются понятия логических функций (ЛФ), логических элементов (ЛЭ) и логических устройств (ЛУ), приводятся условные графические обозначения (УГО) основных ЛЭ по ГОСТ 2.743-91 ЕСКД и международные варианты. Рассматриваются основные законы и тождества алгебры логики, понятия базиса и минимального базиса, а так же примеры преобразования ЛФ из основного базиса в неосновные и примеры построения схем ЛУ.

Приводитсятся система условных обозначений микросхем стандартной логики по ГОСТ 17021-88 ЕСКД, а также рассматриваются основные статические и динамические параметры ЛЭ и схемотехника базовых ЛЭ схемотехники КМОП.

Рассматриваются задачи анализа и синтеза комбинационных цифровых устройств, а также содержание этапов синтеза и минимизации, показаны примеры минимизации ЛФ табличным методом с помощью карт Карно.

АРИФМЕТИЧЕСКИЕ ОСНОВЫ ЦИФРОВОЙ ТЕХНИКИ

Системы счисления. Основные понятия. Выбор системы счисления для цифровых устройств

Система счисления (СС) – это совокупность приемов и правил изображения чисел цифровыми знаками. Системы счисления делятся на позиционные и непозиционные.

В непозиционных СС значение символа не зависит от его положения в числе. Непозиционные СС возникли раньше позиционных. Примером непозиционной СС, дошедшей до наших дней, является римская СС. Например, десятичное число 30 можно представить в виде последовательного ряда из трех одинаковых символов – XXX. Основной недостаток непозиционных СС – большое число различных символов и сложность выполнения арифметических операций.

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

Основанием позиционной СС называется количество различных символов, используемых для изображения всех чисел в пределах одного разряда.

Любое число X, записанное в позиционной СС, можно представить в виде полинома:

(1)

где P – основание позиционной СС – целое положительное число; – любая цифра (символ), используемая в данной позиционной СС из множества – весовой коэффициент разряда.

Например, десятичное число = 123,25 по формуле (1) имеет вид:

Индекс в круглых скобках указывает на величину основания СС.

Запятая, отделяющая целую часть числа от дробной, находится между разрядами с весовыми коэффициентами и .


На величину основания позиционной СС нет ограничения. Поэтому возникает вопрос, какая величина основания P является оптимальной для применения в цифровых устройствах.

Наилучшая система счисления должна обеспечивать простоту технической реализации, простоту выполнения арифметических операций, малые затраты оборудования при построении устройств, высокую помехоустойчивость кодирования цифр и простоту применения математического аппарата для анализа и синтеза цифровых устройств. Краткий анализ систем счисления показывает, что в цифровых устройствах следует применять двоичную СС.

В двоичной СС (P = 2) используются два символа – это цифры 0 и 1. Любое число в двоичной СС записывается в виде последовательности нулей и единиц, расставленных согласно формуле (1). Например, уже рассмотренное нами десятичное число = 123,25 в двоичной СС запишется следующим образом:

Двоичная СС имеет только один, но крупный недостаток: она не используется человеком (в ней слишком длинными и громоздкими являются числа даже средней величины), а следовательно, ее использование приводит к необходимости преобразования исходных десятичных чисел в двоичную СС, а результатов – из двоичной в десятичную СС. Для таких преобразований чисел требуются достаточно сложные аппаратные средства и дополнительное время. Для преодоления этого недостатка применяется двоично-десятичная СС, представляющая собой СС с основанием P = 10, цифры которой закодированы в виде четырехразрядных двоичных чисел (тетрад). Четырехразрядное двоичное число позволяет получить наборов, из которых при двоично-десятичном кодировании используются только 10. Поэтому возможны различные варианты кодирования десятичных цифр в двоичной СС – BCD-коды (Binary Coded Decimal).


Наибольшее распространение получил код 8421 (цифры указывают вес соответствующего двоичного разряда двоично-десятичного числа). Например, десятичное число = 123,25 в коде 8421 запишется следующим образом:

Для преобразования десятичных чисел в код 8421 и обратно используются простые типовые узлы цифровой техники, такие как шифраторы и дешифраторы.

Двоично-десятичные СС используются как для ввода/вывода, так и для обработки числовых данных.

В технике программирования в качестве вспомогательной широкое применение получила шестнадцатеричная СС, у которой основание P = 16, т.е. используется 16 символов – это цифры от 0 до 9 и шесть заглавных букв латинского алфавита: A, B, C, D, E, F. У этой СС основание является целой степенью числа 2, в результате по аналогии с двоично-десятичной СС ее можно определить как систему с основанием P = 16, у которой символы закодированы в двоичной СС, что значительно облегчает перевод шестнадцатеричных чисел в двоичную СС и обратно. Для этого достаточно перевести в двоичную СС каждый символ исходного числа и записать их в виде тетрад. Например, преобразуем шестнадцатеричное число X = 7B,6 в двоичную СС:

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

Шестнадцатеричная СС обеспечивает более компактную запись чисел и унификацию форматов числовой и командной информации в виде тетрад.


В заключение рассмотрим таблицу, в которой записаны десятичные числа от 0 до 17, представленные в различных СС (таблица 1).

Таблица 1 – Представление десятичных чисел в позиционных СС

D (Decimal notation) B (Binary notation) H (Hexadecimal notation) BCD (Binary-Coded Decimal)
P = 10 P = 2 P = 16 Код 8421
       
       
       
       
       
       
       
       
       
       
    A 0001 0000
    B 0001 0001
    C 0001 0010
    D 0001 0011
    E 0001 0100
    F 0001 0101
      0001 0110
      0001 0111

Перевод чисел из одной позиционной системы счисления в другую

Существует два основных метода перевода чисел из одной СС в другую: табличный и расчетный.

Табличный метод основан на составлении специальных таблиц соответствия чисел в различных СС, примером такой таблицы является таблица 1. Такие таблицы удобны на начальном этапе ознакомления с новой СС, но являются громоздкими.


Расчетный метод более универсален, но применим только к позиционным СС. При использовании расчетного метода могут встретиться три случая: перевод целых чисел, перевод правильных дробей, перевод неправильных дробей.

Правило перевода целых чисел из одной позиционной СС в другую. Исходное целое число необходимо последовательно делить на основание новой СС до тех пор, пока не получится частное, у которого целая часть равна нулю. Деление необходимо производить в исходной СС. Результат перевода записывается из остатков от последовательного деления, причем последний остаток будет старшим разрядом числа в новой СС.

Процесс деления сначала самого числа, а затем целых частей получаемых частных на один и тот же делитель называется последовательным делением.

Пример 1. Переведем десятичное число X = 29 в двоичную и шестнадцатеричную СС:


Стрелкой показан порядок записи числа в новой СС.

Ответ:

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


Процесс умножения сначала самой исходной дроби, а затем дробных частей получаемых произведений на один и тот же множитель называется последовательным умножением.

Пример 2. Переведем в двоичную и шестнадцатеричную СС правильную дробь с точностью четыре знака после запятой:

 
 

Стрелкой показан порядок записи правильной дроби в новой СС.

Ответ:

При переводе неправильных дробей отдельно преобразуют целую и дробную части по соответствующим правилам, приведенным выше, а затем записывают результаты перевода через запятую в новой СС.

Пример 3. Переведем неправильную дробь X = 29,375(10) в двоичную и шестнадцатеричную СС с точностью четыре знака после запятой:

Рассмотренный расчетный метод удобен в том случае, если исходной является десятичная СС. Если же перевод осуществляется из недесятичной СС, то вычисления затруднительны. В этом случае для преобразования чисел можно использовать формулу (1), причем расчеты ведутся в новой СС.

Пример 4. Переведем в десятичную СС двоичное число X = 11101,011:


Таким образом, для перевода десятичных чисел в другую позиционную СС используется метод последовательного деления-умножения, а при обратном переводе исходное число записывается в виде полинома и выполняются необходимые расчеты.

Представление двоичных чисел в формах с фиксированной и плавающей точкой

В цифровых устройствах для представления каждого числа используется стандартная разрядная сетка, состоящая из заданного количества двоичных разрядов. Под разрядной сеткой понимают совокупность двоичных разрядов, используемых для представления одного числа. Для знака числа отводится специальный знаковый разряд. Для положительных чисел в знаковом разряде записывается нуль, а для отрицательных – единица.

В зависимости от способа использования разрядной сетки различают две формы представления двоичных чисел: естественную форму (с фиксированной точкой) и нормальную форму (с плавающей точкой).

В естественной форме двоичные числа представляются последовательностью цифр, разделенной точкой на целую и дробную части. Весовые коэффициенты разрядов здесь фиксированы, поэтому и положение точки фиксировано. Наиболее часто цифровые устройства с фиксированной точкой оперируют с двоичными числами, меньшими единицы, у которых точка фиксируется перед старшим разрядом. Для знака числа выделяется дополнительный разряд. Знак числа веса не имеет. Например, двоичное число X = – 0,10110 в разрядной сетке запишется в виде:

           

В общем случае m – разрядное двоичное число в разрядной сетке цифрового устройства записывается в виде:


   
|
Знак Разряды модуля числа

При таком способе фиксации точки минимальное по модулю число, отличное от нуля, представляемое в цифровом устройстве равно:

а максимальное –

Следовательно, диапазон чисел одного знака, представляемых в таком цифровом устройстве, равен:

Числа меньше представляются как машинный нуль, а числа больше приводят к переполнению разрядной сетки. Область представляемых чисел показана на рисунке 1.

Рисунок 1 – Область представляемых чисел с фиксированной точкой

Достоинством формы с фиксированной точкой является простота выполнения арифметических операций, что обеспечивает простоту арифметического устройства и высокое быстродействие.

Недостатки:

а) узкий диапазон представляемых чисел, что приводит к необходимости использования масштабных коэффициентов;

б) низкая точность представления малых чисел из-за ограниченного числа разрядов в разрядной сетке, что снижает точность вычислений.

В нормальной форме числа представляются с помощью мантиссы и порядка в виде:

(2)

где– мантисса числа А; – основание СС; q – порядок числа А.

Например, десятичное число А = 175 может быть представлено в виде:

Аналогично в двоичной СС:

Таким образом, при изображении числа в нормальной форме положение точки не фиксировано. Место точки указывает порядок числа. Она плавает в изображении числа при изменении порядка.

В разрядной сетке цифровых устройств с плавающей точкой помещаются две группы цифр: мантисса со своим знаком и порядок со своим знаком. Основание СС в разрядной сетке не указывается.

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

Пример 4. Нормализуем двоичное число:

Ответ:

Таким образом, величина нормализованной мантиссы M для двоичных чисел лежит в пределах:

(3)

Числа с плавающей точкой представляются в разрядной сетке в виде:

| |
Знак мантиссы Модуль мантиссы (m разрядов) Знак порядка Модуль порядка (р разрядов)

Минимальное по модулю число получается, если взять минимальную мантиссу и максимальный отрицательный порядок:

Чтобы получить максимальное по модулю число, необходимо взять максимальную мантиссу и максимальный положительный порядок:


Очевидно, что диапазон представляемых чисел зависит только от числа разрядов порядка. Например, если число разрядов для записи порядка P = 6, то получается и

Достоинства:

а) широкий диапазон представляемых чисел, поэтому не нужны масштабные коэффициенты;

б) высокая точность представления как больших, так и малых чисел, так как мантисса нормализована, что обеспечивает высокую точность вычислений.

Недостатком является сложность выполнения арифметических операций, что усложняет схему арифметического устройства и снижает быстродействие.

Таким образом, обе формы представления двоичных чисел имеют свои достоинства и недостатки. Поэтому если требуется высокое быстродействие, то применяют форму с фиксированной точкой, а если требуется высокая точность вычислений, то применяют форму с плавающей точкой.

Способы кодирования двоичных чисел

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

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

Пример 1. = + 0,11010;

Пример 2. = – 0,11010;


Знак числа веса не имеет и отделяется от цифр числа точкой. Прямой код используется для хранения чисел в памяти, при вводе-выводе информации, а также при выполнении операций умножения и деления. Недостатком прямого кода являются разные правила счета для положительных и отрицательных чисел. Поэтому в цифровых устройствах вычитание (сложение чисел с разными знаками) заменяют операцией сложения чисел в обратном или дополнительном кодах, пропорциональных исходным числам.

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

(4)

где – граничное число,

Пример 3. = + 0,1101;

Пример 4. = – 0,1101;

Из формулы (4) и примеров видно, что изображение положительных чисел в дополнительном коде совпадает с изображением их в прямом коде. Для представления отрицательного двоичного числа в дополнительном коде необходимо в знаковом разряде поставить единицу, произвести замену цифр исходного числа на обратные и к полученному коду прибавить единицу младшего разряда.

Обратное преобразование, т.е. получение числа из дополнительного кода выполняется по тому же правилу, что и получение дополнительного кода.


Пример 5.

X = – 0,0101.

Дополнительный код получил более широкое применение, так как обеспечивает более высокое быстродействие.

Обратный код отрицательного двоичного числа находится как дополнения модуля до двух без единицы младшего разряда. Обратный код для двоичных чисел, меньших единицы, образуется по формуле:

(5)

Пример 6. = + 0,1101;

Пример 7. = – 0,1101;

Из формулы и примеров видно, что изображение положительного числа в обратном коде совпадает с его изображением в прямом коде. Обратный код отрицательного числа образуется заменой цифр исходного числа на обратные и постановкой единицы в знаковый разряд.

Переход от обратного кода к прямому осуществляется по тому же правилу, что и от прямого к обратному.

Пример 8. X = – 0,0100.

Арифметические операции над двоичными числами с фиксированной точкой

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

Сложение чисел в цифровых устройствах производится так же, как и при ручном счете, т.е. путем поразрядного суммирования чисел, начиная с младших разрядов. Сложение двоичных чисел выполняется в соответствии с таблицей:

0 + 0 = 0; 0 + 1 = 1; 1 + 0 = 1; 1 + 1 = 10.

Пример 1. Выполним сложение двух положительных двоичных чисел, представленных в естественной форме:


Из примера следует, что начиная со второго разряда сложение производится с учетом переноса из соседнего младшего разряда.

Вычитание двоичных чисел выполняется в соответствии с таблицей:

0 – 0 = 0; 1 – 0 = 1; 1 – 1 = 0; 10 – 1 = 1.

Пример 2. Выполним вычитание, т.е. сложение двух двоичных чисел с разными знаками, представленных в естественной форме:



Так как || > ||, то выполняется вычитание из и результату присваивается знак плюс.

Из примера следует, что при вычитании происходит заем из соседнего старшего разряда. Следовательно, при сложении и вычитании двоичных чисел в естественной форме используются различные правила, поэтому вычитание заменяется сложением в машинных кодах.

При алгебраическом сложении двоичных чисел в обратном и дополнительном кодах используются следующие правила:

а) знаковые разряды суммируются так же, как и значащие разряды числа;

б) единица переноса из знакового разряда при сложении в дополнительном коде отбрасывается, а в обратном коде для получения правильного результата эта единица прибавляется к младшему разряду суммы, компенсируя величину . Такой перенос называется циклическим;

в) если в знаковом разряде суммы получился нуль, то сумма положительна и для перехода к естественной форме числа обратное преобразование не требуется. Если же в знаковом разряде суммы получилась единица, то сумма отрицательна и требуется обратное преобразование.


Пример 3. Выполним суммирование двоичных чисел = + 0,11001 и = – 0,01011 в обратном коде:

Результат получился положительным, т.е.


Пример 4. Выполним суммирование тех же двух двоичных чисел = + 0,11001 и = – 0,01011 в дополнительном коде:


Результат получился положительным и совпал с результатами суммирования в обратном коде и вычитания в естественной форме.

Пример 5. Поменяем знаки чисел и и выполним суммирование в дополнительном коде. Результат получится отрицательным и потребуется обратное преобразование.

 
 

При сложении чисел одного знака может произойти переполнение разрядной сетки, что приведет к искажению результата. На практике для выявления переполнения разрядной сетки применяют модифицированные машинные коды, в которых два знаковых разряда. Для положительных чисел в знаковых разрядах записывается 00, для отрицательных – 11. Появление комбинаций 01 или 10 в знаковых разрядах свидетельствует о переполнении разрядной сетки, т. е. является сигналом ошибки. Например, двоичное число X = – 0,1101 в модифицированном дополнительном коде будет записано следующим образом:

= 11.0011.

Пример 6. Выполним суммирование двух десятичных чисел = + 0,450 и = – 0,575 в двоичной СС с точностью пять знаков после запятой в дополнительном модифицированном коде и сравним результаты суммирования в двоичной и десятичной СС.

 
 

Так как || > ||, то в естественной форме следует выполнить вычитание числа из числа и результату присвоить знак минус.

 
 

Результаты суммирования в естественной форме и дополнительном модифицированном коде совпадают.

Умножение двоичных чисел в цифровых устройствах производится по тем же правилам, что умножение десятичных чисел и делится на два этапа.

На первом этапе определяется знак произведения путем суммирования по модулю 2 знаковых разрядов сомножителей. Если знаковые разряды сомножителей одинаковы и равны 0 или 1, то сумма по модулю 2 равна 0 (произведение положительно), если же знаковые разряды сомножителей не совпадают, то эта сумма будет равна 1 (произведение отрицательно).

На втором этапе определяется абсолютное значение произведения путем перемножения этих чисел без учета знака (кодовое умножение). Для этого необходимо вычислить частичные произведения, затем сдвинуть их и сложить между собой.

 
 

Пример 1. Умножим целые положительные двоичные числа = 1101 и = 1011. Умножение выполним, начиная с младшего разряда множителя.

Суммирование частичных произведений осуществляется в несколько этапов, поскольку арифметическое устройство может выполнять операцию сложения сразу только с двумя числами.

Если умножение выполняется, начиная со старшего разряда множителя, то частичные произведения следует сдвигать вправо.

Особенности арифметических операций над двоичными числами с плавающей точкой

При сложении двоичных чисел с плавающей точкой операции производятся отдельно с мантиссами и порядками. Результат выполнения операции должен представляться в нормализованном виде, поэтому машинная операция сложения чисел с плавающей точкой распадается на четыре этапа:

а) выравниваются порядки слагаемых. Выравнивание порядков производится в сторону большего порядка, с тем чтобы при выравнивании не терять старшие разряды мантиссы. Мантисса преобразуемого числа сдвигается вправо на необходимое количество разрядов;

б) производится преобразование мантисс слагаемых в модифицированный дополнительный или обратный код;

в) мантиссы слагаемых суммируются по правилам сложения дробных чисел с фиксированной точкой;

г) производится нормализация суммы и округление мантиссы в случае необходимости.

Умножение двоичных чисел с плавающей точкой также производится в четыре этапа:

а) определение знака произведения путем сложения по модулю 2 знаковых разрядов мантисс сомножителей;

б) перемножение модулей мантисс по правилам для чисел с фиксированной точкой;

в) определение порядка произведения путем алгебраического сложения порядков сомножителей с использованием дополнительного либо обратного модифицированного кода;

г) нормализация результата и округление мантиссы в случае необходимости.

Сложение двоично-десятичных чисел

Десятичные числа в коде 8421 суммируются по правилам сложения десятичных чисел. Если в тетраде, представляющей десятичный разряд, содержится 10 или более единиц, т.е. возникло переполнение, то формируется единица переноса в старший десятичный разряд, а из суммы вычитается десять единиц. Полученный результат есть цифра соответствующего десятичного разряда суммы. Наличие переполнения тетрады выявляется по наличию переноса в соседнюю старшую тетраду либо по наличию единиц одновременно в разрядах с весовыми коэффициентами 8 и 4 либо 8 и 2 в полученной сумме. В этом случае требуется коррекция суммы. Поскольку в цифровых устройствах вычитание заменяется сложением в дополнительном коде, то вычитание десяти единиц заменяется прибавлением шести единиц, так как число является дополнительным кодом числа


Пример 1. Выполним сложение двух десятичных чисел = 458 и = 629 в десятичной СС и коде 8421 и сравним полученные результаты:

 
 

Десятичная система счисления

Код 8421


Результаты сложения в десятичной СС и коде 8421 совпадают. В младшей тетраде коррекция произведена из-за наличия единицы переноса во вторую тетраду. Следует помнить, что коррекция может выполняться в несколько этапов, если в процессе коррекции возникает переполнение.

Символьные коды

Символьные коды устанавливают соответствие букв, знаков препинания, десятичных цифр и других символов двоичным комбинациям. Эти коды можно использовать для хранения и обработки чисел, а также для ввода-вывода информации. Существуют различные символьные коды. Широкое применение получил американский стандартный код обмена информацией ASCII (American Standard Code for Information Interchange). Он является 7-разрядным и позволяет представить = 128 символов (представляется 96 символов и 32 команды обмена). К каждому символу добавляется один контрольный разряд для контроля символа на четность, т.е. символы передаются и хранятся в памяти в виде 8-разрядных слов.

Отечественным аналогом кода ASCII является код обмена информацией семиразрядный КОИ-7, который представлен в таблице 2.

Таблица 2 – Символьный код КОИ-7

Код символа в 16-ричной системе счисления
Младшая цифра Старшая цифра
           
  Пробел   @ P Ю П
  !   A Q А Я
  «   B R Б Р
  #   C S Ц С
  ¤   D T Д Т
  %   E U Е У
  &   F V Ф Ж
  ¢   G W Г В
  (   H X Х Ь
  )   I Y И Ы
A * : J Z Й З
B + ; K [ К Ш
C , < L \ Л Э
D = M ] М Щ
E . > N Ù Н Ч
F / ? O _ О Забой

Например, десятичная цифра 5 представляется кодом русская буква П – знак «+» – и т. д.


Структурные единицы и форматы цифровых данных

Данными называют информацию, представленную в виде пригодном для ее автоматизированной обработки.

В цифровых устройствах данные представляются в двоично-кодированной форме. Основными структурными единицами данных являются: бит, поле, байт, слово.

Бит (сокращение от англ. binary digit – двоичная цифра) – это такое количество информации, которое может быть записано в одном разряде разрядной сетки, например 0 или 1.

Последовательность битов, имеющая определенный смысл, называется полем (поле кода операции, поле адреса и т.д.).

Поле, состоящее из 8 битов, называется байтом (от англ. byte – слог, часть). Байт в цифровой технике используется для представления и записи любого символа, а также является наименьшей адресуемой единицей для записи и хранения данных в запоминающих устройствах. На основе байтов строятся любые другие укрупненные единицы данных (слово – 2 байта, двойное слово – 4 байта, учетверенное слово – 8 байт, килобайт – байт, мегабайт – байт, гигабайт – байт, терабайт – байт).

Словом называется последовательность, состоящая из строго определенного числа байтов, принятого для данного цифрового устройства.

На основе принятой структуры разнообразные данные организуются в соответствии со следующими форматами:

а) числовые данные с фиксированной точкой делятся на беззнаковые (например, адреса памяти) и обычные числа со знаком. Каждый тип данных может быть представлен в четырех форматах: наименьшем (один байт), коротком (одно слово), среднем (двойное слово), длинном (учетверенное слово);

б) для числовых данных с плавающей точкой используется три формата: короткий (4 байта, из них мантисса со знаком 3 байта, порядок со знаком 1 байт), средний (8 байт, из них мантисса со знаком 53 бит, порядок со знаком 11 бит), длинный (10 байт, из них мантисса со знаком 65 бит, порядок со знаком 15 бит);


в) для представления двоично-десятичных данных применяется два формата: упакованный и неупакованный;

В упакованном формате в каждом байте размещаются две десятичные цифры. Для знака отводится старшая тетрада старшего байта (для положительных чисел – 1100, для отрицательных – 1101). Упакованный формат используется для выполнения арифметических операций.

В неупакованном формате десятичные цифры кодируются в соответствии с американским стандартным кодом обмена информацией ASCII. При этом в каждом байте (в младшей тетраде) размещается только одна десятичная цифра, а в старшей тетраде записывается 0011 (в соответствии с кодом ASCII). Для знака числа отводится старший байт (для положительных чисел – для отрицательных – ). Неупакованный формат используется для обмена двоично-десятичными данными между процессором и внешними устройствами;

г) для представления и обработки текстовой информации используются специальные информационные структуры переменного формата – строки. Строка представляет непрерывную последовательность битов, байтов, слов или двойных слов. Битовая строка может быть длиной до 1 Гбита, а длина остальных строк может достигать 4 Гбайт.

ЛОГИЧЕСКИЕ ОСНОВЫ ЦИФРОВОЙ ТЕХНИКИ

Понятие о логических функциях, логических элементах и логических устройствах

Одна из причин широкого распространения ЭВМ заключается в том, что они могут решать не только арифметические, но и логические задачи. В противном случае эти машины играли бы только роль быстродействующих арифмометров и не могли бы использоваться для целей управления, поиска лучших вариантов решения и т.п. ЭВМ становятся «думающими» благодаря использованию алгебры логики. Как известно, логика – это наука о законах и формах мышления. Алгебра логики – это начальный раздел математической логики, которая занимается изучением возможностей применения формальных методов для решения логических задач. Иногда алгебру логики называют булевой алгеброй по имени английского математика Д. Буля, который еще в XIX в. разработал основные положения исчисления высказываний. В 40-е гг. XX в. алгебра логики нашла широкое применение при составлении и расчете сложных переключающих схем в автоматических телефонных станциях. Она широко применяется при анализе и синтезе различных цифровых узлов, а также при машинном решении логических задач.

Начальным понятием алгебры логики является понятие высказывания. Под высказыванием понимается любое утверждение, которое может быть истинным или ложным. Над высказыванием можно выполнять некоторые математические операции, так как каждое высказывание можно рассматривать как двоичную переменную. Примером двоичной переменной может служить значение какого-либо разряда двоичного числа, которое может быть нулем либо единицей. В соответствии с двоичной природой высказываний условились называть их логическими переменными и обозначать буквами латинского алфавита, приписывая им значение 1 в случае истинности и значение 0 в случае ложности, например и т.д.

Высказывания могут быть простыми и сложными. Простое высказывание содержит одну простую законченную мысль. Значение истинности простого высказывания не зависит от значений истинности каких-либо других высказываний. Сложным называется высказывание, значение истинности которого зависит от значений других высказываний. Следовательно, любое сложное высказывание можно считать логической (булевой) функцией некоторых двоичных аргументов – простых высказываний, входящих в его состав. Сложные высказывания также могут служить аргументами еще более сложных логических функций, т.е. при построении логических функций справедлив принцип суперпозиции. Отсюда следует, что можно построить логическую функцию любой сложности, пользуясь ограниченным числом логических связок (операций) и принципом суперпозиции.


Термин «логическая операция» означает простейшее действие над логическими аргументами, например логическое отрицание, логическое умножение и т.п.

Если логическая функция содержит только одну логическую операцию, то она называется элементарной.

Электрическая схема, реализующая элементарную логическую функцию называется логическим элементом.

Устройства, реализующие логические функции любой сложности, называются логическими или цифровыми.

Классификация логических устройств

В цифровой технике для обозначения различной информации пользуются кодовыми словами, которые представляют собой последовательность символов 0 и 1 (логических переменных), например: 10111011.

Цифровые устройства (либо их узлы) можно классифицировать по различным признакам.

По способу ввода и вывода кодовых слов различают логические устройства параллельного, последовательного и смешанного действия. В логических устройствах параллельного действия все n символов каждого входного слова подаются одновременно, т.е. в параллельном коде. В такой же форме на выходе образуется выходное слово. Очевидно, что в этом случае в устройстве необходимо иметь отдельный вход (выход) для каждого разряда входного (выходного) слова. В логических устройствах последовательного действия символы входного кодового слова поступают не одновременно, а последовательно во времени, символ за символом, т.е. в последовательном коде. В такой же последовательной форме выдается выходное слово. В логических устройствах смешанного действия входные и выходные кодовые слова представляются в различных формах. Такие устройства могут использоваться для преобразования кодовых слов из одной формы представления в другую.

По способу функционирования логические (цифровые) устройства (и их узлы) делятся на два класса: комбинационные цифровые устройства (КЦУ) и последовательностные цифровые устройства (ПЦУ). В КЦУ (цифровых автоматах без памяти) каждый символ на выходе определяется комбинацией символов на входах в текущий момент времени и не зависит от того, какие символы ранее действовали на этих входах, т.е. КЦУ не обладают памятью. В ПЦУ (цифровых автоматах с памятью) выходной сигнал определяется не только набором символов на входах в текущий момент времени, но и внутренним состоянием устройства, которое зависит от предыдущих значений символов на входах, т.е. ПЦУ обладают памятью.

Способы задания логических функций

Для задания логических функций используют два способа: табличный и аналитический.

При табличном способе строится таблица истинности, в которой приводятся все возможные значения наборов аргументов и значения логической функции, которые она принимает на каждом наборе. Число наборов аргументов N, т.е. число строк в таблице истинности, определяется по формуле где n – число аргументов. Например, таблица истинности для логических функций одного аргумента приведена в таблице 3. Существует всего четыре функции одного аргумента.

Таблица 3 – Таблица истинности для элементарных логических функций одного аргумента

Аргумент X Логические функции
         
         

При n = 2 число наборов значений аргументов равно а число функций Таблица истинности для логических функций двух аргументов представлена в таблице 4.


Таблица 4 – Таблица истинности для элементарных логических функций двух аргументов

Аргу­менты Функции
                                   
                                   
                                   
                                   

При аналитическом способе логическая функция записывается в форме логического выражения, показывающего, какие логические операции над аргументами функции и в какой последовательности должны выполняться, например:

(6)

Таблица истинности наиболее наглядно описывает функционирование некоторого логического устройства, но, чтобы построить логическую схему устройства, необходимо логическую функцию задать аналитическим способом.

Элементарные логические функции одного аргумента

Как отмечалось выше, для одного аргумента можно составить четыре элементарные логические функции. Логические функции одного аргумента (таблица 3) представляются следующими выражениями:

(7)

Логический элемент, реализующий функцию называется генератором нуля. Для формирования функции выход логического элемента подключается к общей точке схемы, т.е. к корпусу устройства (рисунок 2, а).


Рисунок 2 – Реализация элементарных логических функций одного аргумента (а) и (б)

Логический элемент, реализующий функцию называется генератором единицы. Для формирования функции выход логического элемента подключается к источнику питания, соответствующего логической единице (рисунок 2, б).

Логический элемент, реализующий функцию называется повторителем. Для формирования функции выход логического элемента соединяется со входом (рисунок 3, а). Условное графическое обозначение (УГО) повторителя по ГОСТ 2.743-91 ЕСКД и международный вариант представлены на рисунке 3, б и 3, в соответственно.

Рисунок 3 – Реализация элементарной логической функции (а) и условное графическое обозначение повторителя (б и в)

Повторители в цифровой схемотехнике используются для усиления сигнала по мощности, т.е. для увеличения нагрузочной способности логических элементов.

Логический элемент, реализующий функцию называется инвертором, либо логическим элементом НЕ. Для формирования функции выход логического элемента соединяется со входом через нормально замкнутый контакт электромеханического переключателя, например реле (рисунок 4, а). УГО инвертора по ГОСТ 2.743-91 ЕСКД и международный вариант представлены на рисунке 4, б и 4, в соответственно.

Рисунок 4 – Реализация элементарной логической функции (а) и условное графическое обозначение инвертора (б и в)

Таким образом, из всех элементарных логических функций одного аргумента наибольший практический интерес представляет лишь функция .

Элементарные логические функции двух аргументов

Известно, что логические функции могут быть многоаргументными. На основе законов алгебры логики все они могут быть выражены через функции с числом аргументов не более двух. Все логические функции с числом аргументов не более двух являются элементарными, так как содержат только одну логическую операцию.

Рассмотрим все возможные функции двух аргументов. Для этого из таблицы 4 запишем в таблицу 5 их значения истинности, а также рассмотрим их запись, наименование, УГО и название соответствующих логических элементов.


Таблица 5 – Полная совокупность элементарных логических функций двух аргументов Условное графическое обозначение международное     Генератор нуля

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями: