Перевод
числа из десятичной системы счисления в позиционную систему счисления
с основанием X можно выполнить следующим образом:
1)
число, представленное в десятичной системе счисления, делится на
X, при этом полученный остаток (натуральное число, меньшее X) запоминается;
2) полученное от деления число вновь делится на X, полученный остаток
также запоминается;
3)
деление (и запоминание остатков) продолжается до тех пор, пока не
будет получено число, меньшее X.
После
этого формируется число в позиционной системе счисления с основанием
X: полученное последнее число и остатки записывают в обратном порядке,
то есть справа записывают первый остаток, левее следующий остаток
и так далее, в конце (слева) записывают последнее полученное число,
меньшее X.
Перевод
числа 12 из десятичной системы счисления в позиционную систему счисления
с основанием 2 (X = 2) можно выполнить так:
12 : 2 = 6 (остаток 0), так как 6 не меньше 2, то
6 : 2 = 3 (остаток 0), так как 3 не меньше 2, то
3 : 2 = 1 (остаток 1), так как частное 1 меньше 2, то записываем число
в обратном порядке 11002.
То есть
12 = 11002.
Перевод
числа 250 из десятичной системы счисления в восьмеричную систему счисления
(X = 8) можно выполнить аналогичным образом:
250 : 8 = 31 (остаток 2), так как 31 не меньше 8, то
31 : 8 = 3 (остаток 7), так как частное 3 меньше 8, то записываем
число в обратном порядке 3728.
То есть
250 = 3728.
Перевод
числа 250 из десятичной системы счисления в шестнадцатеричную систему
счисления (X = 16) можно выполнить аналогично:
250 : 16 = 15 (остаток 10), так как частное 15 меньше 16, то записываем
число (учитывая, что 15 = F, 10 = A) в обратном порядке FA16.
То есть
250 = FA16.
Попробуйте
самостоятельно перевести число 250 в систему счисления с основанием
6 и сравните с ответом (ответ: 250 = 6546).
Перевод
в десятичную систему счисления
Перевод числа из позиционной системы счисления с основанием X в десятичную
систему счисления можно выполнить, представив число в виде записанного
ранее ряда:
an
Xn + an-1
Xn-1 + … + a2
X2 + a1 X1
+ a0 X0,
для
которого надо выполнить операции возведения в степень, умножения и
сложения.
Например,
11002 = 1 · 23
+ 1 · 22 + 0 ·
21 + 0 · 20
= 1 · 8 + 1 · 4 +
0 · 2 + 0 · 1 = 8
+ 4 + 0 + 0 = 12,
3728
= 3 · 82 + 7 ·
81 + 2 · 80
= 3 · 64 + 7 · 8 +
2 · 1 = 192 + 56 + 2 = 250,
FA16
= F · 161 + A
· 160 = 15·
161 + 10 · 160
= 240 + 10 = 250.
Попробуйте самостоятельно перевести число 6546
в десятичную систему счисления.
Перевод
чисел между системами счисления, отличными
от десятичной
В общем случае перевод чисел из позиционной системы счисления с основанием
Y (отличным от 10) в позиционную систему счисления с основанием Z
(также отличным от 10) можно выполнить следующим образом.
Число,
записанное в системе с основанием Y, следует последовательно делить
на число Z (это число Z должно быть предварительно представлено в
системе счисления с основанием Y) и затем записать полученное последнее
число и остатки в обратном порядке.
Например,
надо перевести число 3068 в троичную систему
счисления (Y = 8, Z = 3). Следует отметить, что число три (представленное
в троичной системе счисления) в восьмеричной системе счисления также
равно трём. Тогда при переводе числа 3068 в троичную систему счисления
можно это число последовательно делить на 3 (в восьмеричной системе
счисления).
3068 : 3 = 1028
(остаток 0), так как 1028 не меньше 3,
то
1028 : 3 = 268
(остаток 0), так как 268 не меньше 3,
то
268 : 3 = 78
(остаток 1), так как 78 не меньше 3, то
78 : 3 = 2 (остаток 1), так как 2 меньше
3, то записываем число в обратном порядке 211003.
То есть 3068 = 211003.
Например, надо выполнить обратный перевод,
то есть перевести число 211003 в восьмеричную
систему счисления (Y = 3, Z = 8). Число 8 (представленное в восьмеричной
системе счисления) будет представлено числом 223
в троичной системе счисления.
Тогда
при переводе числа 211003 в восьмеричную
систему счисления можно это число последовательно делить на 223.
211003 : 223
= 2203 (остаток 203,
то есть 203 = 610
= 68), так как 2203
не меньше 223, то
2203
: 223 = 103
(остаток 0), так как 103 меньше 223,
то (учитывая, что 103 = 310
= 38) записываем число в обратном порядке
3068.
То
есть 211003 = 3068.
Если основания систем счисления связаны соотношением
Y = Zn (где n – натуральное число),
то перевод
чисел из одной указанной системы в другую упрощается. В этом случае,
при переводе из системы с основанием Y в систему с основанием Z, число
разбивается на группы по n чисел в группе. Каждая группа переводится
в систему с основанием Z, затем полученные цифры записывают в порядке
следования групп.
При
обратном переводе (из системы с основанием Z в систему с основанием
Y) каждая цифра числа (представленная в системе с основанием Z) переводится
в систему с основанием Y (по n знаков в каждой группе, при этом недостающие
знаки дополняются нулями).
В настоящее
время в компьютерах используется двоичная система счисления, а для
отображения данных (представленных в памяти компьютера) широко используется
также шестнадцатеричная система счисления. Так как основания этих
систем счисления связаны соотношением
Y
= Zn (в данном случае 16 = 24),
то перевод
чисел из одной указанной системы в другую можно выполнить указанным
способом.
При переводе
двоичного
числа в шестнадцатеричную
систему счисления можно выполнить следующие действия.
Вначале
разбиваем двоичное число на группы по 4 разряда (справа налево). Если
в последней группе окажется менее 4 разрядов, то недостающие разряды
дополняем нулями (слева).
Затем
каждую группу двоичных разрядов переводят в десятичную систему (при
этом полученные десятичные числа представляют шестнадцатеричными цифрами)
и записывают эти цифры в порядке следования групп.
Например,
при переводе числа 1110001112 в шестнадцатеричную
систему счисления разбивают данную последовательность на группы (дополнив
недостающие разряды нулями)
00012
11002 01112,
затем
выполняют перевод в десятичную систему счисления
00012 = 0 · 23
+ 0 · 22 + 0 ·
21 + 1 · 20
= 0 + 0 + 0 + 1 = 1,
11002= 1 · 23
+ 1 · 22 + 0 ·
21 + 0 · 20=
1 · 8 + 1 · 4 + 0
· 2 + 0 · 1 = 8 +
4 + 0 + 0 = 12,
01112 = 0 · 23
+ 1 · 22 + 1 ·
21 + 1 · 20
= 0 · 8 + 1 · 4 +
1 · 2 + 1 · 1 = 0
+ 4 + 2 + 1 = 7,
то есть, получаем три числа 110, 1210,
710.
Так
как 110 = 116,
1210 = C16,
710 = 716,
то получаем
1110001112 = 1C716.
Обратный перевод шестнадцатеричного
числа в двоичную
систему счисления можно выполнить следующим образом.
Каждую
шестнадцатеричную цифру представляют десятичным числом, которую переводят
в двоичную систему (представляя 4 разрядами). Получившиеся двоичные
числа записывают в порядке их следования.
Например,
при переводе числа E216 в двоичную систему
счисления это число представляют так:
E16
= 1410, 216
= 210,
далее
выполняют перевод в десятичную систему счисления
14 = 11102, 2 = 00102
и записывают
E216 = 111000102.
Аналогичным образом можно переводить число, например, из двоичной
системы счисления в восьмеричную, но, так как
8 = 23,
то последовательность
бит разбивают на группы по 3 разряда.