Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебники 80389

.pdf
Скачиваний:
7
Добавлен:
01.05.2022
Размер:
43.33 Mб
Скачать

 

Знак

r

Знак

M

N1

=

1,

011

1,

0110;

N2

=

0,

010

1,

1010.

1) порядок произведения

r(П)

= - 3(10) + 2(10) = - 1;

2)знак произведения: 1 + 1 = 0;

3)мантисса произведения M(П):

0110 = 6(10) × 1010 = 10(10)

Σ1 = 0110 0000

Σ2 = 01100 0110

Σ3 = 011110 0000

Σ4 = 0111100(2) = 60(10) M(П) = 0,0111100 4) нормализация мантиссы произведения и уменьшение порядка:

M(П) = 0,0111100 ; r(П) = - 1 - 1 = - 10

запись в ЭВМ

Знак r Знак M

N1 N2 = П = 1, 010 0, 111100;

Деление в ЭВМ с фиксированной запятой сводится к многократным вычитаниям и сдвигам, но так как вычитание в ЭВМ заменяется сложением в дополнительном или обратном коде, то процесс организации деления состоит из операций:

1)сложенияделителявобратномилидополнительномкодесделимым;

2)сдвига;

3)сложения делителя с остатками, предварительно сдвигаемыми на каждом шаге деления влево на один разряд.

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

Знак частного определяется по такому же принципу, как и знак про-

изведения. Разряды частного находятся по правилу: если разность между делимым или очередным остатком положительна, то в соответствующий разряд заносится 1, а если отрицательна - заносится 0. Кроме того,

для определения очередного разряда частного отрицательный остаток сдвигается на один разряд влево и к нему прибавляется делитель. Если ос-

21

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

Пример деления чисел в дополнительном коде:

x = 0,1100 – делимое; y = 1,1110 – делитель; знак частного отрицательный, т. е. 0+ 1 = 1; процесс деления:

 

[x]пр

00,1100

| 00,1110

[y]пр

 

[y]доп

+

 

 

 

 

 

1 – й остаток

11,0010

0, 1 1

0

 

 

 

 

11,1110

 

 

 

 

Знак 1-го остатка отрица-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

тельный, следовательно,

сдвиг

← 11,1100

 

 

 

 

делительбольшеделимого

 

[y]пр

+

 

 

и в первый разряд частного

2 – й остаток

00,1110

 

 

 

 

заносится ноль

 

00,1010

 

 

 

Знак 2-го остатка положи

 

 

 

 

 

 

 

 

 

 

 

 

 

 

тельный, во 2-й разряд

сдвиг

← 01,0100

 

частного заносится единица

 

[y]доп

+

 

 

 

 

 

3 – й остаток

11,0010

 

 

 

 

 

 

10,0110

 

 

 

 

Единица в старшем знако

 

 

 

 

 

 

 

 

 

 

 

 

 

вомразряде отбрасывается,

сдвиг

← 00,1100

 

 

 

в 3 –й разряд частного

 

[y]доп

+

 

 

 

 

заносится единица

4 – й остаток

11,0010

 

 

 

 

 

 

11,1110

 

 

 

Далее происходит повторе

 

 

 

 

 

 

 

сдвиг

← 11,1100

 

 

 

ниес периодом (011)

 

 

 

 

 

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

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

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

22

Глава 3. Логические основы вычислительных машин

3.1. Элементы алгебры логики

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

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

Сточки зрения логики высказывания можно разделить:

1)на высказывания постоянно истинные (математически их принимают равными "1" : «солнце - источник света»; «уголь черный»;

2)высказывания постоянно ложные (математически их принимают рав-

ными "0" : «сахар черный», луна - источник теплоты»; «снег теплый»;

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

пример: «на улице идет дождь» - такое высказывание будет истинным и равным "1", пока идет дождь, а после окончания дождя оно становится ложным и равным "0".

По содержанию высказывания бывают простые и сложные. Простое высказывание - логический аргумент входит в состав сложного высказывания - логической функции, зависящей от истинности или ложности аргумента. Обычно простые высказывания обозначают строчными буквами латинского или русского алфавита: х, у, z, m, р, l, а, b … Сложные высказывания, или логические функции, обозначают прописными буквами латинского или русского алфавита: F, P, Q, X, У, S … Связи между высказываниями -

аргументами по своей логике разные, и от этого значение сложного выска-

зывания непостоянно.

Логическое отрицание высказывания х представляет собой такое сложное высказывание Р, которое будет истинно, когда х ложно, и ложно, когда х истинно. Математически это отражается формулой для логической функции одного аргумента: P = x есть НЕ х). Черта над х означает отрицание. Логика этой функциональной связи задается табл. 3.1, получившей название таблицы истинности. В алгебре логики элемент, реализующий логическую связь НЕ, или операцию отрицания, называется элементом НЕ (инвертором) (рис. 3.1).

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

