Site Loader

Содержание

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

Главная / Ассемблер / Для чайников / Системы счисления /

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


0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
Соответственно, основание шестнадцатеричной системы равно 16.

Шестнадцатеричное число является компактным и лёгким для чтения. Его легко преобразовать в двоичное и наоборот. Каждый разряд шестнадцатеричного числа – это тетрада. Каждую тетраду легко преобразовать в двоичное число и наоборот (см. таблицу 2.3).

Таблица 2.3. Преобразование чисел.

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

В конец шестнадцатеричного числа принято ставить букву h. Таким образом мы можем отличить шестнадцатеричное число от чисел в других системах исчисления. Например


11 – десятичное число 11
11b – двоичное число, которое эквивалентно десятичному числу 3
11h – шестнадцатеричное число, которое эквивалентно десятичному числу 17
В исходных кодах программ на ассемблере, если шестнадцатеричное число начинается с буквы, то перед ним нужно поставить ноль, иначе ассемблер подумает, что это не число, а имя переменной. Например, число FF в исходном коде на ассемблере должно быть записано как 0FFh.

Как перевести в шестнадцатеричную систему счисления

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

Как следует из названия, основанием данной системы является число шестнадцать 16 или в шестнадцатеричной системе 1016. Чтобы не было путаницы, при записи чисел в системах счисления отличных от десятичных, справа внизу от основной записи числа будем указывать основание системы счисления. Раз основанием системы является число шестнадцать, значит, для изображения чисел нам потребуется шестнадцать цифр. Первые десять цифр берутся из, привычной нам, десятичной системы (0,1,..,8,9) и еще добавляются шесть букв латинского алфавита (a,b,c,d,e,f) . Например в шестнадцатеричном числе 3f7c2 буквы «f» и «c» являются шестнадцатеричными цифрами.

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

Ноль — 0;
Один — 1;
Два — 2;

и так далее…

Восемь — 8;
Девять — 9;
Десять — a;
Одиннадцать — b;
Двенадцать — c;
Тринадцать — d;
Четырнадцать — e;
Пятнадцать — f;

А что делать дальше? Все цифры кончились. Как же изобразить число Шестнадцать? Поступим аналогично тому как мы поступали в десятичной системе. Там мы вводили понятие десятка, здесь же введем понятие «шестнадцать» и скажем, что шестнадцать — это одина «шестнадцать» и ноль единиц. А это уже можно и записать — «10

16«.

Итак, Шестнадцать — 1016 (одна «шестнадцать», ноль единиц)
Семнадцать — 1116 (одна «шестнадцать», одна единица)

и так далее…

Двадцать пять — 1916 (одна «шестнадцать», девять единиц)
Двадцать шесть — 1a16 (одна «шестнадцать», десять единиц)
Двадцать семь — 1b16 (одна «шестнадцать», одинадцать единиц)

и так далее…

Тридцать — 1e16 (одна «шестнадцать», четырнадцать единиц)
Тридцать один — 1f

16 (одна «шестнадцать», пятнадцать единиц)
Тридцать два — 2016 (две «шестнадцать», ноль единиц)
Тридцать три — 2116 (две «шестнадцать», одна единица)

и так далее…

Двести пятьдесят пять — ff16 (пятнадцать по «шестнадцать», пятнадцать единиц)

А теперь, чтобы считать дальше, нужно вводить более крупную единицу счета. Если в десятичной системе, мы в подобной ситуации вводили сотню, то в шестнадцатеричной это будет «Двести пятьдесят шесть».

Двести пятьдесят шесть — 10016 (одна «Двести пятьдесят шесть», ноль по «шестнадцать», ноль единиц)

Двести пятьдесят семь — 10116 (одна «Двести пятьдесят шесть», ноль по «шестнадцать», одна единица)
Двести пятьдесят восемь — 10216 (одна «Двести пятьдесят шесть», ноль по «шестнадцать», две единицы)

и так далее…

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

Рассмотрим число 3e2c16 записанное в шестнадцатиричной системе счисления. Про него можно сказать, что оно содержит: три по четыре тысячи девяносто шесть, «e» (четырнадцать) по двести пятьдесят шесть, два по шестнадцать и «c» (двенадцать) единиц. И получить его значение через входящие в него цифры можно следующим образом.

3e2c16 = 3*4096+14*256+2*16+12*1, здесь и далее знак * (звездочка) означает умножение.

Но ряд чисел 4096, 256, 16, 1 есть не что иное, как целые степени числа шестнадцать (основания системы счисления) и поэтому можно записать:

3e2c16 = 3*163+14*162+2*161+12*160

Подобным образом для шестнадцатиричной дроби (дробного числа) например: 0.5a216 про него можно сказать, что оно содержит: пять шестнадцатых, «a» (десять) двести пятьдесят шестых и две четыретысячи девяносто шестых долей. И его значение можно вычислить следующим образом :

0.5a216 = 5*(1/16) + 10*(1/256) + 2*(1/4096)

И здесь ряд чисел 1/16; 1/256 и 1/4096 есть не что иное, как целые степени числа шестнадцать и мы также можем записать:

0.5a216 = 5*16-1 + 10*16-2 + 2*16-3

Для смешанного числа 7b2.1f9 аналогичным образом можем записать:

7b2.1f9 = 7*162+11*161+2*160+1*16-1+15*16-2+9*16-3

Пронумеруем разряды целой части некоторого шестнадцатиричного числа, справа налево, как 0,1,2…n (нумерация начинается с нуля!). А разряды дробной части, слева направо, как -1,-2,-3…-m, то значение некоторого шестнадцатиричного числа может быть вычислено по формуле :

N = dn16n+dn-116n-1+…+d1161+d0160+d-116-1+d-216-2+…+d-(m-1)16-(m-1)+d-m16-m

Где: n — количество разрядов в целой части числа минус единица;
       m — количество разрядов в дробной части числа
       di — цифра стоящая в i-м разряде

Эта формула называется формулой поразрядного разложения шестнадцатиричного числа, т.е. числа записанного в шестнадцатиричной системе счисления. Если мы в этой формуле заменим число шестнадцать на некоторое произвольное число q, то получим формулу разложения для числа записанного в q-й системе счисления, т.е. с основанием q:

N = dnqn+dn-1qn-1+…+d1q1+d0q0+d-1q-1+d-2q-2+…+d-(m-1)q-(m-1)+d-mq-m

По этой формуле всегда можно вычислить значение числа записанного в любой позиционной системе счисления с основанием q.

Шестнадцатеричная система счисления — Интеллектуальная Кобринщина

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

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

