Двоичная система счисления перевод обычных чисел. Системы счисления и перевод из двоичной в десятичную

Привет, посетитель сайта сайт! Продолжаем изучать и протокол сетевого уровня IP, а если быть более точным, то его версию IPv4. На первый взгляд тема двоичных чисел и двоичной системы счисления не имеет отношения к протоколу IP, но если вспомнить, что компьютеры работают с нулями и единицами, то оказывается, что двоичная система и ее понимание — это основа основ, нам нужно научиться переводить числа из двоичной системы счисления в десятичную и наоборот: из десятичной в двоичную . Это нам поможет лучше понять протокол IP, а также принцип работы масок сети переменной длины. Давайте приступать!

Если тема компьютерных сетей вам интересна, то можете ознакомиться с другими записями курса.

4.4.1 Введение

Прежде чем мы начнем, стоит вообще объяснить зачем нужна эта тема сетевому инженеру. Хотя вы могли убедиться в ее необходимости, когда мы говорили , но, вы можете сказать, что есть IP-калькуляторы, которые существенно облегчают задачу по распределению IP-адресов, вычислению нужных масок подсетей/сетей и определению номера сети и номера узла в IP-адресе. Так-то оно так, но IP-калькулятор не всегда под рукой, это причина номер раз. Причина номер два заключается в том, что на экзаменах Cisco вам не дадут IP-калькулятор и все преобразования IP-адресов из десятичной системы счисления в двоичную вам придется делать на листе бумаги , а вопросов, где это требуется на экзамене/экзаменах по получению сертификата CCNA не так уж и мало, будет обидно, если из-за такой мелочи экзамен будет завален. Ну и наконец понимания двоичной системы счисления ведет к лучшему пониманию принципа работы .

Вообще сетевой инженер не обязан уметь делать перевод чисел из двоичной системы счисления в десятичную и наоборот в уме. Более того, это редко кто умеет делать в уме, в основном к такой категории относятся преподаватели различных курсов по компьютерным сетям, так как они сталкиваются с этим постоянно изо дня в день. Но при помощи листа бумаги и ручки вам стоит научиться осуществлять перевод.

4.4.2 Десятичные цифры и числа, разряды в числах

Давайте начнем с простого и поговорим про двоичные цифры и числа , вы же знаете, что цифры и числа – это две разные вещи. Цифра – это специальный символ для обозначения, а число – это абстрактная запись, означающая количество. Например, чтобы записать, что у нас пять пальцев на руке мы можем использовать римские и арабский цифры: V и 5. В данном случае пять является одновременно и числом, и цифрой. А, например, для записи числа 20 мы используем две цифры: 2 и 0.

Итого, в десятичной системе счисления у нас есть десять цифр или десять символов (0,1,2,3,4,5,6,7,8,9), комбинируя которые мы можем записывать различные числа. Каким принципом мы руководствуемся, используя десятичную систему счисления? Да все очень просто, мы возводим десятку в ту или иную степень, для примера возьмём число 321. Как его можно записать по-другому, да вот так: 3*10 2 +2*10 1 +1*10 0 . Таким образом получается, что число 321 представляет собой три разряда:

  1. Цифра 3 означает старший разряд или в данном случае это разряд сотен, иначе их количество.
  2. Цифра 2 стоит в разряде десятков, у нас два десятка.
  3. Цифра один относится к младшему разряду.

То есть в данной записи двойка это не просто двойка, а две десятки или два раза по десять. А тройка это не просто тройка, а три раза по сто. Получается такая зависимость: единица каждого следующего разряда в десять раз больше единицы предыдущего, ведь, что такое 300 – это три раза по сто. Отступление по поводу десятичной системы счисление было нужно, чтобы проще понять двоичную.

4.4.3 Двоичные цифры и числа, а также их запись