23

зывание Р будет истинно, если хотя бы одно из составляющих его про-

стых высказываний истинно, и ложно, когда одновременно ложны все составляющие его простые высказывания. Формула логической связи: Р = x \/ у читается Р есть х ИЛИ у, где \/ - знак дизъюнкции - логического сложения ( Р = х + у ). Логика работы элемента дизъюнкции задается таблицей истинности (табл. 3.2). Схема элемента логического сложения называется схемой ИЛИ, дизъюнктором или собирательной схемой (рис. 3.1).

Логическое умножение двух или более высказываний заключается в том, что сложное высказывание Р будет истинно в том и только в том случае, когда составляющие его простые высказывания будут одновре-

менно истинны. Логическое умножение обозначается знаком конъюнкции /\, или знаком & (and), или буквой И. Формула: Р = х /\ у (Р есть х И у).

 

НЕ

 

x

И

 

x

ИЛИ

x\/у

x

1

x

&

x/\у

1

y

y

 

 

 

 

 

 

 

 

Рис. 3.1. Функциональное обозначение основных логических элементов

Логический элемент умножения работает по таблице истинности (табл. 3.3) и называется конъюнктором, или схемой И, или схемой совпадения (рис. 3.1). Логические элементы НЕ, ИЛИ, И считаются основными логическими элементами, из которых состоят другие более сложные виды логических связей.

Таблица 3.1

 

 

Таблица 3.2

 

 

Таблица 3.3

x

P = x

 

x

y

Р=x\/у

 

x

y

Р=x/\у

0

1

 

0

0

0

 

0

0

0

1

0

 

0

1

1

 

0

1

0

 

 

 

1

0

1

 

1

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

1

 

1

1

1

 

 

 

 

 

 

 

 

 

 

Функция НЕ является примером функции одной переменной, а И и ИЛИ -- функциями двух переменных. Логические двоичные функции получили название Булевых по имени английского математика XIX в. Дж. Буля. Любое арифметическое действие над двоичными числами может быть выражено через основные логические функции, и при этом функция НЕ должна выполняться первой, И — второй, а в последнюю очередь — ИЛИ. Для изменения указанной последовательности в логические выражения следует вводить скобки.

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

Наиболее распространенные Булевы функции: отрицание конъюнкции (штрих Шеффера), отрицание дизъюнкции (стрелка Пирса), эквивалентность, сумма по модулю 2, импликация.

24

Операция отрицания дизъюнкции — стрелка Пирса — заключается в том, что логическая функция будет истинна - 1 только тогда, когда составляющие ее простые высказывания одновременно ложны - 0. Запись функции может быть в нескольких видах: F = x y ; F = x y ; F = x + y .

Для осуществления этой операции используется элемент Пирса (ИЛИ — НЕ). Логика функции отрицания дизъюнкции задается в таблице истинности (табл. 3.4).

Операция отрицания конъюнкции — штрих Шеффера — логиче-

ская функция будет истинна - 1 в том случае, когда хотя бы одно из составляющих ее высказываний будет ложно - 0. Алгебраическая запись операции Шеффера: F = x / y. Логика работы задана таблицей истинности (табл. 3.5), реализацией является элемент ИНЕ.

Эквивалентность (равнозначность) — логическая операция, в ре-

зультате которой функция будет истинной - 1, если составляющие ее аргументы равноценны или равнозначны. Функция эквивалентности аргументов х и у обозначается: F (x, y) = x y ; F = х у. Логика работы элемента эквивалентности задается таблицей истинности (табл. 3.6).

 

Таблица 3.4

 

 

Таблица 3.5

 

 

Таблица 3.6

x

y

F=xу

 

x

y

F=x / у

 

x

y

F= x у

0

0

1

 

 

 

 

 

 

 

 

 

0

0

1

 

0

0

1

0

1

0

 

 

 

 

 

 

 

 

 

0

1

1

 

0

1

0

1

0

0

 

 

 

 

 

 

 

 

 

1

0

1

 

1

0

0

1

1

0

 

 

 

 

 

 

 

 

 

1

1

0

 

1

1

1

 

 

 

 

 

 

 

 

 

 

 

