При решении задач на ЭВМ исходные данные обычно задаются в десятичной системе счисления; в этой же системе, как правило, нужно получить и результат решения задачи. Но если ЭВМ работает в какой-либо другой системе счисления, например в двоичной, то возникает необходимость перевода чисел из одной системы счисления в другую. При рассмотрении правил такого перевода мы ограничимся только такими системами счисления, у которых базисными числами являются последовательные целые числа от 0 до P-1 включительно, где P – основание системы счисления.
При переводе числа из десятичной системы счисления в систему счисления с основанием Р перевод целой и дробной части числа производится отдельно. Перевод целого числа из десятичной системы счисления в любую другую с основанием Р производится многократным делением десятичного числа на основание Р, пока частное не станет меньше Р. Последнее частное будет старшим разрядом числа, а остаток от первого деления на Р – младшим. На практике удобно пользоваться следующей схемой, которую проиллюстрируем при переводе числа 56 из десятичной системы счисления в двоичную, восьмеричную и шестнадцатеричную:
56(10)→ (2) → (8) → (16)
56 | 2 | |||||
56 | 28 | 2 | ||||
0 | 28 | 14 | 2 | |||
0 | 14 | 7 | 2 | |||
0 | 6 | 3 | 2 | |||
1 | 2 | 1 последнее частное | ||||
1 |
Ответ: 56(10)=111000(2);
56 | 8 |
56 | 7 |
0 |
Ответ: 56(10)=70(8).
56 | 16 |
48 | 3 |
8 |
Ответ: 56(10)=38(16).
Чтоб ы перевести правильную дробь из десятичной системы счисления в любую другую с основанием P, ее последовательно умножают на P, при этом каждый раз умножается только дробная часть образовавшегося произведения. Процесс перевода продолжается либо до достижения заданной точности, либо до обнаружения периода. Дробь в системе счисления с основанием P записывается в виде дроби из целых частей образовавшихся произведений, начиная с первого.
Перевод десятичных дробей удобно производить по схеме, которую проиллюстрируем на примерах.
Перевести:
1) 0,75(10)→(8)
0, | 75 8 |
6, | 00 |
Ответ: 0,75(10)=0,6(8)
2) 0,7(10)→(16)
0, | 7 16 |
11, | 2 |
16 | |
3, | 2 |
Ответ: 0,7(10)=0,В(3)(16)
2) 0,4(10)→(2)
0, | 4 2 |
0, | 8 2 |
1, | 6 |
Ответ: 0,4(10)=0,01(2)
Примеры для отработки навыков
1) 0,45(10)→(2);2) 0,6(10) →(8);3) 0,95(10) →(16);
4) 425,6(10) →(8);5) 147,4(10) →(2);6) 5827,8(10) →(16).
Перевод числа, записанного в системе счисления P, в десятичную систему выполняется с учетом веса каждого разряда или путем записи числа в виде разложения по степеням основания P. Например,
1) 1101(2) →(10)
1101(2)=1· 103 + 1· 102 + 0·101+ 1· 100 (2) →1·8+1·4+0·2+1(10)=13(10);
или по схеме:
двоичное число 1 1 0 1(2)десятичное число
8 4 2 1
1х1=1
0х2=0
1х4=4
1х8=8
Ответ: 13(10)
Во втором случае перевод выполняется с учетом веса каждого разряда.
2) 354,4(8) =3·82+5·81+4·80+4·8-1(10) =192+40+4+0,5(10)=236,5(10);
3) A1F,8(16)=A·162+1·161+F·160+8·16-1(16) = 10·162+1·16+15+8/16(10)= =2591,5(10).
Примеры для отработки навыков.
1) 1А0,Е(16) → (10);2) –1011101,101(2) → (10); 3) 101,1(8) → (10)
Дата: 2019-07-30, просмотров: 212.