Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Электроника и схемотехника. Практикум. Учебное пособие
.pdf
необходимых для записи чисел. Поэтому используют и другие
системы счисления (рис. 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
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
