- •Д.В. Топольский, и.Г. Топольская Арифметические и логические основы микропроцессорной техники
- •Предисловие
- •Введение
- •1. Формы представления чисел
- •2. Двоичная система счисления
- •3. Восьмеричная система счисления
- •4. Шестнадцатеричная система счисления
- •5. Двоично-десятичные числа
- •6. Двоичная арифметика
- •7. Арифметика в обратном и дополнительном кодах
- •8. Математическая логика
- •Ответы к упражнениям
5. Двоично-десятичные числа
С целью удобства преобразования чистые двоичные числа представляются десятичными либо шестнадцатеричными. Однако двоично-десятичное преобразование — операция не простая. В контрольно-измерительной аппаратуре, устройствах индикации, телефонах, калькуляторах, когда на доступных пользователю выходах и входах широко распространены десятичные числа, для их представления используют специальный двоично-десятичный код.
Микропроцессоры выполняют арифметические операции с двоичными числами, но также они обладают командами для преобразования результата в двоично-десятичный код. Полученные двоично-десятичные числа легко затем представить в десятичной записи, использую табличный метод перекодировки с использованием таблицы.
Упражнения
1. Записать следующие десятичные числа в двоично-десятичном коде:
а) 99; б) 82; в) 17; г) 40; д) 65; е) 39.
2. Записать следующие двоично-десятичные числа в десятичном коде:
а) 01010101; б) 01000011; в) 01110110; г) 10010010; д) 00000001; е) 10000000.
6. Двоичная арифметика
Достоинством двоичной системы счисления, используемой в ЭВМ, является простота выполнения арифметических операций. Арифметические действия с двоичными числами выполняются по следующим правилам:
сложение |
вычитание |
умножение |
0 + 0 = 0 |
0 – 0 = 0 |
0 0 = 0 |
0 + 1 = 1 |
1 – 0 = 1 |
0 1 = 0 |
1 + 0 = 1 |
1 – 1 = 0 |
1 0 = 0 |
1 + 1 = 0 + 1 переноса в старший разряд |
10 – 1 = 1 |
1 1 = 1 |
В случае многоразрядных двоичных чисел арифметические операции выполняются подобно тому, как это делается в десятичной системе счисления. Например, при сложении необходимо учитывать возможные переносы единицы из младших разрядов в старшие. При вычитании многоразрядных двоичных чисел может оказаться необходимым «занять» единицу в старшем разряде, что дает две единицы в младшем разряде. Умножение двоичных чисел сводится к умножению множимого на каждый разряд множителя, и последующему сдвигу множимого или множителя и суммированию образующихся частичных произведений. Деление двоичных чисел производится путем последовательного выполнения вычитаний и сдвигов. Например:
|
|
|
|
|
|
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
|
|
|
|
|
|
|
|
|
1 |
0 |
0 |
1 |
1 |
|
|
|
|
|
|
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
|
|
|
|
|
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
|
|
|
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
|
|
|
|
|
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
Упражнения
1. Выполнить следующие сложения двоичных чисел:
а) 1010 + 0101; б) 1101 + 0101;
в) 01011011 + 00001111; г) 00111111 + 00011111.
2. Выполнить следующие вычитания двоичных чисел:
а) 1110 – 1000; б) 1010 – 0101;
в) 01100110 – 00011010; г) 01111000 – 00111111.
3. Выполнить следующие умножения двоичных чисел:
а) 1001 11; б) 1101 1001; в) 1111 101; г) 1110 1110.