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

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

Позиционная система счисления — значение всех цифр зависит от позиции (разряда) данной цифры в числе.

Примеры , стандартная десятичная система счисления - это позиционная система. Допустим, дано число 453 . Цифра 4 обозначает сотни и соответствует числу 400, 5 — кол-во десятков и соответствует значению 50 , а 3 — единицы и значению 3 . Легко заметить, что с увеличением разряда увеличивается значение. Таким образом, заданное число запишем в виде суммы 400+50+3=453.

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

Шестнадцатеричная система счисления (шестнадцатеричные числа) — позиционная система счисления. Основанием шестнадцатеричной системы счисления является число 16.

Записывая числа в восьмеричной системе счисления мы получаем довольно компактные выражения, однако в шестнадцатеричной системе мы получаем выражения более компактными.

Первыми десятью цифрами из шестнадцати шестнадцатеричных цифрах является стандартный интервал 0 - 9 , последующие шесть цифр выражают при помощи первых букв латинского алфавита: A , B , C , D , E , F . Перевод из шестнадцатеричной системы в двоичную систему и в обратную сторону делают аналогично процессу для восьмеричной системы.

Применение шестнадцатеричной системы счисления.

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

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

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

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

Например , переведем шестнадцатеричное число 5A3 в десятичное. Здесь 3 цифры. Исходя их выше сказанного правила, приведем его к виду суммы степеней с основанием 16:

5A3 16 = 3·16 0 +10·16 1 +5·16 2 = 3·1+10·16+5·256 = 3+160+1280 = 1443 10

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

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

Например :

010110100011 2 = 0101 1010 0011 = 5A3 16

Таблица перевода чисел.

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

1. Из десятичной системы счисления:

  • делим число на основание переводимой системы счисления;
  • находим остаток от деления целой части числа;
  • записываем все остатки от деления в обратном порядке;

2. Из двоичной системы счисления:

  • для перевода в десятичную систему счисления находим сумму произведений основания 2 на соответствующую степень разряда;
  • для перевода числа в восьмеричную разбиваем число на триады.

Например, 1000110 = 1 000 110 = 1068

  • для перевода числа из двоичной системы счисления в шестнадцатеричную разбиваем число на группы по 4 разряда.

Например, 1000110 = 100 0110 = 4616.

Таблицы для перевода:

Двоичная СС

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

0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

1010

1011

1100

1101

1110

1111

Двоичная СС

Многие пользователи компьютеров понимают, что компьютер работает в двоичной системе счисления. Традиционно состояния двоичной системы представляются цифрами 0 и 1, хотя, если говорить более точнее, каждое состояние обозначает наличие или отсутствие сигнала, т. е. правильнее будет назвать состояния «выключено» и «включено», либо «нет» и «да». Состоянию «выключено» или «нет» соответствует цифра 0, а состоянию «включено» или «да» цифра 1. Простым пользователям обычно нет необходимости полностью понимать устройство компьютера, однако двоичная система счисления дает о себе знать в виде различных ограничений основанных на степени двойки. Более компактный вариант двоичной системы называют шестнадцатеричной. Число шестнадцать является четвертой степенью числа два. Из этого следует, что можно достаточно просто переводить длинных двоичные последовательностей из нулей и единиц в короткие шестнадцатеричные. Для этого достаточно разбить двоичную последовательность на группы по четыре разряда (цифры) начиная с младшего разряда (справа) и заменить каждую группу на соответствующее шестнадцатеричное значение.

Шестнадцатеричную систему принято использовать для удобства восприятия двоичных данных, так как переводы из шестнадцатеричной системы в двоичную и обратно осуществляются простой заменой строк. Компьютер работает исключительно с двоичными последовательностями, а шестнадцатеричная запись этой последовательности в четыре раза компактнее, так как у этой системы основание 16 (2 16), а двоичной 2. Двоичная последовательность может быть достаточно громоздкой. Например, запись числа 513 требует десять двоичных разрядов (1000000001), а в шестнадцатеричной только три (201). Тем не менее, для представления любых шестнадцатеричных чисел требуется шестнадцать разных символов, а не десять, которые используются в привычной нам десятичной системе счисления. Первые десять символов это символы в интервале от 0 по 9, остальные это буквы латинского алфавита в интервале от A по F. Буквы обычно (но не всегда) пишут в верхнем регистре (заглавные) в шестнадцатеричной записи числа. Первые десять символов (от 0 по 9) записываются аналогично цифрам в десятичной системе счисления и соответствуют им. Буквы в интервале от A по F соответствуют значениям в интервале от 10 до 15.

Рассмотрим соответствие чисел от 0 по 15 шестнадцатеричной и двоичной системам счисления.

Десятичная запись Шестнадцатеричная запись Двоичная запись
0 0 0000
1 1 0001
2 2 0010
3 3 0011
4 4 0100
5 5 0101
6 6 0110
7 7 0111
8 8 1000
9 9 1001
10 A 1010
11 B 1011
12 C 1100
13 D 1101
14 E 1110
15 F 1111

Записи 10, 11 и т. д. в десятичной, двоичной и шестнадцатеричной системах не соответствуют друг другу. Рассмотрим небольшой пример. Пусть у нас имеется шестнадцатеричное число число 1A5E. для перевода в двоичную запись достаточно просто заменить шестнадцатеричные разряды на соответствующие двоичные группы. Получится 0001 1010 0101 1110. Если убрать незначащие нули перед числом и записать его без разделителей получим 1101001011110. Для обратного перевода разделим число на группы по четыре разряда начиная с младшего (с правой стороны), а также для удобства добавим незначащие нули в старшей группе до 4 разрядов. Получим 0001 1010 0101 1110. Заменим группы на соответствующие шестнадцатеричные значения, получим 1A5E.

