Практическая информатика


Перевод чисел из одной системы счисления в другую - часть 2


Эти два способа применимы при переводе числа из десятичной системы в систему с любым основанием. Для закрепления навыков рассмотрим перевод числа 567 в систему счисления с основанием 16.

Сначала осуществим разложение данного числа по степеням основания. Искомое число будет состоять из трех цифр, т. к. 162=256 < 567 < 163=4096. Определим цифру старшего разряда. 2*162=512<567<3*162=768, следовательно искомое число имеет вид 2хх, где вместо х могут стоять любые шестнадцатеричные цифры. Остается распределить по следующим разрядам число 55 (567-512). 3*16=48<55<4*16=64, значит во втором разряде находится цифра 3. Последняя цифра равна 7 (55-48). Искомое шестнадцатеричное число равно 237.

Второй способ состоит в осуществлении последовательного деления в столбик, с единственным отличием в том, что делить надо не на 2, а на 16, и процесс деления заканчивается, когда частное становится строго меньше 16.

Конечно, не надо забывать и о том, что для записи числа в шестнадцатеричной системе счисления, необходимо заменить 10 на A, 11 на B и так далее.


Операция перевода в десятичную систему выглядит гораздо проще, так как любое десятичное число можно представить в виде x = a0*pn + a1*pn-1 + ... + an-1*p1 + an*p0, где a0 ... an - это цифры данного числа в системе счисления с основанием p.

Пример. Переведем число 4A3F в десятичную систему. По определению, 4A3F= 4*163+A*162+3*16+F. Заменив A на 10, а F на 15, получим 4*163+10*162+3*16+15= 19007.

Пожалуй, проще всего осуществляется перевод чисел из двоичной системы в системы с основанием, равным степеням двойки (8 и 16), и наоборот. Для того чтобы целое двоичное число записать в системе счисления с основанием 2n, нужно

  • данное двоичное число разбить справа налево на группы по n-цифр в каждой;
  • если в последней левой группе окажется меньше n разрядов, то дополнить ее нулями до нужного числа разрядов;
  • рассмотреть каждую группу, как n-разрядное двоичное число, и заменить ее соответствующей цифрой в системе счисления с основанием 2n.
Двоично-шестнадцатеричная таблица
2-ная00000001 001000110100010101100111
16-ная01234567
2-ная1000100110101011110011011110 1111
16-ная89ABCDEF
Двоично-восьмеричная таблица
2-ная000001010011100 101110111
8-ная01234567

Задания

  1. Переведите в десятичную систему счисления:

    а) 100011102; б) 123458; в) AA02D34B16.

  2. Сравните два числа:

    а) 10268 и 21616; б) 111112 и 111113.




- Начало -  - Назад -  - Вперед -