В шестнадцатеричной системе счисления используются цифры от 0 до 9 и шесть первых латинских букв – A (10), B (11), C (12), D (13), E (14), F (15).

При переводе двоичного числа в шестнадцатеричное, первое разбивается на группы по четыре разряда, начиная с конца. В случае, если количество разрядов не делится нацело, то первая четверка дописывается нулями впереди. Каждой четверке соответствует цифра шестнадцатеричной системе счисления:


Например:

10001100101 = 0100 0110 0101= 465

Если потребуется, то число 4C5 можно перевести в десятичную систему счисления следующим образом (C следует заменить на соответствующее данному символу число в десятичной системе счисления – это 12):

4C5 = 4 * 162 + 12 * 161 + 5 * 160 = 4 * 256 + 192 + 5 = 1221

Максимальное двухразрядное число, которое можно получить с помощью шестнадцатеричной записи — это FF.

FF = 15 * 161 + 15 * 160 = 240 + 15 = 255

255 – это максимальное значение одного байта, равного 8 битам: 1111 1111 = FF. Поэтому с помощью шестнадцатеричной системы счисления очень удобно кратко (с помощью двух цифр-знаков) записывать значения байтов. Внимание! Состояний у 8-ми битного байта может быть 256, однако максимальное значение – 255. Не забывайте про 0 – это как раз 256-е состояние.

Число 10 в шестнадцатеричной системе счисления. Алфавит шестнадцатеричной системы счисления

Результат уже получен!

Системы счисления

Существуют позиционные и не позиционные системы счисления. Арабская система счисления, которым мы пользуемся в повседневной жизни, является позиционной, а римская − нет. В позиционных системах счисления позиция числа однозначно определяет величину числа. Рассмотрим это на примере числа 6372 в десятичном системе счисления. Пронумеруем это число справа налево начиная с нуля:

Тогда число 6372 можно представить в следующем виде:

6372=6000+300+70+2 =6·10 3 +3·10 2 +7·10 1 +2·10 0 .

Число 10 определяет систему счисления (в данном случае это 10). В качестве степеней взяты значения позиции данного числа.

Рассмотрим вещественное десятичное число 1287.923. Пронумеруем его начиная с нуля позиции числа от десятичной точки влево и вправо:

Тогда число 1287.923 можно представить в виде:

1287.923 =1000+200+80 +7+0.9+0.02+0.003 = 1·10 3 +2·10 2 +8·10 1 +7·10 0 +9·10 -1 +2·10 -2 +3·10 -3 .

В общем случае формулу можно представить в следующем виде:

Ц n ·s n +Ц n-1 ·s n-1 +…+Ц 1 ·s 1 +Ц 0 ·s 0 +Д -1 ·s -1 +Д -2 ·s -2 +…+Д -k ·s -k

где Ц n -целое число в позиции n , Д -k — дробное число в позиции (-k), s — система счисления.

Несколько слов о системах счисления.Число в десятичной системе счисления состоит из множества цифр {0,1,2,3,4,5,6,7,8,9}, в восьмеричной системе счисления — из множества цифр {0,1,2,3,4,5,6,7}, в двоичной системе счисления — из множества цифр {0,1}, в шестнадцатеричной системе счисления — из множества цифр {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}, где A,B,C,D,E,F соответствуют числам 10,11,12,13,14,15.В таблице Таб.1 представлены числа в разных системах счисления.

Таблица 1
Система счисления
102816
0000
1111
21022
31133
410044
510155
611066
711177
81000108
91001119
10101012A
11101113B
12110014C
13110115D
14111016E
15111117F

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

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

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

С помощью формулы (1) можно перевести числа из любой системы счисления в десятичную систему счисления.

Пример 1. Переводить число 1011101.001 из двоичной системы счисления (СС) в десятичную СС. Решение:

1 ·2 6 +0 ·2 5 +1 ·2 4 +1 ·2 3 +1 ·2 2 +0 ·2 1 +1 ·2 0 +0 ·2 -1 +0 ·2 -2 +1 ·2 -3 =64+16+8+4+1+1/8=93.125

Пример 2. Переводить число 1011101.001 из восьмеричной системы счисления (СС) в десятичную СС. Решение:

Пример 3 . Переводить число AB572.CDF из шестнадцатеричной системы счисления в десятичную СС. Решение:

Здесь A -заменен на 10, B — на 11, C — на 12, F — на 15.

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

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

Целую часть числа переводится из десятичной СС в другую систему счисления — последовательным делением целой части числа на основание системы счисления (для двоичной СС — на 2, для 8-ичной СС — на 8, для 16-ичной — на 16 и т.д.) до получения целого остатка, меньше, чем основание СС.

Пример 4 . Переведем число 159 из десятичной СС в двоичную СС:

1592
158792
178392
138192
11892
1842
1422
021
0

Как видно из Рис. 1, число 159 при делении на 2 дает частное 79 и остаток 1. Далее число 79 при делении на 2 дает частное 39 и остаток 1 и т.д. В результате построив число из остатков деления (справа налево) получим число в двоичной СС: 10011111 . Следовательно можно записать:

159 10 =10011111 2 .

Пример 5 . Переведем число 615 из десятичной СС в восьмеричную СС.

6158
608768
77298
481
1

При приведении числа из десятичной СС в восьмеричную СС, нужно последовательно делить число на 8, пока не получится целый остаток меньшее, чем 8. В результате построив число из остатков деления (справа налево) получим число в восьмеричной СС: 1147 (см. Рис. 2). Следовательно можно записать:

615 10 =1147 8 .

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

1967316
19664122916
912167616
13644
12

Как видно из рисунка Рис.3, последовательным делением числа 19673 на 16 получили остатки 4, 12, 13, 9. В шестнадцатеричной системе счисления числе 12 соответствует С, числе 13 — D. Следовательно наше шестнадцатеричное число — это 4CD9.

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

Рассмотрим вышеизложенное на примерах.

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

0.214
x2
00.428
x2
00.856
x2
10.712
x2
10.424
x2
00.848
x2
10.696
x2
10.392

Как видно из Рис.4, число 0.214 последовательно умножается на 2. Если в результате умножения получится число с целой частью, отличное от нуля, то целая часть записывается отдельно (слева от числа), а число записывается с нулевой целой частью. Если же при умножении получиться число с нулевой целой частью, то слева от нее записывается нуль. Процесс умножения продолжается до тех пор, пока в дробной части не получится чистый нуль или же не получим требуемое количество разрядов. Записывая жирные числа (Рис.4) сверху вниз получим требуемое число в двоичной системе счисления: 0.0011011 .

Следовательно можно записать:

0.214 10 =0.0011011 2 .

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

0.125
x2
00.25
x2
00.5
x2
10.0