В двоичной системе счисления всего две цифры: 0 и 1 . Поэтому запись числа в двоичной системе зачастую гораздо больше, чем в десятичной. За исключением чисел 0 и 1, ноль в двоичной системе счисления равен нулю в десятичной, аналогично и для единицы. Иногда, чтобы не перепутать в какой системе счисления записано число, используют суб-индексы: 267 10 , 10100 12 , 4712 8 . Число в суб-индексе указывает на систему счисления.

Для записи двоичных чисел могут быть использованы символы 0b и &(амперсанд): 0b10111, &111 . Если в десятичной системе счисления, чтобы произнести число 245 мы воспользуемся вот такой конструкцией: двести сорок пять, то в двоичной системе счисления чтобы назвать число, нам нужно произнести цифру из каждого разряда, например, число 1100 в двоичной системе счисления следует произносить не как тысяча сто, а как один, один, ноль, ноль. Давайте посмотрим на запись чисел от 0 до 10 в двоичной системе счисления:

Думаю, логика должна быть уже понятна. Если в десятичной системе счисления для каждого разряда у нас было доступно десять вариантов (от 0 до 9 включительно), то в двоичной системе счисления в каждом из разрядов двоичного числа у нас только два варианта: 0 или 1 .

Для работы с IP-адресами и масками подсети нам достаточно натуральных чисел в двоичной системе счисления, хотя двоичная система позволяет записывать дробные и отрицательные числа, но нам это без надобности .

4.4.4 Преобразование чисел из десятичной системы счисления в двоичную

Давайте лучше разберемся с тем, как преобразовать число из десятичной системы счисления в двоичную . И тут все на самом деле очень и очень просто, хотя на словах объяснить трудно, поэтому сразу приведу пример преобразования чисел из десятичной системы счисления в двоичную . Возьмем число 61, чтобы выполнить преобразование в двоичную систему, нам нужно это число делить на два и смотреть, что получается в остатке от деления. А результат деления снова делить на два. В данном случае 61 – это делимое, в качестве делителя у нас всегда будет двойка, а частное (результат деления) мы делим снова на два, продолжаем деление до тех пор, пока в частном не окажется 1, эта последняя единица и будет крайним левым разрядом. Рисунок ниже это демонстрирует.

При этом обратите внимание, что число 61, это не 101111, а 111101, то есть выписываем результат с конца. Единицу в последнем частном смысла делить на два нет, поскольку в данном случае используется целочисленное деление, а при таком подходе получается так, как на Рисунке 4.4.2.

Это не самый быстрый способ перевода числа из двоичной системы счисления в десятичную . У нас есть несколько ускорителей. Например, число 7 в двоичной системе записывается как 111, число 3 как 11, а число 255 как 11111111. Все эти случаи до безобразия просты. Дело в том, что числа 8, 4, и 256 являются степенями двойки, а числа 7, 3 и 255 на единицу меньше этих чисел. Так вот для числа, которые на единицу меньше, чем число равное степени двойки, действует простое правило: в двоичной системе такое десятичное число записывается количеством единиц равным степени двойки. Так, например, число 256 это два в восьмой степени, следовательно, 255 записывается как 11111111, а число 8 это два в третьей степени, а это говорит нам о том, что 7 в двоичной системе счисления будет записано как 111. Ну а понять, как записать 256, 4 и 8 в двоичной системе счисления тоже не трудно, достаточно просто прибавить единицу: 256 = 11111111 + 1 = 100000000; 8 = 111 + 1 = 1000; 4 = 11 + 1 = 100.
Любой свой результат вы можете проверить на калькуляторе и по началу лучше так и делать.

Как видим, делить мы еще не разучились. И теперь можем двигаться дальше.

4.4.5 Преобразование чисел из двоичной системы счисления в десятичную

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

Чтобы из этого двоичной числа получить десятичное, нужно каждое число в разряде умножить на два в степени, а затем сложить результаты перемножения, проще показать:

1*2 4 +1*2 3 +1*2 2 +1*2 1 +0*2 0 = 16+8+4+2+0=30

Откроем калькулятор и убедимся, что 30 в десятичной системе счисления, это 11110 в двоичной.