Для перевода шестнадцатеричного числа в десятичное представление можно воспользоваться схемой по которой мы записываем десятичные числа. В десятичном числе каждый разряд обозначает соответствующую степень числа десять начиная с нулевой с возрастанием справа налево. Например, десятичное число 123 обозначает 1*10 2 + 2*10 1 + 3*10 0 . Аналогичным методом переведем число 1A5E в десятичную систему счисления. В шестнадцатеричной системе счисления, также как и в десятичной каждый разряд обозначает соответствующую степень числа шестнадцать начиная с нулевой с возрастанием справа налево. Символы 1 и 5 в шестнадцатеричной системе счисления соответствуют значениям 1 и 5 в десятичной, а символы A и E - 10 и 14. Тогда 1A5E можно представить в десятичной системе счисления как 1*16 3 + 10*16 2 + 5*16 1 + 14*16 0 = 6750. Однако для оценки шестнадцатеричных чисел вовсе не обязательно переводить их в десятичные. Правила сравнения, сложения и умножения в этой системе такие же как и в десятичной, главное не забывать, что каждый разряд может содержать значения от 0 до 15. Для более быстрого перевода числе между система счисления можно воспользоваться стандартным калькулятором в Windows, для этого достаточно в расширенном режиме калькулятора выбрать систему счисления, ввести в ней число и выбрать нужную систему счисления, в которой следует отобразить результат.

Так как шестнадцатеричные числа, состоящие только из чисел, легко спутать с десятичными, их обычно помечают так, чтобы было ясно, что используется именно шестнадцатеричная запись. Шестнадцатеричные записи обычно помечают либо добавлением в конец строчной буквы „h”, либо приставки „0x” перед записью числа. Таким образом шестнадцатеричное число 1A5E может быть записано как 1A5Eh или 0x1A5E, где „h” на конце или „0x” в начале обозначают, что используется шестнадцатеричная запись.

Для представления чисел в микропроцессоре используется двоичная система счисления .
При этом любой цифровой сигнал может иметь два устойчивых состояния: «высокий уровень» и «низкий уровень». В двоичной системе счисления для изображения любого числа используются две цифры, соответственно: 0 и 1. Произвольное число x=a n a n-1 ..a 1 a 0 ,a -1 a -2 …a -m запишется в двоичной системе счисления как

x = a n ·2 n +a n-1 ·2 n-1 +…+a 1 ·2 1 +a 0 ·2 0 +a -1 ·2 -1 +a -2 ·2 -2 +…+a -m ·2 -m

где a i двоичные цифры (0 или 1).

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

В восьмеричной системе счисления базисными цифрами являются цифры от 0 до 7. 8 единиц младшего разряда объединяются в единицу старшего.

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

В шестнадцатеричной системе счисления базисными цифрами являются цифры от 0 до 15 включительно. Для обозначения базисных цифр больше 9 одним символом кроме арабских цифр 0…9 в шестнадцатеричной системе счисления используются буквы латинского алфавита:

10 10 = A 16 12 10 = C 16 14 10 = E 16
11 10 = B 16 13 10 = D 16 15 10 = F 16 .

Например, число 175 10 в шестнадцатеричной системе счисления запишется как AF 16 . Действительно,

10·16 1 +15·16 0 =160+15=175

В таблице представлены числа от 0 до 16 в десятичной, двоичной, восьмеричной и шестнадцатеричной системах счисления.

Десятичная Двоичная Восьмеричная Шестнадцатеричная
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
16 10000 20 10

Двоично-восьмеричные и двоично-шестнадцатеричные преобразования

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

Три разряда восьмеричной системы счисления реализуют все возможные комбинации восьмеричных цифр в двоичной системе счисления: от 0 (000) до 7(111). Чтобы преобразовать двоичное число в восьмеричное, нужно объединить двоичные цифры в группы по 3 разряда (триады) в две стороны, начиная от разделителя целой и дробной части. При необходимости слева от исходного числа нужно добавить незначащие нули. Если число содержит дробную часть, то справа от него тоже можно добавить незначащие нули до заполнения всех триад. Затем каждая триада заменяется восьмеричной цифрой.

Пример: Преобразовать число 1101110,01 2 в восьмеричную систему счисления.

Объединяем двоичные цифры в триады справа налево. Получаем

001 101 110,010 2 = 156,2 8 .

Чтобы перевести число из восьмеричной системы в двоичную, нужно каждую восьмеричную цифру записать ее двоичным кодом:

156,2 8 = 001 101 110,010 2 .

Четыре разряда шестнадцатеричной системы счисления реализуют все возможные комбинации шестнадцатеричных цифр в двоичной системе счисления: от 0 (0000) до F(1111). Чтобы преобразовать двоичное число в шестнадцатеричное, нужно объединить двоичные цифры в группы по 4 разряда (тетрады) в две стороны, начиная от разделителя целой и дробной части. При необходимости слева от исходного числа нужно добавить незначащие нули. Если число содержит дробную часть, то справа от нее тоже нужно добавить незначащие нули до заполнения всех тетрад. Затем каждая тетрада заменяется шестнадцатеричной цифрой.

Пример: Преобразовать число 1101110,11 2 в шестнадцатеричную систему счисления.

Объединяем двоичные цифры в тетрады справа налево. Получаем

0110 1110,1100 2 = 6E,C 16 .

Чтобы перевести число из шестнадцатеричной системы в двоичную, нужно каждую шестнадцатеричную цифру записать ее двоичным кодом.