Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Цифровая и микропроцессорная техника. Учебное пособие
.pdf
Е. В. Маляр
Цифровая
и микропроцессорная
техника.
Допущено Министерством образования Республики Беларусь
в качестве учебного пособия для учащихся учреждений
образования, реализующих образовательные программы
среднего специального образования по группе специальностей
«Электроника и автоматика» и специальностям «Техническое
обслуживание электронных систем транспортных средств»,
«Техническая эксплуатация приборов и аппаратов»
Минск
РИПО
2024

УДК 004(075.32)
ББК 32.973.2я723
М18
А в т о р:
преподаватель УО «Витебский государственный
технический колледж» Е. В. Маляр.
Рецензенты:
цикловая комиссия «Электротехника и эксплуатация электронных
систем» филиала «Минский государственный автомеханический
колледж имени академика М. С. Высоцкого»
УО «Республиканский институт профессионального
образования» (О. В. Быстрицкая);
заведующий кафедрой электронных вычислительных машин
и систем УО «Брестский государственный технический университет»
кандидат технических наук, доцент С. С. Дереченник.
Все права на данное издание защищены. Воспроизведение всей книги или
любой ее части не может быть осуществлено без разрешения издательства.
Выпуск издания осуществлен при финансовой поддержке Министерства
образования Республики Беларусь.
Маляр, Е. В.
М18
Цифровая и микропроцессорная техника : учеб. пособие /
Е. В. Маляр. – Минск : РИПО, 2024. – 158 с. : ил.
ISBN 978-985-895-187-0.
В учебном пособии изложены арифметические и логические основы
схемотехники цифровых устройств, принципы синтеза комбинационных
схем и цифровых автоматов. Рассмотрены принципы работы и функционирования типовых элементов и специальных узлов цифровой техники,
приведены их назначение и обозначение на принципиальных и функциональных схемах. Изложены основы архитектуры микропроцессоров и микропроцессорных систем, микроконтроллеров.
Предназначено для учащихся учреждений образования, реализующих
образовательные программы среднего специального образования. Может
быть полезно студентам учреждений высшего образования и специалистам автоматизированных производств.
УДК 004(075.32)
ББК 32.973.2я723
ISBN 978-985-895-187-0 © Маляр Е. В., 2024
© Оформление. Республиканский институт
профессионального образования, 2024

ВВЕДЕНИЕ
Цифровая техника – наиболее прогрессивная и быстро развивающаяся отрасль современной электроники. Практически все
современные автоматизированные устройства и системы содержат в себе элементы цифровой техники.
Основу цифровой техники составляют логические элементы, в которых существует определенная логическая связь между
входными и выходными сигналами, принимающими значения
логических ноля или единицы. Эта связь определяется логической функцией, для описания которой используют математическую логику. Для простоты анализа функциональных возможностей логических элементов и построения временны х диаграмм
их работы применяют таблицы состояний входных и выходных
сигналов.
В настоящее время в цифровой технике применяют около
тридцати логических элементов, включая триггеры. Их широко
используют в автоматике, связи, компьютерной технике, из них
построены современные микропроцессорные устройства, которые можно самостоятельно программировать для выполнения
функций управления бытовыми приборами в умных домах, технологических процессах в роботизированных конвейерных линиях, радиосвязи и телекоммуникациях.
Основной задачей данного учебного пособия является создание условий для формирования у учающихся принятого в данной
области цифрового мышлени я, а цел ью – углубление и закреп ление теоретических знаний по применению наиболее распространенных цифровых элементов, узлов и устройств, а также приобретение навыков работы с цифровыми интегральными схемами
и устройствами, построенными на их основе.
3

ГЛАВА 1. ОСНОВЫ
ТЕОРИИ ЦИФРОВЫХ УСТРОЙСТВ
1.1. СИСТЕМЫ СЧИСЛЕНИЯ. КОДИРОВАНИЕ ЧИСЕЛ
В современном мире человека окружают числа, которые
должны быть понятны и однозначны, изображаться одинаково.
Для этого и возникла система счисления.
Система счисления – это совокупность правил для представления чисел с помощью различных письменных знаков.
Считать люди научились еще в древние времена. До сих пор
сохранились сведения о подсчете различных предметов с помощью черточек и засечек, оставленных на камне, дереве, глине.
Каждой черточке соответствовала одна единица предмета. Естественно, чем больше предметов требовалось подсчитать, тем
объемнее становилась запись числа. Все это приводило к двум
проблемам: невозможности записи длинных чисел на ограниченном пространстве и росту ошибок в подсчетах из-за лишней или
недописанной засечки.
Наряду с развитием человеческого общества совершенствовались и системы счисления. Первым большим скачком в развитии
систем счисления стала древнеегипетская непозиционная система
счисления.
Непозиционной системой счисления называют систему, в которой величина каждой цифры является постоянной и не зависит от места в записи числа. В данной системе каждый символ
обозначает число степени 10: 1, 10, 102, 103, 104, 105, 106. Пример
изображения египетской системы счисления приведен в таб-
лице 1.1.
4