Видим, что всё сделано верно. Из примера видно, что перевод числа из двоичной системы счисления в десятичную выполняется куда проще, чем обратный перевод . Чтобы уверенно работать с нужно лишь помнить степени двойки до 2 8 . Для наглядности приведу таблицу.

Нам больше и не нужно, поскольку максимально возможное число, которое можно записать в один байт (8 бит или восемь двоичных значений) равно 255, то есть в каждом октете IP-адреса или маски подсети протокола IPv4 максимально возможное значение — 255. В есть поля, в которых есть значения больше 255, но их нам рассчитывать не нужно.

4.4.6 Сложение, вычитание, умножение двоичных чисел и другие операции с двоичными числами

Давайте теперь посмотрим на операции, которые можно выполнять с двоичными числами . Начнем с простых арифметических операций, а затем перейдем к операциям булевой алгебры.

Сложение двоичных чисел

Складывать двоичные числа не так уж сложно: 1+0 =1; 1+1=0 (в дальнейшем дам пояснение); 0+0=0. Это были простые примеры, где использовался лишь один разряд, давайте посмотрим на примеры, где количество разрядов больше, чем один.
101+1101 в десятичной системе это будет 5 + 13 = 18. Давайте посчитаем в столбик.

Результат выделен оранжевым цветом, калькулятор говорит, что мы посчитали верно, можете проверить. Теперь давайте смотреть почему так получилось, ведь вначале я написал, что 1+1=0, но это для случая, когда у нас есть только один разряд, для случаев, когда разрядов больше, чем один, 1+1=10 (или два в десятичной), что логично.

Тогда смотрите, что получается, мы выполняем сложения по разрядам справа налево:

1. 1+1=10, записываем ноль, а единица уходит в следующий разряд.

2. В следующем разряде получается 0+0+1=1 (эта единица пришла к нам из результата сложения на шаге 1).

4. Тут у нас есть единица только у второго числа, но сюда еще перенеслась, поэтому 0+1+1 = 10.

5. Склеиваем всё воедино:10|0|1|0.

Если лень в столбик, то давайте считать так: 101011+11011 или 43 + 27 = 70. Как тут можно поступить, а давайте смотреть, ведь нам никто не запрещает делать преобразования, а от перемены мест слагаемых сумма не меняется, для двоичной системы счисления это правило также актуально.

  1. 101011 = 101000 + 11 = 101000 + 10 + 1 = 100000 + 1000 + 10 + 1.
  2. 11011 = 11000 + 10 + 1 = 10000 + 1000 + 10 + 1.
  3. 100000 + 10000 + (1000 +1000) + (10+10) + (1+1).
  4. 100000 + (10000 + 10000) + 100 + 10.
  5. 100000 + 100000 +110
  6. 1000000 + 110.
  7. 1000110.

Можете проверить калькулятором, 1000110 в двоичной системе счисления это 70 в десятичной.

Вычитание двоичных чисел

Сразу пример для вычитания одноразрядных чисел в двоичной системе счисления , про отрицательные числа мы не говорили, поэтому 0-1 не берем в расчет: 1 – 0 = 1; 0 – 0 = 0; 1 – 1 = 0. Если разрядов больше чем один, то тоже все просто, даже никаких столбиков и ухищрений не нужно: 110111 – 1000, это то же самое, что и 55 – 8. В результате мы получим 101111. И биться сердце перестало, откуда единица в третьем разряде (нумерация слева направо и начинается с нуля)? Да всё просто! Во втором разряде числа 110111 стоит 0, а в первом разряде стоит 1 (если примем, что нумерация разрядов начинается с 0 и идет слева направо), но единица четвертого разряда получается путем сложения двух единиц третьего разряда (получается этакая виртуальная двойка) и от этой двойки мы отнимаем единицу, которая стоит в нулевом разряде числа 1000, ну а 2 — 1 = 1, ну а 1 является допустимой цифрой в двоичной системе счисления.

Умножение двоичных чисел