Для приведения числа 0.125 из десятичной СС в двоичную, данное число последовательно умножается на 2. В третьем этапе получилось 0. Следовательно, получился следующий результат:

0.125 10 =0.001 2 .

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

0.214
x16
30.424
x16
60.784
x16
120.544
x16
80.704
x16
110.264
x16
40.224

Следуя примерам 4 и 5 получаем числа 3, 6, 12, 8, 11, 4. Но в шестнадцатеричной СС числам 12 и 11 соответствуют числа C и B. Следовательно имеем:

0.214 10 =0.36C8B4 16 .

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

0.512
x8
40.096
x8
00.768
x8
60.144
x8
10.152
x8
10.216
x8
10.728

Получили:

0.512 10 =0.406111 8 .

Пример 11 . Переведем число 159.125 из десятичной системы счисления в двоичную СС. Для этого переведем отдельно целую часть числа (Пример 4) и дробную часть числа (Пример 8). Далее объединяя эти результаты получим:

159.125 10 =10011111.001 2 .

Пример 12 . Переведем число 19673.214 из десятичной системы счисления в шестнадцатеричную СС. Для этого переведем отдельно целую часть числа (Пример 6) и дробную часть числа (Пример 9). Далее объединяя эти результаты получим.

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

Системы счисления

Каждый школьник знает или хотя бы где-то слышал, что все цифры, которые мы обычно используем, образуют Это название она носит просто потому, что различных символов в ней всего десять (от 0 до 9). Любое число в нашей привычной системе может быть записано с их помощью. Однако, оказывается, использовать ее удобно бывает далеко не всегда. Например, при обмене информацией между цифровыми устройствами проще всего применять систему счисления, в которой есть только две цифры: «0» — нет сигнала — или «1» — есть сигнал (напряжение или что-то еще). Она называется двоичной. Однако, чтобы описать процессы внутри таких устройств с ее помощью, придется выполнять слишком длинные и трудные для понимания записи. Поэтому была придумана шестнадцатиричная система счисления.

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

Почему же для цифровых устройств используется именно система, которая содержит шестнадцать разных символов? Как известно, информация в компьютерах передается в виде байтов, которые обычно содержат 8 бит. А единица данных — машинное слово — включает в себя 2 байта, то есть 16 бит. Таким образом, с помощью шестнадцати разных символов можно описать ту информацию, которая является мельчайшей частицей при обмене. Шестнадцатиричная система счисления включает наши привычные цифры (естественно, от 0 до 9), а также первые буковки (A, B, C, D, E, F). Именно с помощью этих символов принято записывать любую единицу информации. С ними можно производить любые арифметические действия. То есть сложение, вычитание, умножение, деление. Результатом также будет шестнадцатеричное число.

Где применяется

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

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

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

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

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

Десятичная записьШестнадцатеричная записьДвоичная запись
000000
110001
220010
330011
440100
550101
660110
770111
881000
991001
10A1010
11B1011
12C1100
13D1101
14E1110
15F1111

Записи 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” в начале обозначают, что используется шестнадцатеричная запись.

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

Как следует из названия, основанием данной системы является число шестнадцать 16 или в шестнадцатеричной системе 10 16 . Чтобы не было путаницы, при записи чисел в системах счисления отличных от десятичных, справа внизу от основной записи числа будем указывать основание системы счисления. Раз основанием системы является число шестнадцать, значит, для изображения чисел нам потребуется шестнадцать цифр. Первые десять цифр берутся из, привычной нам, десятичной системы (0,1,..,8,9) и еще добавляются шесть букв латинского алфавита (a,b,c,d,e,f) . Например в шестнадцатеричном числе 3f7c2 буквы «f» и «c» являются шестнадцатеричными цифрами.

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

Ноль 0 ;
Один 1 ;
Два 2 ;

и так далее…

Восемь 8 ;
Девять 9 ;
Десять a ;
Одиннадцать b ;
Двенадцать c ;
Тринадцать d ;
Четырнадцать e ;
Пятнадцать f ;

А что делать дальше? Все цифры кончились. Как же изобразить число Шестнадцать? Поступим аналогично тому как мы поступали в десятичной системе. Там мы вводили понятие десятка, здесь же введем понятие «шестнадцать» и скажем, что шестнадцать — это одина «шестнадцать» и ноль единиц. А это уже можно и записать — «10 16 «.

Итак, Шестнадцать 10 16 (одна «шестнадцать», ноль единиц)
Семнадцать 11 16 (одна «шестнадцать», одна единица)

и так далее…

Двадцать пять 19 16 (одна «шестнадцать», девять единиц)
Двадцать шесть 1a 16 (одна «шестнадцать», десять единиц)
Двадцать семь 1b 16 (одна «шестнадцать», одинадцать единиц)

и так далее…

Тридцать 1e 16 (одна «шестнадцать», четырнадцать единиц)
Тридцать один 1f 16 (одна «шестнадцать», пятнадцать единиц)
Тридцать два 20 16 (две «шестнадцать», ноль единиц)
Тридцать три 21 16 (две «шестнадцать», одна единица)

и так далее…

Двести пятьдесят пять ff 16 (пятнадцать по «шестнадцать», пятнадцать единиц)

Двести пятьдесят шесть 100 16 (одна «Двести пятьдесят шесть», ноль по «шестнадцать», ноль единиц)
Двести пятьдесят семь 101 16 (одна «Двести пятьдесят шесть», ноль по «шестнадцать», одна единица)
Двести пятьдесят восемь 102 16 (одна «Двести пятьдесят шесть», ноль по «шестнадцать», две единицы)

и так далее…

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

Рассмотрим число 3e2c 16 записанное в шестнадцатиричной системе счисления. Про него можно сказать, что оно содержит: три по четыре тысячи девяносто шесть, «e» (четырнадцать) по двести пятьдесят шесть, два по шестнадцать и «c» (двенадцать) единиц. И получить его значение через входящие в него цифры можно следующим образом.

3e2c 16 = 3 *4096+14 *256+2 *16+12 *1, здесь и далее знак * (звездочка) означает умножение.

Но ряд чисел 4096, 256, 16, 1 есть не что иное, как целые степени числа шестнадцать (основания системы счисления) и поэтому можно записать:

3e2c 16 = 3 *16 3 +14 *16 2 +2 *16 1 +12 *16 0

Подобным образом для шестнадцатиричной дроби (дробного числа) например: 0.5a2 16 про него можно сказать, что оно содержит: пять шестнадцатых, «a» (десять) двести пятьдесят шестых и две четыретысячи девяносто шестых долей. И его значение можно вычислить следующим образом:

