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

Электроника и схемотехника. Практикум. Учебное пособие

.pdf
Скачиваний:
1
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
необходимых для записи чисел. Поэтому используют и другие системы счисления (рис. 51).
Рис. 51. Примеры позиционных систем счисления
Привычная для человека система счисления – десятичная. В ее основу входят десять цифр от 0 до 9. Шестнадцатеричную сис­тему отличает наличие в ней первых шести букв латинского ал­фавита для записи чисел помимо основных цифр. То есть после цифры 9 следует символ «A», который соответствует числу 10 для десятичной системы. Соответственно F в шестнадцатеричной системе – это 16 в десятичной. Использование шестнадцати сим­волов в системе – неслучайный выбор. Единица информации – бит. Восемь бит образуют байт. Существует такое понятие, как машинное слово – это единица данных, представляющая собой два байта, то есть шестнадцать бит. Таким образом, используя шестнадцать различных символов, можно описывать любую ин­формацию, которая при обмене данных будет наименьшей части­цей. С ними можно производить любые арифметические дейст­вия, результат получится тоже в шестнадцатеричной системе. Для того чтобы отличать, что число записано в шестнадцатерич­ной системе, после него записывают букву «h» или нижний ин­декс «16». Наиболее широкое применение шестнадцатеричной системы счисления – это коды ошибок программных продуктов, например, операционной системы. Числа, заложенные в этих ко­дах, стандартизированы. Имея специальную таблицу, всегда можно определить, что именно означает та или иная ошибка. Любая информация в компьютере, будь то музыкальный файл
61
или текстовый документ, после трансляции представлена после-
®
=×+
×
довательностью исходного двоичного кода, а его удобнее про­сматривать представленным символами шестнадцатеричной сис­темы. Также одно из применений шестнадцатеричных символов – описание цветовых схем, то есть три компонента R, G, B описы­ваются соответствующим данной системе способом. Данный подход к записи получил название шестнадцатеричный цвет.
Задача 1. Переведем число 10410 в десятеричной системе счисления в системы счисления по основанию 4; 5; и 8, т. е.
104
счисления в системы счисления по основанию х4, х5, х
х4; х5; х8 (рис. 52).
10
Рис. 52. Пример перевода числа из десятеричной системы
8
Получилось 10410=12204=4045=1508.
Проверка: 1508=
12204= 10440424241
10485641
0123
=×+×+×+× .
;
Согласно данным табл. 21 по варианту перевести исходное целое число в десятичной системе счисления в системы счисле­ния по основаниям, указанным в таблице.
Таблица 21
Вари­ант
0 150 1 237 2 39 3 57 4 504 5 251
62
Исходное число в десятич­ное сис­теме
10
10 10 10
10
10
Перевести в систему счисления по осно­ванию х
2
Перевести в систему счисления по осно­ванию х
4
Перевести в систему счисления по осно­ванию х
+ + +
+ + + + + + + + +
+ + +
+ + +
8
Перевести в систему счисления по осно­ванию х
16
Окончание табл. 21
25684
1024
25614
6 355 7 93 8 106 9 99
10
10
10
10
+ + +
+ + + + + + + + +
Задача 2. Перевести дробное число 0,25710 в системы счис-
ления по основанию х4 и х5, ограничиваясь 5 разрядами (рис. 53).
Рис. 53. Пример перевода дробного числа из десятеричной
системы счисления в системы счисления по основаниям х4 и х
5
Получилось 0,100134 и 0,112035. Проверка:
4
Ошибка составляет -
0,11203
Ошибка -
5
10641-×, .
1
5
4
1
102-× .
25
5
2
125
---
1
434141100130
3
5
5
3
0
,, =++=×+×+×=
2569600009602560
,,, =+=+++=
541
Согласно данным табл. 22 по варианту перевести исходное дробное число в десятичной системе счисления в системы счис­ления по основаниям, указанным в таблице.
63
.
.
Таблица 22
Вариант Исходное число в
десятичное сис­теме
0 0,150 1 0,237 2 0,139 3 0,357 4 0,504 5 0,251 6 0,355 7 0,193 8 0,106 9 0,199
10 10 10 10 10 10 10 10 10 10
Перевести в систему счисления по основанию х
Перевести в систему счисления по основанию х
4
5
+ + + + + + + + + +
+ + + + + + + + + +
Перевести в систему счисле­ния по основа­нию х
8
Практическая работа № 18.
МАШИННЫЕ КОДЫ
Цель работы: освоить арифметические основы вычисли- тельной техники, машинные коды, сложение чисел в машинных кодах.
Краткие теоретические сведения
В ЭВМ в целях упрощения выполнения арифметических
операций применяют специальные коды для представления чи­сел. При помощи этих кодов упрощается определение знака ре­зультата операции. Операция вычитания (или алгебраического сложения) чисел сводится к арифметическому сложению кодов, облегчается выработка признаков переполнения разрядной сетки. В результате упрощаются устройства ЭВМ, выполняющие ариф­метические операции. Для представления чисел со знаком в ЭВМ применяют прямой, обратный и дополнительный коды.
С помощью двоичного кода можно легко перевести деся­тичное число в понятное компьютеру двоичное. С дробными числами расчет ведется по иному. Всем цифрам до «запятой» степень присваивается в обратном порядке, от нуля, как и обыч­но, а вот числа после «запятой» сопровождаются отрицательной степенью, причем она уменьшается от запятой.
64
Однако компьютер не может, допустим, приписать «минус» к двоичному числу и считать его отрицательным. Этот минус нужно где-то поместить. Простейший способ - снабдить число дополнитель­ным знаком (в восьмиразрядной ячейке, в этом случае мы сможем поместить семиразрядное двоичное число, где дополнительный раз­ряд будет означать знак - единица отрицательный, ноль - положи­тельный). Это называется «прямым кодом».
Но отрицательные числа лучше представлять по-другому, для того чтобы компьютер мог с ними работать. «Единица» в крайнем разряде по-прежнему будет выполнять роль «маркера» отрицательного числа. Но остальные разряды требуется инверти­ровать (т. е. разряды с нулями заменить единицей и наоборот). На месте остается только маркер. Затем к числу прибавляем едини­цу. Тогда ЭВМ может выполнять операции с числами (рис. 54). Знаковые разряды в этом случае просто не учитываются.
0 0111010+0 0111010 = 1110100 (58+58 = 116)
Рис. 54. Пример сложения целых чисел в машинных кодах
Но если число отрицательное - все меняется. Переводим его в дополнительный или обратный код (инвертируем все разряды кроме знакового, затем прибавляем единицу) и складываем снова, затем из результата вычитаем единицу и инвертируем его (рис. 55).
1 1000110+1 1000110 = 1 0001011 = 1 1110100 (-116)
Рис. 55. Пример сложения отрицательных чисел в машинных кодах
Вычитание работает по тому же принципу, умножение - пу­тем последовательного сложения. Что касается операции деле­ния, то она реализуется путем неоднократного сложения делимо­го с дополнительным кодом делителя до получения необходимо­го результата.
65
С дополнительным кодом - ещё интереснее. Сдвиг числа влево дает умножение на 2, вправо – деление на 2. Это очень удобно для умножения и деления целых чисел на числа, равные степени 2 (2, 4, 8, 1 6, 32, 64). Существует множество вариантов сдвига - арифметический, циклический, логический и т. д. Каж­дый выполняет свою задачу.
Обычно отрицательные десятичные числа при вводе в ма­шину автоматически преобразуются в обратный или дополни­тельный двоичный код и в таком виде хранятся, перемещаются и участвуют в операциях. При выводе таких чисел из машины про­исходит обратное преобразование в отрицательные десятичные числа.
Как известно, все математические операции в процессоре сводятся к операциям сложения, сдвига кода и логическим опе­рациям. Использование дополнительного и обратного кодов по­зволяет заменить вычитание, умножение, деление на используе­мые операции.
Прямой код ( ПК) (под знак отводится 1 бит, «+ » кодируется 0, «-» - единицей. Обратный код (ОК) положительного числа сов­падает с прямым, обратный код отрицательного числа получается инверсией содержательной части прямого кода. Нулю соответст­вуют 2 кода: 0.00..00 и 1.11..11.
Дополнительный код (ДК) положительного числа совпадает с прямым, ДК отрицательного числа образуется добавлением единицы в младший разряд обратного хода.
Модифицированные коды - прямой (МПК), обратный (МОК) и дополнительный (МДК). В модифицированных кодах под знак числа отводятся бита. «+» кодируется 00, «-» 11. Ком­бинации 01 и 10 означают ошибку в вычислениях, чаще всего ­переполнение разрядной сетки. Примеры кодирования двоичных чисел (табл. 23).
Таблица 23
Число ПК ОК ДК МПК МОК МДК
+1101
-1101
-1011
0.1101 0.1101 0.1101 00.1101 00.1101 00.1101
2
1.1101 1.0010 1.0011 11.0010 11.0010 11.0011
2
1.1011 1.0100 1.0101 11.0100 11.0100 11.0101
2
66
Задача 1. Перевести исходные числа в двоичной системе счисления (табл. 24) в ПК, ОК, ДК, МПК, МОК и МДК.
Таблица 24
Вариант Число в двоичной системе счисления
0 +1111 1 -1111 2 +10000 3 +111000 4 -1010101 5 +1010101 6 -110011 7 -111100 8 -1100111 9 +11001010
2
2
2
2
2
2 2 2
2
2
Сложение целых чисел в машинных кодах. Пример. Сло- жить а=10102 и b=1112 в МПК на шестиразрядной и восьмираз­рядной сетках (рис. 56). Сделать проверку.
шестиразрядная сетка восьмиразрядная сетка
00.1010 00.001010
+ +
00.0111 00.000111
01.0001 00.010001
Рис. 56. Пример сложения целых чисел в МПК на шестиразряд­ной и восьмиразрядной сетках
Как видно из рис. 55, на шестиразрядной сетке произошло переполнение. Восьмиразрядная сетка дала результат с=+100012. Сделаем проверку: а=23+21=10; b=22+21+20=7; с= 24+20=17. Верно.
Задача 2. Согласно данным табл. 25 сложить числа а и b в МОК и МДК на восьмиразрядной сетке и сделать проверку.
Таблица 25
Вариант а b
0 1 2 3
1010
-1100
-1100
-1111
2
2
2
2
-111 111
-1101
-1110
2
2
2
2
67
Окончание табл. 25
4 5 6 7 8 9
-1100
-1111
1010
-1100
-1100
1010
2
2
2
2
2
2
1101 1110
111 111
1101 1110
2
2
2
2
2
2
Машинное сложение чисел с плавающей запятой. Для про-
верки результатов понадобятся значения: 1/4=0,25; 1/8=0,125;
1/16=0,0625. Этапы машинного сложения чисел:
- машинное представление. В памяти ЭВМ числа с пла-
вающей запятой хранятся в виде мантиссы и порядка. Мантисса должна быть нормализована: в ее целой части должны быть толь­ко нули, дробная часть должна начинаться с цифры, отличной от нуля. 0.0,11012 - пример нормализованной мантиссы 0.1, 1101 и
0.0,0110 - ненормализованные мантиссы;
- сравнение порядков. Число с меньшим порядком «подтя-
гивается» под больший порядок сдвигом мантиссы вправо;
- сложение мантисс в МОК и МДК;
- формирование ответа. Мантисса ответа должна быть нор-
мализована.
Задача 3. Сложить а=+1,0112 и b=-0,1012 в МОК, 8 разрядов
под мантиссу, 2-й порядок. Сделать проверку:
а) машинное представление. а=00.00,1011е01; b=11.00,1010е00. Мантиссы в МПК: М(а)=00.00,1011И; М(b)=11.00,1010. Порядки: П(а)=01; П(b)=00;
б) сравниваем порядки: П(а)-П(b)=1-0=1. Сдвигаем b на од- ну позицию вправо: b,=11.00,0101е01;
в) складываем мантиссы в МОК: М
(b,)=11.11,1010 (рис. 57);
МОК
г) формируем ответ: с=+0,0110е01. Из-за лишнего нуля нормализуем сдвигом влево на 1 позицию: с=0,110е00. В нашем представлении с=+0,11
2;
д) проверка: а=1+ 1/4+1/8=1,375. b=-(1/2+1/8)=-0,625. с=1/2+1/4=0,75. Верно.
68
Рис. 57. Пример сложения мантисс в МОК
Согласно данным табл. 26 сложить числа а и b и сделать проверку.
Таблица 26
Вариант а b
0 +11,1 1 -10,11 2 +10,1 3 +10,1 4 -10,1 5 -10,1 6 -10,01 7 -10,01 8 +10,01 9 -11,1
2
2
2
2
2
2
2
2
2
2
+11,01
-10,01 +0,11
-0,11
-0,11
+0,11
+0,111
-0,111
-0,111
+11,01
2
2
2
2
2
2
2
2
2
2
Практическая работа № 19.
МИНИМИЗАЦИЯ ЛОГИЧЕСКИХ ФУНКЦИЙ
С ПОМОЩЬЮ МАТРИЦ ВЕЙЧА-КАРНО
Цель работы: приобрести навыки по составлению таблиц
истинности, записи логических функций, минимизации логиче­ских функций и составлению комбинационных схем из простей­ших логических элементов.
Задача синтеза комбинационной схемы, выходы которой в
любой момент времени однозначно определяются состоянием входов, состоит из следующих этапов [3]:
69
- составления таблицы истинности для входов и выходов
BA£
схемы;
- записи логической функции (или функций) для всех раз-
рядов выхода;
- минимизации логических функций;
- записи логических функций в заданном базисе;
- составления функциональной схемы по логическим функ-
циям.
Составление таблицы истинности заключается в записи
всех возможных состояний входных сигналов и соответствующих им состояний выходов.
Задача. Составить таблицу истинности устройства сравне- ния двух двухразрядных двоичных чисел, формирующего выход у=1, если А>B и y=0, если
Входы
Число А Число В
A1 A0 B1 B0 y
1 2 3 4 5 6 0 0 0 0 0 0=0 0 0 0 1 0 0<1 0 0 1 0 0 0<2 0 0 1 1 0 0<3 0 1 0 0 1 1>0 0 1 0 1 0 1=1 1 2 3 4 5 6 0 1 1 0 0 1<2 0 1 1 1 0 1<3 1 0 0 0 1 2>0 1 0 0 1 1 2>1 1 0 1 0 0 2=2 1 0 1 1 0 2<3 1 1 0 0 1 3>0 1 1 0 1 1 3>1 1 1 1 0 1 3>2 1 1 1 1 0 3=3
(табл. 27).
Выход
Таблица 27
Сравнение А и В в десятичных кодах*
70
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]