Нам осталось рассмотреть умножение двоичных чисел, которое реализует за счет сдвига на один разряд влево . Но для начала давайте посмотрим на результаты одноразрядного умножения: 1*1 = 1; 1*0=0 0*0=0. Собственно, всё просто, теперь давайте посмотрим на что-нибудь более сложное. Возьмем числа 101001 (41) и 1100 (12). Умножать будем столбиком.

Если из таблицы непонятно как так получилось, то попробую объяснить словами:

  1. Умножение двоичных чисел удобно делать в столбик, поэтому выписываем второй множитель под первым, если числа с разным количество разрядов, то будет удобнее, если большее число будет сверху.
  2. Следующим шагом умножаем все разряды первого числа на самый младший разряд второго числа. Записываем результат перемножения ниже при этом нужно записать так, чтобы под каждым соответствующим разрядом был записан результат перемножения.
  3. Теперь нам нужно перемножить все разряды первого числа на следующий разряд второго числа и результат записать еще одной строчкой ниже, но этот результат нужно сдвинуть на один разряд влево, если смотреть на таблицу, то это вторая последовательность нулей сверху.
  4. Точно также нужно сделать для последующих разрядов, каждый раз сдвигаясь на один разряд влево, а если смотреть на таблицу, то можно сказать, что на одну клетку влево.
  5. У нас получилось четыре двоичных числа, которые нужно теперь сложить и получить результат. Сложение мы недавно рассмотрели, проблем возникнуть не должно.

В общем-то, операция умножения не такая уж и сложная, нужно лишь немного попрактиковаться.

Операции булевой алгебры

В булевой алгебре есть два очень важных понятия: true (истина) и false (ложь), эквивалентом для них служат ноль и единица в двоичной системе счисления. Операторы булевой алгебры расширяют количество доступных операторов над этими значениями, давайте на них посмотрим.

Операция «Логическое И» или AND

Операция «Логическое И» или AND эквивалентно умножению одноразрядных двоичных чисел.

1 AND 1 = 1; 1 AND 0 = 1; 0 AND 0 = 0; 0 AND 1 = 0.

1 AND 1 = 1 ;

1 AND 0 = 1 ;

0 AND 0 = 0 ;

0 AND 1 = 0.

Единица в результате «Логического И» будет только в том случае, если оба значения равны единицы, во всех остальных случаях будет ноль.

Операция «Логическое ИЛИ» или OR

Операция «Логическое ИЛИ» или OR работает по следующему принципу: если хотя бы одно значение равно единице, то в результате будет единица.

1 OR 1 = 1; 1 OR 0 = 1; 0 OR 1 = 1; 0 OR 0 = 0.

1 OR 1 = 1 ;

1 OR 0 = 1 ;

0 OR 1 = 1 ;

0 OR 0 = 0.

Операция «Исключающее ИЛИ» или XOR

Операция «Исключающее ИЛИ» или XOR даст нам в результате единицу только в том случае, если один из операндов равен единице, а второй равен нулю. Если оба операнда равны нулю, будет ноль и даже если оба операнда равны единице, в результате получится ноль.

| 6 классы | Планирование уроков на учебный год | Перевод двоичных чисел в десятичную систему счисления

Урок 5
Перевод двоичных чисел в десятичную систему счисления
Работа с приложением Калькулятор





Перевод целых десятичных чисел в двоичный код

Способ 1

Попробуем представить число 1409 в виде суммы членов второго ряда.

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

1409 - 1024 = 385.

Возьмем ближайший к полученной разности, но не превосходящий ее член второго ряда и составим разность:

385 - 256 = 129.

Аналогично составим разность: 129 - 128 = 1.

В итоге получим:

1409 = 1024 + 256 + 128 + 1 = 1 1024 + 0 512 + 1 256 + + 1 128 + 0 64 + 0 32 + 0 16 + 0 8 + 0 4 + 0 2 + 1 1.

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