0.5a2 16 = 5 *(1/16) + 10 *(1/256) + 2 *(1/4096)

И здесь ряд чисел 1/16; 1/256 и 1/4096 есть не что иное, как целые степени числа шестнадцать и мы также можем записать:

0.5a2 16 = 5 *16 -1 + 10 *16 -2 + 2 *16 -3

Для смешанного числа 7b2.1f9 аналогичным образом можем записать:

7b2.1f9 = 7 *16 2 +11 *16 1 +2 *16 0 +1 *16 -1 +15 *16 -2 +9 *16 -3

Пронумеруем разряды целой части некоторого шестнадцатиричного числа, справа налево, как 0,1,2…n (нумерация начинается с нуля!). А разряды дробной части, слева направо, как -1,-2,-3…-m, то значение некоторого шестнадцатиричного числа может быть вычислено по формуле:

N = d n 16 n +d n-1 16 n-1 +…+d 1 16 1 +d 0 16 0 +d -1 16 -1 +d -2 16 -2 +…+d -(m-1) 16 -(m-1) +d -m 16 -m

Где: n — количество разрядов в целой части числа минус единица;
m — количество разрядов в дробной части числа
d i — цифра стоящая в i -м разряде

Эта формула называется формулой поразрядного разложения шестнадцатиричного числа, т.е. числа записанного в шестнадцатиричной системе счисления. Если мы в этой формуле заменим число шестнадцать на некоторое произвольное число q , то получим формулу разложения для числа записанного в q-й системе счисления, т.е. с основанием q :

N = d n q n +d n-1 q n-1 +…+d 1 q 1 +d 0 q 0 +d -1 q -1 +d -2 q -2 +…+d -(m-1) q -(m-1) +d -m q -m

По этой формуле всегда можно вычислить значение числа записанного в любой позиционной системе счисления с основанием q .

С другими системами счисления можно познакомиться на нашем сайте по следующим ссылкам.

Шестнадцатеричная запись («Hex») — удобный способ представления двоичных значений. Так же, как десятичная система счисления имеет основание десять, а двоичная — два, шестнадцатеричная система имеет основание шестнадцать.

Система счисления с основанием 16 использует числа от 0 до 9 и буквы от A до F. Рисунок показывает эквивалентные десятичные, двоичные и шестнадцатеричные значения для двоичных чисел от 0000 до 1111. Для нас легче выражать значение в виде одной шестнадцатеричной цифры, чем в виде четырех битов.

Понимание Байтов

Учитывая, что 8 битов (байт) являются стандартной двоичной группировкой, двоичные числа от 00000000 до 11111111 могут быть представлены в шестнадцатеричной записи как числа от 00 до FF. Начальные нули всегда отображаются, чтобы завершить 8-разрядное представление. Например, двоичное значение 0000 1010 в шестнадцатеричном виде будет 0A.

Представление Шестнадцатеричных Значений

Отметьте: Важно отличать шестнадцатеричные значения от десятичных значений для символов от 0 до 9, как показано на рисунке.

Шестнадцатеричные значения обычно представляются в тексте значением, которому предшествует 0x (например 0x73), или с помощью нижнего индекса 16. Реже, они могут сопровождаться буквой H, например 73H. Однако, поскольку текст нижнего индекса не распознается ни в командной строке, ни в средах программирования, в техническом представлении шестнадцатеричных чисел им предшествует «0x» (нуль X). Поэтому, примеры выше были бы показаны в виде 0x0A и 0x73 соответственно.

Шестнадцатеричная запись используется, чтобы представлять MAC-адреса Ethernet и адреса IP Версии 6.

Шестнадцатеричные Преобразования

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

С практикой возможно распознать двоичные шаблоны битов, которые соответствуют десятичным и шестнадцатеричным значениям. Рисунок показывает эти шаблоны для некоторых 8-разрядных значений.

Позиционные системы счисления – двоичная и шестнадцатеричная

Позиционные системы счисления – двоичная и шестнадцатеричная

1. Процессоры работают с командами и данными, представленными в двоичной системе счисления (двоичном виде). В двоичной системе используют только две цифры 1 и 0. Двоичная система является (как и десятичная, в которой используют десять цифр: 1,2,3,4,5,6,7,8,9,0) позиционной системой счисления. Например, десятичное число 5643 состоит из четырех цифр, каждая цифра является десятичным разрядом (5 – старший разряд, а 3 – младший разряд десятичного числа). Младший разряд – левый — это разряд с весом «1», следующий, более старший разряд —  с весом каждой единицы равным «10», следующий, более старший разряд —  с весом каждой единицы равным «100» и т. д.. Таким образом, подробно, десятичное число 5643 можно записать следующим образом:

 5 х 1000 + 6 х 100 + 4 х 10 + 3 х 1 = 5643

 

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

 

1 х 2+ 0 х 23 + 1 х 22 + 1 х 21  + 0 х 2= 10110

 

Вес каждого разряда в двоичной системе равен степени числа два (…24, 23, 22, 21, 20), как и в десятичной системе правее расположены более младшие разряды, а левее располагаются более старшие разряды.

Длинные двоичные числа удобнее записывать и запоминать в шестнадцатеричной системе, которая использует 16 цифр для изображения чисел: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, В, C, D, E, F. Эта система счисления тоже позиционная, только вес разрядов числа является степенью числа 16.

Например,  шестнадцатеричное число 1F2 можно представить подробно как 1 х 162 + F х 161 + 2 х 160 = 1F2

Необычным  цифрам в шестнадцатеричной системе: A, B, C, D, E, F соответствуют десятичные значения соответственно: 10, 11, 12, 13, 14, 15 так, что можно легко перевести число 1F2 из шестнадцатеричной системы в привычную десятичную:

1 х 162 + 15 х 161 + 2 х 160 =  256 + 240 + 2 = 498    т. е. число (1F2)16 = (498)10 .

 

Каждой шестнадцатеричной цифре соответствует и конкретное двоичное число:

 

0     —       0000                      8      —       1000         

1     —       0001                      9      —       1001          

2     —       0010                      A     —       1010

3     —       0011                      B     —       1011

4     —       0100                      C     —       1100

5     —       0101                      D     —       1101

6     —       0110                      E      —      1110

7     —       0111                      F      —      1111

 

таким образом, число 1F2 в двоичной записи будет: 0001  1111  0010 (1F2 легче запомнить чем 000111110010).

               

Обычно шестнадцатеричные числа сопровождаются буквой h (например 1F2h).

 

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