1.1. Системы счисления. Кодирование чисел
Таблица 1.1
Египетская система счисления
Символьное
обозначение
Значение 1 10 10 0 1000 10 000 100 000 1 000 000
Любые другие числа записывались повторением символьных
обозначений от 1 до 9 раз. Например, число 318 представляет собой запись следующего вида:
При этом порядок расстановки символов значения не имеет.
Из непозиционных систем счисления до сих пор активно
используют римскую систему счисления, в основном для наименования томов, разделов и глав в книгах, обозначения знаменательных дат. Она принципиально отличается от древнеегипетской тем, что число обозначают набором стоящих подряд цифр.
В качестве цифр римской системы счисления используют символы латинского алфавита. Их значения приведены в таблице 1.2.
Таблица 1.2
Римская система счисления
Символьное
обозначение
Значение 1 5 10 50 100 500 1000
I V X L C D M
Запись числа происходит по следующим правилам:
1) если цифра, обозначающая меньшее число, стоит справа от
цифры, обозначающей бол ьшее число, то их значения складываются;
2) если цифра, обозначающая меньшее число, стоит слева
от цифры, обозначающей большее число, то значение меньшей
цифры вычитается из значения большей. При этом вычитаться
могут только цифры, обозначающие 1 или степени 10. Повторение цифры, обозначающей меньшее число, не допускается;
3) если рядом стоят две или три одинаковые цифры, то их
значения складываются. Подряд одна и та же цифра может ставиться не более трех раз.
Пример записи числа с помощью римской системы счисления:
LXXXIX = 50 + (10 + 10 + 10) + (10 – 1) = 89.
5

Глава 1. Основы теории цифровых устройств
Однако даже такая система обладает недостатками, такими
как громоздкость и непрактичность записи. Наиболее удобными
являются позиционные системы счисления, в которых вес каждой
цифры зависит от ее положения в числе.
Самой распространенной современной системой счисления
является позиционная десятичная система. В ней используют
цифры 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, называемые арабскими. Предполагается, что основание 10 связано с количеством пальцев на
руках у человека.
Основание системы счисления – это количество цифр, с помощью которых можно записать любое число в данной системе. Местоположение цифры в записи числа называют разрядом.
Помимо десятичной, в современных компьютерах используют
системы счисления с основаниями 2, 8 и 16, а также двоично-десятичную систему. Примеры записи чисел в различных системах
счисления представлены в таблице 1.3.
Таблица 1.3
Запись чисел в различных системах счисления
Системы счисления
Десятичная Двоичная
0 0 0 0 0000
1 1 1 1 0001
2 10 2 2 0010
3 11 3 3 0011
4 100 4 4 0100
5 101 5 5 0101
6 110 6 6 0110
7 111 7 7 0111
8 1000 10 8 1000
9 1001 11 9 1001
10 1010 12 A 00010000
11 1011 13 B 00010001
12 1100 14 C 00010010
13 1101 15 D 00010011
14 1110 16 E 00010100
15 1111 17 F 00010101
16 10000 20 10 00010110
Восьме-
ричная
Шестнадца-
теричная
Двоично-
десятичная
6

1.1. Системы счисления. Кодирование чисел
1 2 10
1 2 10
nn
Любое целое число А в позиционной системе счисления мож-
но представить с помощью формулы
nn
A a q a q aq aq
nn
,
(1.1)
где а – некоторая цифра в записи числа; n – количество цифр в
числе; q – основание системы счисления.
Формулу (1.1) также используют для перевода целого числа
из любой позиционной системы счисления в десятичную.
Пример перевода числа 462 из семеричной системы счисле-
ния в десятичную:
4627 = 4 ∙ 72 + 6 ∙ 71 + 2 ∙ 70 = 196 + 42 + 2 = 24010.
Для представления дробного числа B в позиционной системе
счисления используют формулу
1
n
B bq b q b q b q
12
12 1
n
,
(1.2)
где b – некоторая цифра в записи числа.
Формулу (1.2) также используют для перевода дробного чис-
ла из любой позиционной системы счисления в десятичную.
Пример перевода числа 0,1011 из двоичной системы счисле-
ния в десятичную:
0,10112 = 1 ∙ 2–1 + 0 ∙ 2–2 + 1 ∙ 2–3 + 1 ∙ 2–4 =
= 0,5 + 0 + 0,125 + 0,0625 = 0,687510.
Для перевода целых чисел из десятичной системы счисления
в любую другую позиционную используют следующие правила:
1) исходное число делится на основание системы счисления,
в которую оно переводится, с получением частного и остатка;
2) если полученное частное строго больше, чем основание
системы счисления, то над частным выполняют действия из
шага 1. Иначе осуществляется переход к шагу 3;
3) для получения числа в системе счисления с основанием больше 10 требуется дополнительная замена получившихся
остатков на необходимые символьные обозначения (например,
для получения числа в шестнадцатеричной системе счисления
остаток 11 должен быть заменен согласно таблице 1.3 на символ В);
4) из остатков формируется результирующее целое число в
порядке, обратном их получению. Самым старшим разрядом яв-
7