Числа 1 и 0, на которые умножаются члены второго ряда, также составляют исходное число 1409, но в его другой, двоичной записи: 10110000001.

Результат записывают так:

1409 10 = 10110000001 2 .

Исходное число мы записали с помощью 0 и 1, другими словами, получили двоичный код этого числа, или представили число в двоичной системе счисления.

Способ 2

Этот способ получения двоичного кода десятичного числа основан на записи остатков от деления исходного числа и получаемых частных на 2, продолжаемого до тех пор, пока очередное частное не окажется равным 0.

Пример:


В первую ячейку верхней строки записано исходное число, а в каждую следующую - результат целочисленного деления предыдущего числа на 2.

В ячейках нижней строки записаны остатки от деления стоящих в верхней строке чисел на 2.

Последняя ячейка нижней строки остается пустой. Двоичный код исходного десятичного числа получается при последовательной записи всех остатков, начиная с последнего: 1409 10 = 10110000001 2 .

Первые 20 членов натурального ряда в двоичной системе счисления записываются так: 1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010, 1011,1100, 1101,1110,1111, 10000. 10001. 10010. 10011. 10100. 

Перевод целых чисел из двоичной системы счисления в десятичную

Способ 1

Пусть имеется число 111101 2 . Его можно представить так:

Способ 2

Возьмем то же число 111101 2 . Переведем единицу 6-го разряда (первая слева в записи числа) в единицы 5-го разряда, для чего 1 умножим на 2, ибо единица 6-го разряда в двоичной системе содержит 2 единицы 5-го разряда.

К полученным 2 единицам 5-го разряда прибавим имеющуюся единицу 5-го разряда. Переведем эти 3 единицы 5-го разряда в 4-й разряд и прибавим имеющуюся единицу 4-го разряда: 3 2 + 1 = 7.

Переведем 7 единиц 4-го разряда в 3-й разряд и прибавим имеющуюся единицу 3-го разряда: 7 2 + 1 = 15.

Переведем 15 единиц 3-го разряда во 2-й разряд: 15 2 = 30. В исходном числе во 2-м разряде единиц нет.

Переведем 30 единиц 2-го разряда в 1-й разряд и прибавим имеющуюся там единицу: 30 2 + 1 = 61. Мы получили, что исходное число содержит 61 единицу 1-го разряда.

Письменные вычисления удобно располагать так:

Переводить целые числа из десятичной системы счисления в двоичную систему счисления и обратно можно с помощью приложения Калькулятор .

Проведем небольшой эксперимент .

1. Запустите приложение Калькулятор и выполните команду [Вид-Инженерный] . Обратите внимание на группу переключателей, определяющих систему счисления :

2. Убедитесь, что Калькулятор настроен на работу в десятичной системе счисления. С помощью клавиатуры или мыши введите в поле ввода произвольное двузначное число. Активизируйте переключатель Bin и проследите за изменениями в окне ввода. Вернитесь в десятичную систему счисления. Очистите поле ввода.

3. Повторите пункт 2 несколько раз для других десятичных чисел.

4. Настройте Калькулятор на работу в двоичной системе счисления. Обратите внимание на то, какие кнопки Калькулятора и цифровые клавиши клавиатуры вам доступны. Поочередно введите двоичные коды 5-го, 10-го и 15-го членов натурального ряда и с помощью переключателя Dec переведите их в десятичную систему счисления.

Назначение сервиса . Сервис предназначен для перевода чисел из одной системы счисления в другую в онлайн режиме. Для этого выберите основание системы, из которой необходимо перевести число. Вводить можно как целые, так и числа с запятой.

Число

Перевод из 10 2 8 16 системы счисления. Перевести в 2 10 8 16 систему счисления .
Для дробных чисел использовать 2 3 4 5 6 7 8 знака после запятой.

Можно вводить как целые числа, например 34 , так и дробные, например, 637.333 . Для дробных чисел указывается точность перевода после запятой.

Вместе с этим калькулятором также используют следующие:

Способы представления чисел