Содержание:
Что такое шестнадцатеричная система счисления
Как перевести целое десятичное число в шестнадцатеричную систему счисления
Как перевести десятичную дробь в шестнадцатеричную систему счисления
Как перевести число из шестнадцатеричной системы счисления в десятичную
Как перевести дробное шестнадцатеричное число в десятичное
Таблица значений десятичных чисел от 0 до 100 в шестнадцатеричной системе счисления

Что такое шестнадцатеричная система счисления

шестнадцатеричная система счисления, является позиционной системой счисления, то есть имеется зависимость от позиции цифры в записи числа. Для записи числа в шестнадцатеричной системе счисления используется десять цифр и шесть букв 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E и F. Для определения в какой системе счисления записано число, внизу, справа от числа ставят цифру, которая называется основанием системы счисления. Например, F24516 или 123A16

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

Как перевести целое десятичное число в шестнадцатеричную систему счисления

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

Например, переведем число 32394710 в шестнадцатеричную систему счисления:

323947 : 16 = 20246 остаток: 11, 11 = B
20246 : 16 = 1265 остаток: 6
1265 : 16 = 79 остаток: 1
79 : 16 = 4 остаток: 15, 15 = F
4 : 16 = 0 остаток: 4

32394710 = 4F16B16

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

Например, переведем десятичное число 842.99082088510 в шестнадцатеричную систему счисления:

Переведем целую часть

842 : 16 = 52 остаток: 10, 10 = A
52 : 16 = 3 остаток: 4
3 : 16 = 0 остаток: 3

84210 = 34A16

Переведем дробную часть

0.990820885 · 16 = 15.85313416, 15 = F
0.85313416 · 16 = 13.65014656, 13 = D
0.65014656 · 16 = 10.40234496, 10 = A
0.40234496 · 16 = 6.43751936
0.43751936 · 16 = 7.00030976
0.00030976 · 16 = 0.00495616
0.00495616 · 16 = 0.07929856
0.07929856 · 16 = 1.26877696
0.26877696 · 16 = 4.30043136
0.30043136 · 16 = 4.80690176

0.99082088510 = 0.FDA670014416

842.99082088510 = 34A.FDA670014416

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

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

Например, переведем число AE1916 в десятичную систему счисления:

Позиция в числе43210
ЧислоAF2D6

A16 = 1010
D16 = 1310
F16 = 1510

AF2D616 = 10 ⋅ 164 + 15 ⋅ 163 + 2 ⋅ 162 + 13 ⋅ 161 + 6 ⋅ 160 = 71752610

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

Например, переведем дробное шестнадцатеричное число 69.F316 в десятичное:

Позиция в числе10-1-2
Число69F3

F16 = 1510

69.F316 = 6 ⋅ 161 + 9 ⋅ 160 + 15 ⋅ 16-1 + 3 ⋅ 16-2 = 105.9492187510

Таблица значений десятичных чисел от 0 до 100 в шестнадцатеричной системе счисления
Значение числа в десятичной системе счисленияЗначение числа в шестнадцатеричной системе счисления
010016
110116
210216
310316
410416
510516
610616
710716
810816
910916
1010A16
1110B16
1210C16
1310D16
1410E16
1510F16
16101016
17101116
18101216
19101316
20101416
21101516
22101616
23101716
24101816
25101916
26101A16
27101B16
28101C16
29101D16
30101E16
31101F16
32102016
33102116
34102216
35102316
36102416
37102516
38102616
39102716
40102816
41102916
42102A16
43102B16
44102C16
45102D16
46102E16
47102F16
48103016
49103116
50103216
Значение числа в десятичной системе счисленияЗначение числа в шестнадцатеричной системе счисления
51103316
52103416
53103516
54103616
55103716
56103816
57103916
58103A16
59103B16
60103C16
61103D16
62103E16
63103F16
64104016
65104116
66104216
67104316
68104416
69104516
70104616
71104716
72104816
73104916
74104A16
75104B16
76104C16
77104D16
78104E16
79104F16
80105016
81105116
82105216
83105316
84105416
85105516
86105616
87105716
88105816
89105916
90105A16
91105B16
92105C16
93105D16
94105E16
95105F16
96106016
97106116
98106216
99106316
100106416

Информатик БУ — Кратко о системах счисления

Система счисления – это способ записи чисел с помощью символов. Мы все привыкли использовать десять различных знаков для записи чисел: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Такая система счисления называется десятичной. Один знак числа называется цифрой.

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

Разряд числа – это место цифры в числе. В зависимости от количества разрядов мы называем числа двузначными, трёхзначными, четырёхзначными и т.д.


Двоичная система счисления

Популярность двоичной системы в информатике обусловлена тем, что для записи чисел используется всего две цифры: 0 и 1. Это соответствует значению одного бита, который тоже может принимать значения 0 и 1. Поэтому во многих случаях один разряд двоичного числа называют битом. А так как в вычислительной технике информация передаётся в битах, то и числа удобнее передавать в виде двоичного (бинарного) кода.

Простой пример. IP-адрес компьютера состоит из четырёх байт, разделенных точками, к примеру:

192.168.0.1

Почему байты записаны в виде чисел? Если перевести байты этого IP-адреса в биты (двоичную систему), мы получим четыре восьмизначных двоичных числа:

11000000. 10101000.00000000.00000001

Двоичные числа состоят из восьми разрядов, а байт равен восьми битам.


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

Двоичная система счисления удобна для компьютера, но не очень удобна для людей, так как числа, записанные в ней, получаются очень большими по размеру. Представьте, десятичное число 10000000 в двоичной системе выглядит как 100110001001011010000000, не очень удобно, согласитесь?

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


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

Помните, что один разряд двоичной системы – это один бит? А два разряда шестнадцатеричной системы – это один байт. В современных компьютерах информация кодируется в байтах, поэтому во многих случаях удобно использовать шестнадцатеричную систему.
В шестнадцатеричной системе шестнадцать разрядов: цифры от 0 до 9, и буквы от A до F (где буквы от A до F – десятичные числа от 10 до 15 соответственно).

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

Одно из заданий ЕГЭ предыдущих лет было как раз на знание шестнадцатеричных цветовых кодов.

 

Пример: нужно определить, какой цвет зашифрован кодом #00FF00 в палитре RGB.

Решение: Данный код является кодом цвета в палитре RGB, то есть первые два разряда – Red, вторые два разряда – Green, третьи два разряда – Blue:

#00FF00

Получается, что красного цвета — 0, синего цвета – 0, а зелёного – FF, то есть 255 в десятичной системе счисления (максимальное двузначное шестнадцатеричное число). То есть это код чистого зелёного цвета.

 

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

 

Что такое шестнадцатеричный? — Определение с сайта WhatIs.com

По

