Автор работы: Пользователь скрыл имя, 31 Октября 2013 в 21:45, реферат
Метод 1. Из любой системы счисления в десятичную.
Число представляется в виде суммы произведений ЦИФРЫ на ВЕС РАЗРЯДА.
Вес разряда – это основание СС в степени равной номеру разряда.
Разряды нумеруются от разряда единиц: влево – в положительную сторону, вправо – в отрицательную. Разряд единиц имеет номер 0.
Методы перевода чисел
Метод 1. Из любой системы счисления в десятичную.
Число представляется в виде суммы произведений ЦИФРЫ на ВЕС РАЗРЯДА.
Вес разряда – это основание СС в степени равной номеру разряда.
Разряды нумеруются от разряда единиц: влево – в положительную сторону, вправо – в отрицательную. Разряд единиц имеет номер 0.
Номер разряда |
3 |
2 |
1 |
0 |
-1 |
|
5 |
6 |
4 |
2, |
9(10) |
= 5·103 + 6·102 + 4·101 + 2·100 + 9·10-1 | |
Вес разряда |
103 |
102 |
101 |
100 |
10-1 |
Номер разряда |
3 |
2 |
1 |
0 |
-1 |
-2 |
-3 |
|
1 |
0 |
0 |
1, |
1 |
0 |
1(2) |
= 1·23 + 0·22 + 0·21 + 1·20 + 1·2-1 + 0·2-2 + 1·2-3 = | |
Вес разряда |
23 |
22 |
21 |
20 |
2-1 |
2-1 |
2-1 |
= 8 + 0 + 0 + 1 + + 0 + = 9,625(10) |
Номер разряда |
2 |
1 |
0 |
-1 |
||
2 |
1 |
4 |
, |
6(8) |
= 2·82 + 1·81 + 4·80 + 6·8-1 = 128 + 8 + 4 + = 140,75(10) | |
Вес разряда |
82 |
81 |
80 |
8-1 |
Номер разряда |
1 |
0 |
-1 |
||
2 |
B |
, |
E(16) |
= 2·161 + 11·160 + 14·16-1 = 32 + 11 + = 43,875(10) | |
Вес разряда |
161 |
160 |
16-1 |
Метод 2. Из десятичной системы счисления в любую другую.
В этом случае целая и дробная часть переводятся по отдельным правилам.
Для целой части: нужно последовательно разделить число и частные на основание новой СС до получения остатка. Деление продолжается до тех пор, пока частное не станет МЕНЬШЕ делителя, т.е. основания новой СС.
В первом шаге деления получается МЛАДШАЯ цифра числа.
Переведем число 30(10) в двоичную, восьмеричную и шестнадцатеричную СС:
в двоичную
1. Сначала разделим 30 на 2. Получаем 15 (в остатке – 0)
2. Теперь делим на 2 получившееся частное: 15:2=7 (в остатке – 1)
3. Опять делим на 2 получившееся частное: 7:2=4 (в остатке – 1)
4. Снова делим на 2 получившееся частное: 4:2=2 (в остатке – 0)
5. Продолжаем деление: 2:2=1 (в остатке – 0). Деление прекращается, т.к получившееся частное меньше основания новой СС (1<2)
Деление обычно делают в столбик:
30 |
2 |
|||
0 |
15 |
2 |
||
1 |
7 |
2 |
||
1 |
3 |
2 | ||
1 |
1 |
Результат перевода записывается В ОБРАТНОМ ПОРЯДКЕ. Первая цифра полученного результата – это последнее частное: 11110(2)
Аналогично производится перевод в восьмеричную СС:
30 |
8 |
6 |
3 |
Деление прекращается после первого же шага деления, т.к. получившееся частное меньше основания СС (3<8). Результат: 36(8)
Аналогично производится перевод в шестнадцатеричную СС:
30 |
16 |
14 |
1 |
Деление прекращается после первого же шага деления. Остаток «14» записывается цифрой Е. Результат: 1E(16)
Для дробной части: дробная часть переводится умножением на основание новой СС. После умножения целая часть результата ЗАПОМИНАЕТСЯ, а дробная – умножается дальше. Умножение производится до тех пор, пока дробная часть не станет равной нулю или не будет достигнута заданная точность (в нашем случае – 3 знака после запятой).
Переведем в двоичную, восьмеричную и шестнадцатеричную СС число 0,43(10):
1.Умножаем 0,43 на основание 2: 0,43·2=0,86
2.Запоминаем целую часть (0), дробную – умножаем дальше: 0,86·2=1,72
3.Снова запоминаем целую
4.Опять запоминаем целую часть (1).
Умножение прекращается, т.к. достигнута заданная точность (три знака после запятой).
0,43 |
0,86 |
0,72 | ||
х |
х |
х | ||
2 |
2 |
2 | ||
0,86 |
1,72 |
1,44 |
Результат перевода записывается В ПРЯМОМ ПОРЯДКЕ: 0,011(2)
Метод 3. Поразрядный метод перевода чисел: перевод чисел между двоичной, восьмеричной и шестнадцатеричной системами счисления туда и обратно
Для перевода из двоичной СС в восьмеричную: 1) число ОТ ЗАПЯТОЙ вправо и влево разбивается на группы по 3 разряда (триады);
2) недостающие разряды
В ДРОБНОЙ ЧАСТИ числа
3) каждая триада двоичных цифр заменяется одной восьмеричной цифрой в соответствии с ТАБЛИЦЕЙ ПЕРЕКОДИРОВКИ.
При обратном переводе каждая восьмеричная цифра заменяется ТРОЙКОЙ двоичных цифр (триадой).
2 |
0 |
1 |
10 |
11 |
100 |
101 |
110 |
111 |
1000 |
1001 |
1010 |
1011 |
1100 |
1101 |
1110 |
1111 |
8 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
16 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
Переведем число 10011,101(2) в восьмеричную СС:
1) вправо и влево от запятой разбиваем число на триады:
10 011 , 11(2)
2) т.к. справа триады не получилось – слева к числу дописываем один ноль:
10 011 , 110(2)
3) по таблице перекодировки заменяем каждую триаду на одну цифру:
10 011 , 110(2)
2 3 , 6(8)
Таким образом, результат: 23,6(8)
Переведем теперь число 73,4(8) из восьмеричной в двоичную СС:
По таблице перекодировки: 7(8) = 111(2); 3(8) = 011(2); 4(8) = 100(2). Таким образом, результат получается: 111011,1(2)
Обратите внимание на следующий момент: в таблице перекодировки 3(8) = 11(2). Но по правилу перевода одна восьмеричная цифра заменяется на ТРИ двоичные цифры, поэтому вперед дописывается 0 – он не изменяет значения числа: 3(8) = 011(2). И наоборот: нули в конце дробной части можно отбросить: 0,100(2) = 0,1(2)
Перевод из двоичной в шестнадцатеричную СС: делается аналогично, но вместо триад используются ТЕТРАДЫ – группы цифр по ЧЕТЫРЕ разряда.
При обратном переводе каждая шестнадцатеричная цифра заменяется ЧЕТВЕРКОЙ двоичных цифр (тетрадой).
Переведем то же самое число 10011,101(2) в шестнадцатеричную СС:
1) вправо и влево от запятой разбиваем число на тетрады:
1 0011 , 11(2)
2) т.к. справа тетрады не
1 0011 , 1100(2)
3) по таблице перекодировки
1 0011 , 1100(2)
1 3 , С(8)
Таким образом, результат: 13,С(8)
Переведем теперь число 5FC,8(16) из шестнадцатеричной в двоичную СС:
По таблице перекодировки: 5(16) = 0101(2); F(16) = 1111(2); С(16) = 1100(2); 8(16) =1000.
Таким образом, результат получается: 10111111100,1(2) (нули справа и слева от числа можно не писать).
Источник