Двоичные (binary) числа – каждая цифра означает значение одного бита (0 или 1), старший бит всегда пишется слева, после числа ставится буква «b». Для удобства восприятия тетрады могут быть разделены пробелами. Например, 1010 0101b.
Шестнадцатеричные (hexadecimal) числа – каждая тетрада представляется одним символом 0...9, А, В, ..., F. Обозначаться такое представление может по-разному, здесь используется только символ «h» после последней шестнадцатеричной цифры. Например, A5h. В текстах программ это же число может обозначаться и как 0хА5, и как 0A5h, в зависимости от синтаксиса языка программирования. Незначащий ноль (0) добавляется слева от старшей шестнадцатеричной цифры, изображаемой буквой, чтобы различать числа и символические имена.
Десятичные (decimal) числа – каждый байт (слово, двойное слово) представляется обычным числом, а признак десятичного представления (букву «d») обычно опускают. Байт из предыдущих примеров имеет десятичное значение 165. В отличие от двоичной и шестнадцатеричной формы записи, по десятичной трудно в уме определить значение каждого бита, что иногда приходится делать.
Восьмеричные (octal) числа – каждая тройка бит (разделение начинается с младшего) записывается в виде цифры 0–7, в конце ставится признак «о». То же самое число будет записано как 245о. Восьмеричная система неудобна тем, что байт невозможно разделить поровну.

Алгоритм перевода чисел из одной системы счисления в другую

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

Пример №1 .



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

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

Пример №2 . 1010111010,1011 = 1.010.111.010,101.1 = 1272,51 8
здесь 001=1; 010=2; 111=7; 010=2; 101=5; 001=1

При переводе в шестнадцатеричную систему необходимо делить число на части, по четыре цифры, соблюдая те же правила.
Пример №3 . 1010111010,1011 = 10.1011.1010,1011 = 2B12,13 HEX
здесь 0010=2; 1011=B; 1010=12; 1011=13

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

Пример №4 .
Пример перевода из двоичной в десятичную систему счисления.

1010010,101 2 = 1·2 6 +0·2 5 +1·2 4 +0·2 3 +0·2 2 +1·2 1 +0·2 0 + 1·2 -1 +0·2 -2 +1·2 -3 =
= 64+0+16+0+0+2+0+0.5+0+0.125 = 82.625 10 Пример перевода из восьмеричной в десятичную систему счисления. 108.5 8 = 1*·8 2 +0·8 1 +8·8 0 + 5·8 -1 = 64+0+8+0.625 = 72.625 10 Пример перевода из шестнадцатеричной в десятичную систему счисления. 108.5 16 = 1·16 2 +0·16 1 +8·16 0 + 5·16 -1 = 256+0+8+0.3125 = 264.3125 10

Еще раз повторим алгоритм перевода чисел из одной системы счисления в другую ПСС

  1. Из десятичной системы счисления:
    • разделить число на основание переводимой системы счисления;
    • найти остаток от деления целой части числа;
    • записать все остатки от деления в обратном порядке;
  2. Из двоичной системы счисления
    • Для перевода в десятичную систему счисления необходимо найти сумму произведений основания 2 на соответствующую степень разряда;
    • Для перевода числа в восьмеричную необходимо разбить число на триады.
      Например, 1000110 = 1 000 110 = 106 8
    • Для перевода числа из двоичной системы счисления в шестнадцатеричную необходимо разбить число на группы по 4 разряда.
      Например, 1000110 = 100 0110 = 46 16
Позиционной называется система , для которой значимость или вес цифры зависит от ее места расположения в числе. Соотношение между системами выражается таблицей.
Таблица соответствия систем счисления:
Двоичная СС Шестнадцатеричная СС
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 A
1011 B
1100 C
1101 D
1110 E
1111 F

Таблица для перевода в восьмеричную систему счисления

В одном из наших материалов мы рассмотрели определение . Оно имеет самый короткий алфавит. Только две цифры: 0 и 1. Примеры алфавитов позиционных систем счисления приведены в таблице.