Шестнадцатеричная система счисления описывает систему счисления с основанием 16. То есть он описывает систему нумерации, содержащую 16 последовательных чисел в качестве основных единиц (включая 0) перед добавлением новой позиции для следующего числа. (Обратите внимание, что мы используем здесь «16» как десятичное число, чтобы объяснить число, которое было бы «10» в шестнадцатеричной системе.) Шестнадцатеричные числа — это 0–9, а затем используются буквы A – F. Мы показываем эквивалентность двоичных, десятичных и шестнадцатеричных чисел в таблице ниже.

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

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

Последний раз обновлялся в сентябре 2005 г.

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

Шестнадцатеричное число основано на числе 16

16 различных значений

Имеется 16 шестнадцатеричных цифр.Они такие же, как десятичные цифры до 9, но есть буквы A, B, C, D, E и F вместо десятичных чисел от 10 до 15:

Шестнадцатеричный: 0 1 2 3 4 5 6 7 8 9 А B С D E F
Десятичный: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Таким образом, одна шестнадцатеричная цифра может отображать 16 различных значений вместо обычных 10.

Подсчет

Выберите «Шестнадцатеричный» ниже и посмотрите, как он подсчитывает:

После того, как позиция «Единицы» заполнена (после F ), они начинаются с 0 , и мы добавляем 1 к следующей позиции слева (чтобы показать 1 лот из 16).

И после позиция достигает F , мы делаем то же самое и так далее.

По мере того, как мы двигаемся влево, каждое числовое место будет 16 раз больше .

Пример: какое десятичное значение шестнадцатеричного числа «D1CE»

= 53 248 + 256 + 192 + 14
= 53 710 в десятичной системе счисления

(Протестируйте его в преобразователе двоично-десятичного в шестнадцатеричный.)

Дело!

Пример: 2E6.A3

Это 2 × 16 × 16 + 14 × 16 + 6 + 10/16 + 3 / (16 × 16)
= 742,63671875 в десятичном формате
Прочтите ниже, чтобы узнать, почему

Цифры можно размещать слева или справа от точки, чтобы отображать значения больше единицы или меньше единицы:

Число слева от точки целое число.

По мере того, как мы двигаемся влево, каждое числовое место будет 16 раз больше .

Первая цифра справа от точки означает шестнадцатых. (1/16).

По мере продвижения вправо каждое число ставит в 16 раз меньше (одна шестнадцатая больше).

Дополнительные примеры

Пример 1: Что такое 4B5 (шестнадцатеричный)?
  • «4» находится в позиции «16 × 16», то есть 4 × 16 × 16
  • Буква «B» (11) находится в положении «16», что означает 11 × 16
  • «5» находится в позиции «1», что означает 5.
  • Ответ: 4B5 = 4 × 16 × 16 + 11 × 16 + 5 (= 1205) в десятичном формате

Пример 2: Что такое 2.3 (шестнадцатеричный)?
  • Слева стоит цифра «2», то есть целое число. часть.
  • Число 3 находится в позиции «шестнадцатая», что означает «3». шестнадцатая «, или 3/16
  • Итак, 2,3 — это «2 и 3 шестнадцатые» (= 2,1875 в десятичной системе)

Слово «шестнадцатеричное»

Слово «шестнадцатеричный» означает «основанный на 16». (От греческого hexa: «шесть» и латинского decima : «десятая часть» ).

Объяснение шестнадцатеричной системы счисления

Шестнадцатеричная система счисления (Base-16)
В шестнадцатеричной системе счисления для представления чисел используются ШЕСТНАДЦАТЬ значений. Значения:
0 1 2 3 4 5 6 7 8 9 А Б В Г Д Е Ф
где 0 имеет наименьшее значение, а F — наибольшее значение. Столбцы используются так же, как и в десятичной системе, в том, что самый левый столбец используется для представления наибольшего значения. Как мы видели в десятичной системе, значения в наборе (0 и 1) повторяются как в вертикальном, так и в горизонтальном направлениях.
0 — F, 10 — 1 этаж, 20 — 2 этаж, 30 — 3 этаж ……
Шестнадцатеричный формат часто используется для представления значений (чисел и адресов памяти) в компьютерных системах.

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


Преобразование шестнадцатеричного числа в десятичное
Задача: преобразовать 176 из шестнадцатеричного числа в десятичное.
Каждый столбец представляет степень 16,

164 становится
4 * 16 0 = 4
6 * 16 1 = 96
1 * 16 2 = 256
сложение дает 356

Преобразование двоичного числа в шестнадцатеричный
Задача: преобразовать 110110 в шестнадцатеричный.
Каждая шестнадцатеричная цифра представляет 4 двоичных бита. Разделить двоичное число на группы по 4 бита, начиная справа.
11 0110
= 3 = 6
= 36 в шестнадцатеричном формате

Преобразование десятичного числа в шестнадцатеричное
Проблема: преобразовать десятичное число 232 в шестнадцатеричное.
Используйте тот же метод, который использовался ранее, чтобы разделить десятичное число на двоичное
, но разделите на 16.
232/16 = 14 с остатком 8
14/16 = 0 с остатком E (14 десятичное = E)
, затем ответьте E8 16
Обратите внимание на суффикс, добавленный для обозначения базы чисел

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

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

Значение любой цифры в позиционной системе счисления зависит от следующего:

  • Цифра, чья значение подлежит определению

  • Положение цифры в числе

  • Основание или основание системы счисления

Основание шестнадцатеричной системы счисления равно 16 (шестнадцатеричное = 6 и десятичное = 10).Поэтому ее еще называют системой счисления с основанием 16. В этой системе счисления есть 16 цифр, которые используются для представления чисел в шестнадцатеричной форме. Это похоже на десятичную систему счисления, потому что первые 10 цифр остаются одинаковыми в обеих системах счисления. Однако 10 в десятичной системе счисления представлено как A в шестнадцатеричной системе счисления, 11 как B, 12 как C, 13 как D, 14 как E, 15 как F и 16 как 10. Итак, 16 цифр шестнадцатеричной системы счисления 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.

Разрядное значение цифр в шестнадцатеричной системе счисления:

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

(изображение скоро будет обновлено)

Пример: (9AB.47) 16 — шестнадцатеричное число

Число записывается в развернутой форме как

9 x 162 x A x 161 + B x 160 + 4 x 16 -1 + 7 x 16-2

Таблица шестнадцатеричного преобразования:

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

9007

9 0194

0111

15

Позиционные системы в шестнадцатеричной форме:

десятичные в шестнадцатеричные al Система счисления:

