- •2. Арифметические основы микропроцессорной техники
- •2.1. Системы счисления
- •2.2. Перевод из одной системы счисления в другую
- •2.2.1. Перевод целого десятичного числа в двоичную систему счисления
- •2.2.4. Перевод целого двоичного числа в шестнадцатеричную систему счисления
- •2.2.5. Перевод целого шестнадцатеричного числа в двоичную систему счисления
- •2.2.6. Перевод целого шестнадцатеричного числа в десятичную систему счисления
- •2.2.7. Перевод дробного десятичного числа в двоичную систему счисления
- •2.2.8. Перевод дробного двоичного числа в десятичную систему счисления
- •2.3. Представление информации в вычислительно технике
- •2.3.1. Целые числа без знака (unsigned)
- •2.3.2. Целые числа со знаком (signed)
- •2.3.3. Числа с плавающей точкой (float)
- •2.3.4. Символьные данные (char)
- •2.3.5.2. Представление десятичного числа в двоично-десятичном неупакованном формате
- •2.3.5.3. Перевод bcd упакованного формата в десятичное число
- •2.3.5.4. Перевод bcd неупакованного формата в десятичное число
- •2.4. Арифметические операции
- •2.4.1. Арифметическое сложение
- •2.4.1.1. Арифметическое сложение двоичных чисел
- •2.4.1.2. Арифметическое сложение шестнадцатеричных чисел
- •2.4.2. Арифметическое вычитание
- •2.4.3. Арифметическое умножение
- •2.4.4. Арифметическое деление
- •2.5. Проверка результатов выполнения арифметических операций
2.2. Перевод из одной системы счисления в другую
2.2.1. Перевод целого десятичного числа в двоичную систему счисления
Перевод целого десятичного числа в двоичную систему счисления производят последовательным делением десятичного числа на основание двоичной системы счисления р=2.
Перевод выполняется по следующему правилу:
Разделить исходное десятичное число на 2.
Найти частное от деления.
Вычислить остаток, который является символом младшего 0-го разряда двоичного числа.
Разделить полученное частное от деления на 2.
Найти новое частное от деления.
Вычислить новый остаток, который является символом следующего разряда двоичного числа.
Проверить частное от деления:
- если частное от деления больше единицы, то перейти к пункту 4;
- если частное от деления равно единице, то перейти к пункту 8.
Частное от деления, равное единице, является старшим значащим разрядом двоичного числа.
Пример: Перевести целое десятичное число 12510 в двоичную систему счисления.
Порядок перевода приведен в таблице 2.1.1.
Табл.2.9. Перевод десятичного числа 12510 в двоичную систему счисления
№ |
Деление |
Частное от деления |
Вычисление остатка |
Остаток |
Комментарий |
1 |
125 : 2 |
62 |
125 - (622) |
1 |
0-й (младший) разряд |
2 |
62 : 2 |
31 |
62 – (312) |
0 |
1-й разряд |
3 |
31 :2 |
15 |
31 – (152) |
1 |
2-й разряд |
4 |
15 : 2 |
7 |
15 – (72) |
1 |
3-й разряд |
5 |
7 :2 |
3 |
7 - (32) |
1 |
4-й разряд |
6 |
3 : 2 |
1 |
3 - (12) |
1 |
5-й разряд |
7 |
1 :2 |
0 |
1 |
1 |
6-й старший значащий разряд |
После перевода в столбике «Остаток» будет записано двоичное число, которое необходимо переписать в строчку снизу вверх слева направо, начиная со старшего значащего разряда.
Ответ: 12510 = 11111012.
2.2.2. Перевод целого двоичного числа в десятичную систему счисления
Перевод целого двоичного числа в десятичную систему счисления выполняется счисления по формуле степенного ряда an-1рn-1 + an-2рn-2 + . . . + a1р1 + a0р0 , где р=2. Перевод выполняется в следующей последовательности:
Записать формулу степенного ряда с учетом разрядности числа n.
Подставить в формулу значение битов двоичного числа.
Вычислить сумму членов степенного ряда.
Полученная сумма является десятичным эквивалентом двоичного числа.
Пример: Перевести двоичное число 11111012 в десятичную систему счисления. Для данного двоичного числа составляем степенной ряд, который будет использоваться для вычислений:
a6р6 + a5р5 + a4р4 + a3р3 + a2р2 + a1р1 + a0р0 , где р=2.
Табл.2.10. Соответствие номера разряда и значения бита двоичного числа
Номер бита, i |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Бит ai |
a6 |
a5 |
a4 |
a3 |
a2 |
a1 |
a0 |
Значение бита ai |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
Подставляем в формулу значение битов ai и основание системы счисления р=2
11111012 = 1·26 + 1·25 +1·24 + 1·23 + 1·22 + 0·21 + 1·20 = 64+32+16+8+4+0+1 = 12510.
Ответ: 11111012 = 12510.
2.2.3. Перевод целого двоичного числа в десятичную систему счисления суммированием весов единичных разрядов.
Перевод выполняется в следующей последовательности:
Найти в двоичном числе разряды (биты), равные единице.
Определить веса найденных единичных разрядов рi.
Сложить все веса единичных разрядов.
Пример: перевести двоичное число 11111012 в десятичную систему счисления.
Табл.2.11. Таблица соответствия номера разряда и веса разряда двоичного числа
-
Номер бита, i
6
5
4
3
2
1
0
Вес бита, i
64
32
16
8
4
2
1
Значение бита ai
1
1
1
1
1
0
1
Вес единичного бита
64
32
16
8
4
0
1
Складываем веса единичных (6, 5, 4, 3, 2 и 0)- разрядов: 64+32+16+8+4+0+1 = 12510.
Ответ: 11111012= 12510.