Сумма по модулю 2 — операция, в результате которой логическая функция будет истинной - 1, если составляющие ее аргументы неравнозначны и неравноценны. Операция отличается от арифметического сложения лишь последней строкой таблицы истинности (табл. 3.7). Обозначается функция суммы по модулю 2: F (x, y) = x y — и может называться логической неравнозначностью, т. е. F (x, y) = x y .

Импликацией от х к у считается такая логическая операция, в результате которой функция ложна только в том случае, когда величина х истинна, а у — ложна. Функция импликации обозначается: F = х у ; F = xy — и задается таблицей истинности (табл. 3.8).

Таблица 3.7

x

y

F=x у

0

0

0

0

1

1

1

0

1

1

1

0

Таблица 3.8

x

y

F=x у

0

0

1

0

1

1

1

0

0

1

1

1

25

x + y = x y

3.2 Основные законы алгебры логики

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

Переместительный закон коммутативности:

 

для логического сложения

 

х \/ у = у \/ х,

 

х + у = у + х.

(3.1)

для логического умножения

 

х /\ у = у /\ х

 

х у = у х

(3.2)

Сочетательный закон ассоциативности: для логического сложения

х \/ (у \/ z) = (х \/ у) \/ z,

 

х + (у + z) = (х + у) + z.

(3.3)

для логического умножения

х /\ (у /\ z) = (х /\ у) /\ z, х(уz) = (ху)z.

Распределительный, или дистрибутивный закон:

для логического сложения

(х \/ у) /\ z =(х /\ у) \/ (у /\ z), (х + у)z=xz+yz .

для логического умножения

(х /\ у) \/ z = (х \/ у) /\ (у \/ z), xy+z = (x+z)(y+z).

Закон инверсии:

для логического сложения

x y = x y .

для логического умножения

x y = x y x y = x + y

(3.4)

(3.5)

(3.6)

(3.7)

.

(3.8)

Формулы (3.7) и (3.8) получили название формул де Моргана. Отсюда следует закон двойного отрицания:

 

= x .

(3.9)

x

26

Распределительный закон для логического умножения и закон инверсии не имеют аналогов в математике, алгебре и характерны лишь для алгебры логики. Доказательство этих законов можно получить построением таблиц истинности. В качестве примера рассмотрим таблицу истинности (табл. 3.9), в которой используются правые и левые части формул (3.7), (3.8). Из нее можно сделать заключение о тождестве столбцов 6 и 9, а также 8 и 10, что подтверждает справедливость законов инверсии.

Таблица 3.9

Значения аргументов и функций

1

2

3

4

5

6

 

7

8

 

9

10

x

y

x

y

x+y

 

 

 

xy

 

 

 

x y

x + y

 

x + y

xy

0

0

1

1

0

1

 

0

1

 

1

1

1

0

0

1

1

0

 

0

1

 

0

1

0

1

1

0

1

0

 

0

1

 

0

1

1

1

0

0

1

0

 

1

0

 

0

0

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

Всегда истинные высказывания: x + 1=1,

x + x =1 (закон исключенного третьего). (3.10) Всегда ложные высказывания:

x 0 = 0 ,

 

x x =0 (закон противоречия).

(3.11)

К аксиомам алгебры логики относятся следующие соотношения:

xx = x;

x + x = x;

1 x = x; x xy = 0; xxx…x = x;

x (x+y) = x; (закон поглощения)

x +xy = x; x + x+…+ x = x; x + xy + xz = x. (3.12)

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

x + y + xy + x 1

3.13

 

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

xyzx 0 .

(3.14)

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

27

3.3.Основные логические и функциональные элементы вычислительных машин

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

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

U

 

 

потенциальный

Потенциальный способ заключается в

 

 

том, что 0 или 1 передаются сигналом неог-

 

1

 

 

0 t

раниченной длительности. Сигналы 0 и 1 мо-

 

 

 

 

 

 

 

 

импульсный

гут быть заданы двояко. В системе низких

 

 

 

потенциалов 1 задается более низким уров-

U 1 0 11 0 0 1 0 1 1 1

нем потенциала, чем 0, а в системах высоких

 

 

 

 

t

потенциалов 1 задается более высоким, более

 

 

 

 

 

 

 

 

 

 

положительнымуровнемпотенциала, чем0.

 

 

 

динамический

Импульсный способ состоит в том,

U

 

что задается импульсом положительной

 

 

 

 

t

полярности, а 0 – импульсом отрицатель-

1

0

1

ной полярности. Применяется также им-

Рис.3.2. Способы задания

пульсный способ, когда 1 воспроизводится

наличием импульса, а 0 – его отсутствием.

 

 