Десятичное число делится на 16, и записывается шестнадцатеричный эквивалент остатка.Полученное частное снова делится на 16 и записывается шестнадцатеричный эквивалент остатка. Деление продолжается до тех пор, пока частное не станет равным 0. Число в шестнадцатеричной форме — это остаток, записанный снизу вверх.

Пример:

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

Решение:

(242) 10 = (F2) 16

Преобразование двоичного числа в шестнадцатеричное:

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

Пример:

Преобразовать (1010001011.10101001111) 2 в шестнадцатеричное число

Решение:

Целая часть сгруппирована как 0010 1000 1011. Ее шестнадцатеричный эквивалент (28B) 16

Дробная часть сгруппирована как 1010 1001 1110. Его шестнадцатеричный эквивалент (A9E) 16

Таким образом, число в шестнадцатеричной форме (28B.A9E) 16

Восьмеричное преобразование в шестнадцатеричное:

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

Пример:

Преобразует (121) 8 в шестнадцатеричную форму.

Решение:

(121) 8 преобразуется в десятичную форму путем умножения каждой цифры на ее позиционное значение 8.

(121) 8 = 1x 82 + 2 x 81 + 1 x 80 = 64 + 16 + 1 = (81) 10

81 затем преобразуется в шестнадцатеричную форму следующим образом:

Итак (121) 8 = (51) 16

Шестнадцатеричное преобразование в десятичное:

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

Пример:

Преобразует (AB4) 16 в десятичное число.

Решение:

(AB4) 16 = A x 162 + B x 161 + 4 x 160 = 10 x 64 + 11 x 16 + 4 x 1 = (820) 10

Шестнадцатеричное преобразование в двоичное:

Шестнадцатеричное Число преобразуется в двоичное число путем записи 4-значного двоичного эквивалента каждой шестнадцатеричной цифры числа путем просмотра таблицы преобразования.

Пример:

Преобразование (C7D) 16 в число с основанием 2.

Решение:

Двоичный эквивалент

C => 1100

7 => 0111

D => 1101

Итак (C7D) 16 = (110001111101) 2

Шестнадцатеричная цифра в восьмеричное преобразование1:

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

Пример:

Преобразует (AB4) 16 в восьмеричное число.

Решение:

(AB4) 16 сначала преобразуется в десятичную форму путем умножения каждой цифры на позиционные значения.

(AB4) 16 = A x 162 + B x 161 + 4 x 160 = 10 x 64 + 11 x 16 + 4 x 1 = (820) 10

Затем число преобразуется в восьмеричную форму путем деления на 8 и отмечая остатки. Остаток снизу вверх является восьмеричным эквивалентом.

Число, полученное делением 820 и записью остатков, равно 1464

Итак, (AB4) 16 = (1464) 8

Интересные факты:

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

Десятичная эквивалентная

Двоичная эквивалентная

3

3

3

1

0001

2

2

0010

3

3

03

4

0100

5

5

0101

6

03

03

900 7

7

8

8

1000

9

9

9

9

4 9007 900

1010

B

11

1011

C

12

12

924 9000

1101

E

14

1110

F

15

другие

11
10 Восьмеричная цифра

6

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

Шестнадцатеричная система счисления Факты для детей

Шестнадцатеричная система счисления , также известная как шестнадцатеричная система счисления , представляет собой систему счисления, состоящую из 16 символов (основание 16). Стандартная система счисления называется десятичной (основание 10) и использует десять символов: 0,1,2,3,4,5,6,7,8,9. Шестнадцатеричный использует десятичные числа и включает шесть дополнительных символов.Нет символов, которые означают десять, одиннадцать и т. Д., Поэтому эти символы представляют собой буквы английского алфавита: A, B, C, D, E и F. Шестнадцатеричный A = десятичный 10 и шестнадцатеричный F = десятичный 15.

Люди в основном используют десятичную систему счисления. Вероятно, это потому, что у людей десять пальцев (десять пальцев). Однако у компьютеров есть только включение и выключение, называемое двоичной цифрой (или для краткости битом). Двоичное число — это просто строка из нулей и единиц: например, 11011011. Для удобства инженеры, работающие с компьютерами, обычно группируют биты вместе.Раньше, например, в 1960-х годах, они группировали по 3 бита за раз (подобно тому, как большие десятичные числа сгруппированы по тройкам, например, 123 456 789). Три бита, каждый из которых включен или выключен, могут представлять восемь чисел от 0 до 7: 000 = 0; 001 = 1; 010 = 2; 011 = 3; 100 = 4; 101 = 5; 110 = 6 и 111 = 7. Это называется восьмеричным.

По мере того, как компьютеры становились больше, было удобнее группировать биты по четырем, а не по трем. Дополнительный бит может быть включен или выключен, 0 или 1. Таким образом, это удваивает числа, которые будет представлять символ.Это 16 чисел. Hex = 6 и Decimal = 10, поэтому он называется шестнадцатеричным. Четыре бита называются полубайтом (иногда пишется полубайтом ). Полубайт — это одна шестнадцатеричная цифра, которая записывается с использованием символа 0-9 или A-F. Два полубайта — это байт (8 бит). В большинстве компьютерных операций используется байт или кратное байту (16 бит, 24, 32, 64 и т. Д.). Шестнадцатеричный код упрощает запись этих больших двоичных чисел.

Чтобы избежать путаницы с десятичной, восьмеричной или другими системами счисления, шестнадцатеричные числа иногда пишутся с буквой «h» после числа.Например, 63h означает 63 в шестнадцатеричном формате. Разработчики программного обеспечения нередко перед числом (0x63) используют 0x .

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

Шестнадцатеричная система счисления похожа на восьмеричную систему счисления (основание 8), поскольку каждую из них можно легко сравнить с двоичной системой счисления. В шестнадцатеричном формате используется четырехбитное двоичное кодирование. Это означает, что каждая цифра в шестнадцатеричном формате совпадает с четырьмя цифрами в двоичном формате. Octal использует трехбитную двоичную систему.

В десятичной системе первая цифра — это , это разряда, следующая цифра слева — это десятков, , следующая — сотен, , и т. Д.В шестнадцатеричном формате каждая цифра может иметь 16 значений, а не 10. Это означает, что у цифр — это раз, у — шестнадцать — , а следующая — , 256 — . Таким образом, 1h = 1 десятичный, 10h = 16 десятичный и 100h = 256 в десятичном.

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

0

1

2

3

4

5

6

000

001

010

011

100

101

110

4

110

