Для перевода целого числа из 10-ичной системы в систему с основанием p , надо выполнять последовательное деление числа (затем частных) на p до тех пор, пока не получится остаток меньше p. Число в новой системе счисления запишется в виде остатков от деления, начиная с младшего разряда результата. Последний остаток от деления даст старший разряд результата.
Пример перевода целого числа 19 из 10-ичной с/с в 2-ичную (последовательным делением на 2):
19 | 1 | - младший разряд |
9 | 1 | |
4 | 0 | |
2 | 0 | |
1 | - старший разряд |
Таким образом, 19 10 = 10011 2
256 10 = ?2 представить в двух байтах:
256 16
0 16 16
0 1
256 10 = 100 16 = 0000000100000000 2 ;
1256 10 = ?2 представить в двух байтах:
1256 16
8 78 16
14 4 1 25610 = 4Е8 16
1256 10 = 4Е8 16 = 0000 0100 1110 1000 2 = 0000010011101000 2
Для перевода целого числа из системы счисления с основанием p в 10-ичную систему счисления используем развернутую форму записи числа в системе счисления с основанием p. Например:
111012 = 1*24 + 1*23 + 1*22 +1*20=2910.
Выполним перевод числа DFF16 в 10-ичную систему:
DFF16 = D*162 + F*161 + F*160 = 13*162 + 15*161 + 15*160 = 358310.
!!! Недесятичное число можно быстро перевести в 10-ичную с/с с помощью калькулятора. Для этого надо применить схему Горнера для вычисления алгебраических многочленов. Например:
2317458 =2*85 + 3*84 + 1*83 + 7*82 + 4*81 +5 =
((((2*8 + 3)*8 + 1)*8 + 7)*8 + 4)*8 + 5 = 7882110
Скобочное выражение можно вычислить на калькуляторе, последовательно слева направо выполняя умножения. Порядок нажатия клавиш показан на примере:
2 | * | 8 | + | 3 | * | 8 | + | 1 | * | 8 | + | 7 | * | 8 | + | 4 | * | 8 | + | 5 | = |
Запомним, что по схеме Горнера алгебраический многочлен n-ой степени можно вычислить за n операций умножения и n операций сложения. Это самый оптимальный способ вычисления.
Для перевода правильной дроби D из 10-ичной системы счисления в систему счисления с основанием p последовательно умножаем (в 10-ичной системе счисления) дробь D на основание системы счисления p.
Дробь в p-ичной системе счисления запишется в виде целых частей полученных произведений, начиная со старшего разряда. Целые части произведения в дальнейших операциях не используются.
Например: переводим в 2-ичную систему число 0.625 последовательным умножением на основание системы 2:
0, | 625 |
1 | 250 |
0 | 500 |
1 | 000 |
Имеем результат: 0.625 10 = 0.101 2.
Умножение проводится до тех пор, пока дробная часть не станет равной 0 (как в примере) или не будет достигнута заданная точность перевода (заданное количество цифр после запятой, естественно, с отбрасыванием лишнего знака и округлением).
Для перевода правильной дроби из системы счисления с основанием p в 10-ичную систему счисления надо воспользоваться развернутой формой записи числа в системе счисления с основанием p. Например:
0.101 2 = 1*2–1+ 0*2–2 +1*2–3 = 0.625 10.
Дата: 2019-05-28, просмотров: 218.