Глава 1. Основы теории цифровых устройств
ляется остаток, полученный последним, а самым младшим – полученный первым.
Пример перевода числа 57 из десятичной системы счисления
в третичную:
57 3
– 57 19 3
– 18 6 3
0
– 6
1
0
← дальнейшее деление на 3 невоз-
2
можно. Данное число будет являться
старшим разрядом результирующего
числа.
Таким образом, 5710 = 20103.
Для перевода дробной части числа из десятичной системы
в любую другую позиционную используют следующие правила:
1) исходная дробь умножается на основание системы счисле-
ния, в которую она переводится;
2) в полученном произведении при необходимости целая
часть преобразуется (для перевода в системы счисления с основанием больше 10) и отбрасывается;
3) с полученной дробью вновь выполняют действия шагов 1
и 2;
4) умножение происходит до получения нулевого результата
либо достижения заданной точности;
5) результирующая дробь формируется из последовательно
отброшенных целых чисел из шага 2 в порядке их получения.
Пример перевода дроби 0,614 из десятичной системы счисле-
ния в пятеричную. Точность перевода – 4 знака после запятой:
0,614 ∙ 5
0,07 ∙ 5
0,35 ∙ 5
0,754 ∙ 5
3
0
1
3
,07
,35
,75
,75
Таким образом, 0,61410 = 0,30135.
Если число имеет целую и дробную части, то результирую-
щие части складываются.
Для перевода числа из двоичной системы счисления в восьмеричную или шестнадцатеричную и наоборот используют правила триад и тетрад соответственно.
8

1.1. Системы счисления. Кодирование чисел
Перевод из двоичной системы счисления в восьмеричную
(шестнадцатеричную) осуществляется по следующим правилам:
1) число делится на триады (тетрады) вправо и влево от десятичной точки. Если крайние триады (тетрады) неполные, то они
заполняются незначащими нулями;
2) каждая триада (тетрада) переводится, согласно таблице 1.3,
в необходимую систему счисления.
Пример перевода числа 1101001001,1100101112 из двоичной си-
стемы счисления:
• в восьмеричную:
Целая часть Дробная часть
добавление двух →
незначащих нулей
001 101 001 0 01 110 010 111
1 5 1 1 6 2 7
Таки м образом, 1101001001,1100101112 = 1511,6278;
• в шестнадцатеричную:
Целая часть Дробная часть
добавле- →
ние двух
незначащих нулей
0011 010 0 1001 1100 1011 1000 ← добавле-
3 4 9 12 = С 11 = В 8
ние трех
незнача-
щих нулей
Таки м образом, 1101001001,1100101112 = 349,СВ816.
Перевод из восьмеричной (шестнадцатеричной) системы счи-
сления в двоичную осуществляется по следующим правилам:
1) каждая цифра числа переводится в двоичную систему
счисления согласно таблице 1.3;
2) при необходимости для получения полной триады (тетрады) требуется дополнить число незначащими нулями.
Пример перевода числа 3750,114 из восьмеричной системы
счисления в двоичную:
Целая часть Дробная часть
3 7 5 0 1 1 4
добавление →
011 111 101 00 0 001 001 100
незначащих
нулей
Таким образом, 3750,1148 = 1111110100 0,00100112.
Пример перевода числа Е17,9А1 из шестнадцатеричной систе-
мы счисления в двоичную:
9

Глава 1. Основы теории цифровых устройств
Целая часть Дробная часть
E 1 7 9 A 1
добавление →
1110 0001 0111 1001 1010 0001
незначащих нулей
Таким образом, Е17,9А18 = 111000010111,1001101000012.
Данные (символы, числа, графика, звук) представляют собой
последовательность низких и высоких значений – 0 и 1. Таким
образом, любую обработку данных внутри компьютера можно
воспринимать как преобразование слов из нулей и единиц по
правилам, зафиксированным в микросхемах процессора. Каждый элемент последовательности из нулей и единиц называют
битом.
Для представления чисел в электронных вычислительных
машинах (ЭВМ) обычно используют битовые наборы – последовательности нулей и единиц фиксированной длины.
В машинной технике требуется оперировать различными
представлениями чисел. Так, для целых чисел со знаками существует три способа кодирования:
• прямой код;
• обратный код;
• дополнительный код.
Данные способы оперируют самым левым (старшим) разрядом битового набора для кодирования знака числа (если число
положительное либо равняется нулю, то данный разряд принимает значение 0, иначе – 1). Оставшиеся разряды образуют абсолютную величину числа, называемую мантиссой.
Положительные числа в прямом, обратном и дополнительном кодах изображаются одинаково – мантисса содержит двоичную запись числа, а в знаковом разряде содержится 0.
Пример кодирования 8-разрядного битового набора:
1010 = 1010
2
11510 = 1110 011
2
знак мантисса знак мантисса
Прямой код 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 1
Обратный
0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 1
код
Дополнитель-
0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 1
ный код
10
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