4 9057 9057
шестигранник двоичный восьмеричное Десятичное
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
А 1010 12 10
Б 1011 13 11
К 1100 14 12
Д 1101 15 13
E 1110 16 14
ф. 1111 17 15
10 1 0000 20 16
11 1 0001 21 17
24 10 0100 44 36
5E 101 1110 136 94
100 1 0000 0000 400 256
3E8 11 1110 1000 1750 1000
1000 1 0000 0000 0000 10000 4096
ЛИЦО 1111 1010 1100 1110 175316 64206

Преобразование

Двоичное в шестнадцатеричное

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

двоичный Группы шестигранник
01100101 0110 0101 65
010010110110 0100 1011 0110 4B6
1101011101011010 1101 0111 0101 1010 D75A

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

Существует два распространенных способа преобразования числа из шестнадцатеричного в десятичное.

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

  1. Используйте десятичное значение для каждой шестнадцатеричной цифры. Для 0–9 это то же самое, но A = 10, B = 11, C = 12, D = 13, E = 14 и F = 15.
  2. Сохраняйте сумму преобразованных чисел на каждом шаге ниже.
  3. Начать с младшей шестнадцатеричной цифры. Это цифра на правом конце. Это будет первый предмет в сумме.
  4. Возьмем вторую наименьшую значащую цифру. Это рядом с цифрой на правом конце.Умножьте десятичное значение цифры на 16. Добавьте это к сумме.
  5. Сделайте то же самое для третьей младшей значащей цифры, но умножьте ее на 16 2 (то есть на 16 в квадрате или 256). Добавьте это к сумме.
  6. Продолжайте для каждой цифры, умножая каждое место на другую степень 16. (4096, 65536 и т. Д.)
Расположение
6 5 4 3 2 1
Значение 1048576 (16 5 ) 65536 (16 4 ) 4096 (16 3 ) 256 (16 2 ) 16 (16 1 ) 1 (16 0 )

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

  1. Используйте десятичное значение для каждой шестнадцатеричной цифры. Для 0–9 это то же самое, но A = 10, B = 11, C = 12, D = 13, E = 14 и F = 15.
  2. Сохраняйте сумму преобразованных чисел на каждом шаге ниже.
  3. Начните со старшей цифры (цифра в крайнем левом углу). Это первая позиция в сумме.
  4. Если существует другая цифра, умножьте сумму на 16 и добавьте десятичное значение следующей цифры.
  5. Повторяйте вышеуказанный шаг до тех пор, пока цифры не исчезнут.

Пример: 5Fh и 3425h в десятичном формате, метод 1

5Fh в десятичной системе
шестигранник Десятичное
5Fh = (5 х 16) + (15 х 1)
= 80 + 15
5Fh = 95
3425h в десятичной системе
шестигранник Десятичное
3425h = (3 х 4096) + (4 х 256) + (2 х 16) + (5 х 1)
= 12288 + 1024 + 32 + 5
3425h = 13349

Пример: 5Fh и 3425h в десятичном формате, метод 2

5Fh в десятичной системе
шестигранник Десятичное
сумма = 5
= (5 x 16) + 15
сум = 80 + 15 (без цифр)
5Fh = 95
3425h в десятичной системе
шестигранник Десятичное
сумма = 3
= (3 х 16) + 4 = 52
сум = (52 х 16) + 2 = 834
сум = (834 x 16) + 5 = 13349
3425h = 13349

Связанные страницы

Образы для детей

  • Шестнадцатеричная схема подсчета пальцев.

  • Предложение Брюса Алана Мартина о шестнадцатеричной системе счисления

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

Шестнадцатеричные числа, часто сокращаемые до «шестнадцатеричных чисел» или «шестнадцатеричных», представляют собой числа, представленные по основанию 16, а не по основанию 10, которые мы используем для повседневной арифметики и счета.

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

Цифры в шестнадцатеричном формате используют стандартные символы 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9 для представления соответствующего значения и используют первые шесть букв алфавита для представления значений от 10 до 15 (Е.G: A, B, C, D, E, F).

В программировании мы ставим перед шестнадцатеричными константами префикс 0x , за некоторыми исключениями.

Примеры и объяснение
  0x1 == 1
0xF == 15
0xFF == 255
0xFFF == 4095
0x1000 == 4096  

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

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

Использование шестнадцатеричного числа в низкоуровневом программировании

Шестнадцатеричное число впервые нашло свое применение в информатике в качестве удобной функции.

Данные в наших компьютерах имеют самую низкую общую единицу хранения — байт. Каждый байт содержит 8 бит и может хранить число от 0 до 255 включительно.

Шестнадцатеричный формат имеет то преимущество, что он краток и имеет четко определенные границы.

Один байт всегда представлен двумя шестнадцатеричными цифрами от 0x00 до 0xFF, последняя из которых является наибольшим байтовым значением 255.

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

Использование шестнадцатеричных чисел в JavaScript

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

В качестве примера, число 2514 в шестнадцатеричном формате — это 0x9D2, но не существует поддерживаемого языком способа представления 25,14 в виде шестнадцатеричного числа.

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

Использование шестнадцатеричных чисел в CSS

CSS уже давно использует шестнадцатеричную нотацию для представления значений цвета. Рассмотрим следующий селектор:

  .my-container {
    цвет фона: # 112233;
    цвет: #FFFFFF;
}  

Значение background-color фактически составляет три шестнадцатеричных байта.

Процессор CSS обрабатывает их как три отдельных байта, представляющих красный, зеленый и синий.

В нашем примере 11 соответствует компоненту красного цвета, 22 соответствует компоненту зеленого цвета, а 33 — компоненту синего цвета.

В настоящее время в CSS3 нет способа определить цвет с альфа-компонентом с использованием шестнадцатеричного кода. Предлагаемый проект CSS4 1 включает предложение о разрешении дополнительного байта для определения альфа-значений.

На данный момент рекомендуется использовать стандартную функцию rgba () для добавления альфа-значения к вашим цветам.

Что такое шестнадцатеричное число? Почему это важно?

Шестнадцатеричное число — это числа с основанием 16 и, вероятно, самые большие числа прямо сейчас. Шестнадцатеричные числа включают A, B, C, D, E, F и от 0 до 9. Многие технические специалисты считают, что шестнадцатеричные числа являются усовершенствованной версией двоичных чисел. Многие современные организации также начали использовать шестнадцатеричные числа вместо нулей и единиц.

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

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

Самым большим преимуществом шестнадцатеричного числа является его компактность. Это число с основанием 16, и по этой причине они могут представлять число с наименьшим количеством символов. Поскольку десятичное число — это число с основанием 10, и это число с основанием 16, которое включает около 16 различных символов. Кроме того, двоичный код включает только нули и единицы, и по этой причине для представления числа в двоичном формате требуется в восемь раз больше чисел, чем шестнадцатеричных чисел.

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

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

alexxlab

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *