logo search
Программа Сетевой академии Cisco CCNA 3 и 4 (Вс

Преобразование чисел в двоичный, десятичный и шестнадцатеричный формат

Обычно существует несколько способов решить математическую задачу и преобра­зование числа из десятичной формы в двоичную не является исключением. В настоя­щем разделе описан один из таких методов, однако в конкретной ситуации можно ис­пользовать и другие, если их использование позволяет решить задачу проще.

Для преобразования десятичного числа в двоичную форму сначала требуется найти максимальную степень числа 2, которая не превосходит данного десятичного числа (см. табл. 20.4). Если задача решается с использованием компьютера, то ло­гичным первым шагом будет выбор максимального двоичного числа, которое может быть записано в одном или двух байтах.

Как уже говорилось ранее, чаще всего биты группируются по восемь битов, состав­ляющих один байт. Однако иногда наибольшее значение, которое можно записать в од­ном байте (255) оказывается недостаточно большим для имеющегося десятичного числа. В таких случаях следует объединять байты, т.е. вместо двух 8-битовых чисел исполь­зовать одно 16-битовое или вместо трех 8-битовых чисел одно 24-битовое. Такие же пра­вила применяются так же, как они применялись для 8-битовых чисел: предыдущее зна­чение умножается на два до тех пор, пока получившееся значение не достигнет значения в столбце таблицы. В табл. 20.5 приведены эти значения (начиная с 2-байтового/16- битового числа, которое будет играть большую роль при изучении механизма создания подсетей).

Поскольку для работающих с компьютером привычно использование байтов, проще всего начать работу с числами, обозначенными границами байтов и по ним вычислять последующие значения, как показано в табл. 20.5. Рассмотрим два примера подобных вычислений. Пусть первое число, которое требуется преобразовать в двоичную форму, равно 6783. Поскольку это число больше чем 255, которое является максимальным для одного байта, следует использовать число, состоящее из 2-х байтов. Начнем вычисления со значения 215. Действуя описанным выше методом, получим 6783 = 00011010 011111112.

В качестве второго примера рассмотрим число 104. Поскольку оно меньше 255, его можно записать в одном байте, как показано в табл. 20.6.

Таким образом, число 104 = 011010002.

Этот метод может быть применен к любому десятичному числу. Рассмотрим деся­тичное число 1 миллион. Поскольку 1 миллион больше, чем максимальное число, ко­торое можно записать в двух байтах, равное 65 535, необходимы как минимум 3 байта. Умножая на 2 до тех пор, пока двоичное число не достигнет 24 битов (3 байта), полу­чим значение 8 388 608; это означает, что максимальное число, которое можно запи­сать в 24 битах, равно 16 777 215. Следовательно, начиная с 24 битов, осуществляем де­ление на степени числа 2 до получения в остатке 0. В результате этого процесса полу­чим двоичную запись десятичного числа равного одному миллиону.

000 000 = 00001111 01000010 010000002.

Преобразование двоичного числа в десятичное осуществляется прямо противо­положным образом. Для этого двоичное число сравнивается с табличными значе­ниями и, если в столбце находится соответствующее значение, то прибавляем это число к общей сумме. В табл. 20.7 показан пример преобразования двоичного числа 00000100 00011101 в десятичное, которое оказывается равным 1053.

Материал, рассмотренный в данной главе, как и весь материал книги нацелен прежде всего на основные темы, которые входят в программу экзамена CCNA. По­этому следует учитывать, что рассмотренные в данном разделе темы ориентированы на главные требования, связанные со сдачей экзамена и на нем требуется продемон­стрировать полноценное знание всего этого материала.