двоичных чисел

Динамический способ задания ин-

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

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

Термин триггер происходит от английского слова trigger — защелка, спусковой крючок. Для обозначения этой схемы в английском языке чаще употребляется термин flip-flop, что в переводе означает «хлопанье». Это звукоподражательное название электронной схемы указывает на ее способность мгновенно переходить («перебрасываться») из одного состояния в другое и обратно.

Самый распространенный тип триггера — так называемый RS - триггер ( S и R соответственно от английских set — установка и reset — сброс). Условное обозначение RS-триггера приводится на рис. 3.3. Триггер имеет

два симметричных входа S и R и два симметричных выхода Q и Q , причем выходной сигнал Q является логическим отрицанием сигналаQ .

28

S & Qt+1

R

&

Qt+1

 

 

S T Qt+1 R Qt+1

R

1

Qt+1

 

 

 

 

Qt+1

 

 

S

T

 

 

 

 

 

R

 

Qt+1

S

1

Qt+1

 

 

 

 

 

 

Рис. 3.3 Два типа структурных схем RS -триггера и их функциональные обозначения

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

Вход, на котором триггер с помощью сигнала устанавливается в единичное состояние, получил название единичного входа; он обозначается буквой S. Установка триггера в нуль производится сигналом через нулевой вход, обозначаемый буквой R.

Из табл. 3.10 следует, что если на один из входов подать сигнал высокого уровня (при условии отсутствия сигнала на другом входе) триггер изменит свое состояние на противоположное. При отсутствии сигналов на входе состояние не меняется, подача одновременно сигналов на два входа приводит к неопределенному состоянию, которое для данного типа не допустимо. Структурная схема может быть реализована на элементах двух видов: И-НЕ, ИЛИ-НЕ рис.3.3.

Таблица 3.10 Таблица 3.11 Таблица 3.12

S

R

Q

 

Q

 

 

 

J

K

Q

 

Q

 

 

 

T

Q

Q

 

Q

 

 

 

t+1

 

 

t+1

 

 

 

t+1

 

 

t+1

 

 

t

t+1

 

t+1

0

0

Qt

 

 

 

 

 

 

0

0

Qt

 

 

 

 

 

0

0

0

1

 

Qt

Qt

0

1

1

0

 

 

0

1

1

0

 

 

0

1

1

0

1

0

0

1

 

 

1

0

0

1

 

 

1

0

1

0

1

1

???

???

 

 

 

 

 

 

 

 

 

 

1

1

0

1

Кроме RS – триггеров известны также JK – и T – триггеры. JK – триггер содержит схемные дополнения, которые снимают неопределенность состояния при подаче сигнала на оба входа. Теперь при этом происходит "переброс" схемы в противоположное состояние. Условное обозначение рис. 3.4, таблица истинности табл. 3.11. T – триггеры имеют единственный вход Т , при подачи сигнала на который меняет свое состояние на противоположное. Обозначение приведено на рис. 3.4. Логика работы задается табл. 3.12. Т - триггер называют счетным триггером, т.к. он изменяет свое состояние от каждого приходящего на вход импульса. Триггер производит счет импульсов по модулю два, и поэтому сигнал логической единицы на его выходе Qt+1 по-

29

 

 

 

 

Qt +1

 

 

 

Qt +1

является в два раза реже, чем на входе Т.

 

 

 

 

 

 

 

Рассмотренные триггеры являются

 

J

T

 

 

 

T

 

 

 

 

 

 

 

 

T

 

 

 

 

 

 

асинхронными. Большее распростране-

 

 

 

 

Qt +1

 

 

 

 

 

 

 

 

 

 

 

Qt +1

 

K

 

 

 

 

 

ние получили синхронные триггеры, ко-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

торые в отличие от асинхронных имеют

Рис. 3.4

Условное обозначение

 

 

 

 

 

 

 

 

дополнительный вход С, разрешающий

 

 

 

JK – и T – триггеров

 

 

 

 

 

ввод сигналов на информационные вхо-

ды R, S, J, K, T в зависимости от типа триггера. Обычно на вход С поступают тактовые импульсы, определяющие моменты в которые триггер может изменить свое состояние. Все сложные схемы выполняются синхронными. Для их реализации используют синхронные RS - , JK – и T – триггеры. С целью повышения быстродействия используют также двухтактные триггеры.

3.4. Регистр и счетчики

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

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

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

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

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

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

Регистр является неотъемлемой частью блоков ЭВМ и других цифровых устройств. Основу регистра составляют триггеры и комбинацион-

30

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]