Позиционные системы счисления

Название системы

Основание

Алфавит

Двоичная

Троичная

Четверичная

Пятеричная

Восьмеричная

Десятичная

0,1,2,3,4,5,6,7,8,9

Двенадцатеричная

0,1,2,3,4,5,6,7,8,9,А,В

Шестнадцатеричная

0,1,2,3,4,5,6,7,8,9,А,В,С,D,E,F

Тридцатишестиричная

0,1,2,3,4,5,6,7,8,9,А,В,С,D,E,F,G, H,I,J,K,L,M,N,O,P,R,S,T,U,V,X,Y,Z


Для перевода небольшого числа из десятичного в двоичное, и обратно, лучше пользоваться следующей таблицей.

Таблица перевода десятичных чисел от 0 до 20 в двоичную систему счисления.

десятичное

число

двоичное число

десятичное

число

двоичное число


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


Как сделать перевод из одной системы счисления в другую? В информатике существует несколько простых способов перевода десятичных чисел в двоичные числа. Рассмотрим два из них.

Способ №1.

Допустим, требуется перевести число 637 десятичной системы в двоичную систему.


Делается это следующим образом: отыскивается максимальная степень двойки, чтобы два в этой степени было меньше или равно исходному числу.


В нашем случае это 9, т.к. 2 9 =512 , а 2 10 =1024 , что больше нашего начального числа. Таким образом, мы получили число разрядов результата. Оно равно 9+1=10. Значит, результат будет иметь вид 1ххххххххх, где вместо х может стоять 1 или 0.


Найдем вторую цифру результата. Возведем двойку в степень 9 и вычтем из исходного числа: 637-2 9 =125. Затем сравниваем с числом 2 8 =256 . Так как 125 меньше 256, то девятый разряд будет 0, т.е. результат уже примет вид 10хххххххх.


2 7 =128 > 125 , значит и восьмой разряд будет нулём.


2 6 =64 , то седьмой разряд равен 1. 125-64=61 Таким образом, мы получили четыре старших разряда и число примет вид 10011ххххх.


2 5 =32 и видим, что 32 < 61, значит шестой разряд равен 1 (результат 100111хххх), остаток 61-32=29.


2 4 =16 < 29 - пятый разряд 1 => 1001111ххх. Остаток 29-16=13.


2 3 =8 < 13 => 10011111хх. 13-8=5


2 2 =4 < 5 => 10011111хх, остаток 5-4=1.


2 1 =2 > 1 => 100111110х, остаток 2-1=1.


2 0 =1 => 1001111101.


Это и будет конечный результат.

Способ №2.

Правило перевода целых десятичных чисел в двоичную систему счисления, гласит:

  1. Разделим a n−1 a n−2 ...a 1 a 0 =a n−1 ⋅2 n−1 +a n−2 ⋅2 n−2 +...+a 0 ⋅2 0 на 2.
  2. Частное будет равно an−1 ⋅2n−2+...+a1 , а остаток будет равен
  3. Полученное частное опять разделим на 2, остаток от деления будет равен a1.
  4. Если продолжить этот процесс деления, то на n-м шаге получим набор цифр: a 0 ,a 1 ,a 2 ,...,a n−1 , которые входят в двоичное представление исходного числа и совпадают с остатками при его последовательном делении на 2.
  5. Таким образом, для перевода целого десятичного числа в двоичную систему счисления нужно последовательно выполнять деление данного числа и получаемых целых частных на 2 до тех пор, пока не получим частное, которое будет равно нулю.

Исходное число в двоичной системе счисления составляется последовательной записью полученных остатков. Записывать его начинаем с последнего найденного.


Переведём десятичное число 11 в двоичную систему счисления. Рассмотренную выше последовательность действий (алгоритм перевода) можно изобразить так:


Получили 11 10 =1011 2 .

Пример:

Если десятичное число достаточно большое, то более удобен следующий способ записи рассмотренного выше алгоритма:



363 10 =101101011 2





Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: