Шестнадцатеричное число: Шестнадцатеричная система счисления
Содержание
Шестнадцатеричная система счисления
☰
Шестнадцатеричная система счисления, так же как восьмеричная, широко используется в компьютерной науке из-за простоты перевода в нее двоичных чисел. В случае шестнадцатеричной записи числа получаются более компактными.
В качестве алфавита шестнадцатеричной системы счисления используются цифры от 0 до 9 и шесть первых латинских букв – A, B, C, D, E, F. При переводе в десятичную систему буквы заменяются числами 10, 11, 12, 13, 14, 15 соответственно.
При переводе двоичного числа в шестнадцатеричное, первое разбивается на группы по четыре разряда, начиная с конца. В случае, если количество разрядов не кратно четырем, первая четверка дописывается нулями впереди. Каждой четверке соответствует одноразрядное число шестнадцатеричной системы счисления.
Пример:
10001100101 = 0100 1100 0101 = 4 C 5 = 4C5
В случае обратного перевода шестнадцатеричные цифры заменяются соответствующими четырехразрядными двоичными числами.
Перевод из шестнадцатеричной системы счисления в десятичную выполняется аналогично переводу из двоичной и восьмеричной. Только здесь в качестве основания степени выступает число 16, а цифры от A до F заменяются десятичными числами от 10 до 15.
4C5 = 4 * 162 + 12 * 161 + 5 * 160 = 4 * 256 + 192 + 5 = 1221
Максимальное двухразрядное число, которое можно получить с помощью шестнадцатеричной записи, – это число FF.
FF16 = 15 * 161 + 15 * 160 = 240 + 15 = 25510
В двоичном представлении FF будет выглядеть как восьмиразрядное число 11111111. Наименьшей рабочей ячейкой компьютерной памяти является байт, который состоит из 8-ми битов. Каждый бит может быть в двух состояниях – «включено» и «выключено». Одному из них сопоставляют ноль, другому – единицу.
Следовательно, в одном байте можно сохранить любое двоичное число в диапазоне от 00000000 до 11111111. В десятичном представлении это числа от 0 до 255. В шестнадцатеричном – от 0 до FF. С помощью шестнадцатеричной системы счисления удобно кратко, с помощью двух цифр-знаков, записывать значения байтов. Например, 0E или F5.
Несмотря на то, что 25510 – это максимальное значение, которое можно сохранить в байте, состояний у 8-ми битного байта 256, так как одно из них отводится под хранение нуля. Количество возможных состояний ячейки памяти вычисляется по формуле 2n, где n – количество составляющих ее бит. В случае восьми бит получаем:
28 = 256
Шестнадцатеричная система счисления
Главная /
Ассемблер /
Для чайников /
Системы счисления /
Как мы увидели выше, с двоичным числом удобно работать при поразрядных операциях, однако
запись двоичного числа получается довольно громоздкой. Чтобы немного упростить жизнь
программистам, была придумана шестнадцатеричная система счисления, которая использует 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.
Как правильно читать шестнадцатеричное число
В моей книге говорится, что 0010 1010 в двоичной системе счисления равно 42. Затем, если вы используете шестнадцатеричное число, вы можете разбить его на 2A. В моей книге говорится:
2 = (2 * 16 = 32) А = (10 х 1 = 10) так что 32 + 10 = 42
Я совершенно потерялся. Я не понимаю, если вы начинаете справа налево, почему значения первых четырех цифр равны 2 + 8 = 10 = А. позиция, где позиция начинается справа налево. Это веса для байта
128 64 32 16 8 4 2 1
Итак, для следующего числа в двоичной системе счисления
0 0 1 0 1 0 1 0
мы получаем
32 + 8 + 2 = 42
Поделиться
Evgeniy Dorofeev
26 июля 2013 в 05:45
1
Шестнадцатеричное число: 2A
16 1
2 A =(16*2)+(10*1) //A equals 10 in decimal
В десятичной системе счисления это было бы так:
Десятичное число: 42
10 1
4 2 =(4*10)+(2*1)= 42
Поделиться
Syntax
26 июля 2013 в 05:51
1
Расчет полного комплекта. Начиная справа налево
Каждая цифра умножается на 2^n рядов справа налево
Похоже
first digit * 2^0
second digit * 2^1
Third digit * 2^2
Сумма приведенных выше результатов будет рассчитана
В простом узоре
. ..16 8 4 2 1
Так что ответ на ваш шаблон
0+0+32+0+8+0+2+0 = 42
Поделиться
Pandiyan Cool
26 июля 2013 в 05:52
- Шестнадцатеричное значение до decimal
Я должен преобразовать шестнадцатеричное число в decimal, но не знаю как. В документации AutoIt (на фото ниже) определены некоторые константы (которым присваиваются шестнадцатеричные значения).: 0x00200000 шестнадцатеричное число (подчеркнуто на изображении) равно 8192 decimal (это истинное…
- Как правильно вставить шестнадцатеричное число в C
Поэтому я знаю (после долгих запутанных поисков в google), что для правого заполнения строки можно использовать fprintf(%-10s, string) или что-то в этом роде для заполнения пробелами длиной до 10. Поэтому у меня есть два вопроса: Я знаю, что left-pad похож, но каков будет его синтаксис? (Извините,. ..
Похожие вопросы:
Случайно сгенерированное шестнадцатеричное число в C#
Как я могу сгенерировать шестнадцатеричное число random с длиной по моему выбору, используя C#?
TCL: преобразовать отрицательное целое число в шестнадцатеричное?
Я хочу преобразовать знаковое целое число в 32-битное шестнадцатеричное. Следующее прекрасно работает для положительного целого числа: format %.8x $the_decimal_value Но для отрицательного целого…
Нечетное или четное шестнадцатеричное число?
Мне нужно вычислить, является ли шестнадцатеричное число нечетным или четным как функция C. Есть ли какая-то функция, чтобы сделать это напрямую? Если нет, то есть ли в C функция для прямого…
Возьмем шестнадцатеричное число как input?
Как я могу принять шестнадцатеричное число как input? Я не имею в виду взять целое число как input и преобразовать его в шестнадцатеричное, но взять шестнадцатеричное число как input.
Обратное шестнадцатеричное число с использованием скриптов shell
Я пытаюсь обратить шестнадцатеричное число в Bash или любое другое shell. Например, Я хочу обратить шестнадцатеричное число 4BF8E , и ответ должен быть 71FD2 , то есть побитовое обращение.
Шестнадцатеричное значение до decimal
Я должен преобразовать шестнадцатеричное число в decimal, но не знаю как. В документации AutoIt (на фото ниже) определены некоторые константы (которым присваиваются шестнадцатеричные значения).:…
Как правильно вставить шестнадцатеричное число в C
Поэтому я знаю (после долгих запутанных поисков в google), что для правого заполнения строки можно использовать fprintf(%-10s, string) или что-то в этом роде для заполнения пробелами длиной до 10….
Java преобразовать строковое шестнадцатеричное число в int шестнадцатеричное число
Мне нужно выяснить , как установить шестнадцатеричное число 0xffff , которое используется для побитового AND в приведенном ниже коде динамически. int offsetData = address & 0xffff; Например мне…
Как сгенерировать 64-значное шестнадцатеричное число random в R?
Чтобы подать заявку в блокчейн-приложении, мне нужно было сгенерировать random 64-значных шестнадцатеричных чисел в R. Я думал, что из-за мощности компьютеров получить такое 64-значное…
Как я могу представить шестнадцатеричное число?
У меня есть массив из 4 шестнадцатеричных элементов, и я хочу представить эти значения в одно шестнадцатеричное число я.е: int arr[4] = {0xD4, 0x9F, 0x2E, 0x4C}; int result = 0xD49F2E4C; //The total…
Калькулятор систем счисления
Данный конвертер переводит числа между наиболее популярными системами счисления: десятичной, двоичной, восьмеричной, шестнадцатеричной.
Система счисления — это способ представления числа. Одно и то же число может быть представлено в различных видах. Например, число 200 в привычной нам десятичной системе может иметь вид 11001000 в двоичной системе, 310 в восьмеричной и C8 в шестнадцатеричной.
Существуют и другие системы счисления, но мы не стали включать их в конвертер из-за низкой популярности.
Для указания системы счисления при записи числа используется нижний индекс, который ставится после числа:
20010 = 110010002 = 3108 = C816
Кратко об основных системах счисления
Десятичная система счисления. Используется в повседневной жизни и является самой распространенной. Все числа, которые нас окружают представлены в этой системе. В каждом разряде такого числа может использоваться только одна цифра от 0 до 9.
Двоичная система счисления. Используется в вычислительной технике. Для записи числа используются цифры 0 и 1.
Восьмеричная система счисления. Также иногда применяется в цифровой технике. Для записи числа используются цифры от 0 до 7.
Шестнадцатеричная система счисления. Наиболее распространена в современных компьютерах. При помощи неё, например, указывают цвет. #FF0000 — красный цвет. Для записи числа используются цифры от 0 до 9 и буквы A,B,C,D,E,F, которые соответственно обозначают числа 10,11,12,13,14,15.
Перевод в десятичную систему счисления
Преобразовать число из любой системы счисления в десятичную можно следующим образом: каждый разряд числа необходимо умножить на Xn, где X — основание исходного числа, n — номер разряда. Затем суммировать полученные значения.
abcx = (a*x2 + b*x1 + c*x0)10
Примеры:
5678 = (5*82 + 6*81 + 7*80)10 = 37510
1102 = (1*22 + 1*21 + 0*20)10 = 610
A516 = (10*161 + 5*160)10 = 16510
Перевод из десятичной системы счисления в другие
Делим десятичное число на основание системы, в которую хотим перевести и записываем остатки от деления. Запишем полученные остатки в обратном порядке и получим искомое число.
Переведем число 37510 в восьмеричную систему:
375 / 8 = 46 (остаток 7)
46 / 8 = 5 (остаток 6)
5 / 8 = 0 (остаток 5)
Записываем остатки и получаем 5678
Перевод из двоичной системы в восьмеричную
Способ 1:
Для перевода в восьмеричную систему нужно разбить двоичное число на группы по 3 цифры справа налево. В последней (самой левой) группе вместо недостающих цифр поставить слева нули. Для каждой полученной группы произвести умножение каждого разряда на 2n, где n — номер разряда.
11012 = (001) (101) = (0*22 + 0*21 + 1*20) (1*22 + 0*21 + 1*20) = (0+0+1) (4+0+1) = (1) (5) = 158
Способ 2:
Так же как и в первом способе разбиваем число на группы. Но вместо преобразований в скобках просто заменим полученные группы (триады) на соответствующие цифры восьмеричной системы, используя таблицу триад:
Триада | 000 | 001 | 010 | 011 | 100 | 101 | 110 | 111 |
---|---|---|---|---|---|---|---|---|
Цифра | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
101110102 = (010) (111) (010) = 2728
Перевод из двоичной системы в шестнадцатеричную
Способ 1:
Разбиваем число на группы по 4 цифры справа налево. Последнюю (левую) группу дополним при необходимости ведущими нулями. Внутри каждой полученной группы произведем умножение каждой цифры на 2n, где n — номер разряда, и сложим результаты.
110102 = (0001) (1010) = (0*23 + 0*22 + 0*21 + 1*20) (1*23 + 0*22 + 1*21 + 0*20) = (0+0+0+1) (8+0+2+0) = (1) (10) = 1A16
Способ 2:
Также как и в первом способе разбиваем число на группы по 4 цифры. Заменим полученные группы (тетрады) на соответствующие цифры шестнадцатеричной системы, используя таблицу тетрад:
Тетрада | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Цифра | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
1011111002 = (0001) (0111) (1100) = 17C16
Перевод из восьмеричной системы в двоичную
Способ 1:
Каждый разряд восьмеричного числа будем делить на 2 и записывать остатки в обратном порядке, формируя группы по 3 разряда двоичного числа. Если в группе получилось меньше 3 разрядов, тогда дополняем нулями. Записываем все группы по порядку, отбрасываем ведущие нули, если имеются, и получаем двоичное число.
Возьмем число 438.
Делим последовательно 4 на 2 и получаем остатки 0,0,1. Записываем их в обратном порядке. Получаем 100.
Делим последовательно 3 на 2 и получаем остатки 1,1. Записываем их в обратном порядке и дополняем ведущими нулями до трех разрядов. Получаем 011.
Записываем вместе и получаем 1000112
Способ 2:
Используем таблицу триад:
Цифра | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
---|---|---|---|---|---|---|---|---|
Триада | 000 | 001 | 010 | 011 | 100 | 101 | 110 | 111 |
Каждую цифру исходного восьмеричного числа заменяется на соответствующие триады. Ведущие нули самой первой триады отбрасываются.
3518 = (011) (101) (001) = 0111010012 = 111010012
Перевод из шестнадцатеричной системы в двоичную
Способ 1:
Аналогично переводу из восьмеричной в двоичную, только группы по 4 разряда.
Способ 2:
Используем таблицу тетрад:
Цифра | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Тетрада | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
Каждую цифру исходного числа заменяется на соответствующие тетрады. Ведущие нули самой первой тетрады отбрасываются.
D816 = (1101) (1000) = 110110002
Перевод из восьмеричной системы в шестнадцатеричную и наоборот
Такую конвертацию можно осуществить через промежуточное десятичное или двоичное число. То есть исходное число сначала перевести в десятичное (или двоичное), и затем полученный результат перевести в конечную систему счисления.
Число шестнадцатеричное — Справочник химика 21
Ранее отмечалось, что перевод числа из двоичной системы счисления в шестнадцатеричную и наоборот не представляет трудностей. Это объясняется тем, что основания этих систем кратные, поэтому необходимо лишь заменить коды одной системы кодами другой. Переход от десятичной записи числа к двоичной или шестнадцатеричной и наоборот осуществляется сложнее. При этом необходимо считаться с тем, что конечная дробь в одной системе счисления может оказаться бесконечной или периодической в другой, что в свою очередь приведет к потере точности. Например, [c.160]
Алгоритмы перевода отличаются тем, как устанавливается соответствие между числами с различными основаниями. При переводе числа из десятичной системы в производную от двоичной системы целесообразно сначала записать его в шестнадцатеричной, а затем перейти, например, к двоичной. В этом случае потребуется выполнить меньшее количество операций. Рассматриваемые ниже алгоритмы достаточно просты, чтобы ими можнО было воспользоваться для оперативного сопоставления чисел в различных системах счисления. При решении задач на ЭВМ перевод числовой информации осуш ествляется либо по специальным программам, либо с по-мош ью команд машины. [c.161]
Для восьмибитового кода символов КОИ-8 также используется шестнадцатеричное представление- Однако в отличие от ДКОИ символы КОИ-8 записываются двумя десятичными числами. Для этого кода также используется понятие зонного формата. Таблица символов КОИ-8 (табл. 3.3) представляет собой матрицу из 16 столбцов, пронумерованных десятичными числами 00, 01, 02,. . ., 09, 10, 11, 12, 13, 14, 15 и 16 строк, пронумерованных числами 0,1,. . ., 15. [c.163]
Адресом загрузки фазы с именем КВВ является адрес первого двойного слова после конца предыдущей фазы (или адрес начала соответствующего раздела, как в первом примере), увеличенный на 3 Кбайт (К = 1024 байт). Смещение, равное 3 Кбайта, может быть задано со знаком + или — . Оно может задаваться также шестнадцатеричным числом длиной от одного до шести знаков (например, Х 5700 ) или десятичным числом длиной от одного до восьми знаков. [c.217]
Двоичные данные с плавающей точкой в памяти представляются как нормализованные шестнадцатеричные числа с плавающей точкой. Если объявляемая разрядность меньше 21, то они занимают слово, а если больше 21 — то двойное слово. Их значения находятся в диапазоне от 2 до 2+ » . [c.247]
Шестнадцатеричная константа записывается как шестнадцатеричное число, перед которым стоит буква X. При этом один байт памяти содержит две шестнадцатеричные цифры. Если количество цифр в константе нечетное, то слева добавляется нуль до заполнения байта. [c.342]
При передаче шестнадцатеричных данных по формату Zw усечение и добавление пробелов при несоответствии количества позиций числа и позиций w поля производится слева. [c.397]
Отметим, что очень компактное представление числа можно получить при помощи шестнадцатеричной системы счисления. Шестнадцатеричные числа можно легко преобразовать в двоичные (подробности здесь не рассматриваются). [c.571]
Например, шестнадцатеричное число 1 3 0 9 переводится в десятичную систему следующим образом [c.10]
Перевести в десятичную систему счисления целые шестнадцатеричные числа [c.11]
Арифметические действия над числами, представленными в форме с фиксированной запятой, в двоичной, восьмеричной и шестнадцатеричной системах счисления [c. 12]
Выполнить операцию вычитания над шестнадцатеричными числами [c.18]
Перевести в шестнадцатеричную систему счисления целые двоичные числа [c.22]
Представить в форме с плавающей запятой шестнадцатеричные числа [c.24]
Нормализовать шестнадцатеричные числа [c.25]
Преобразовать шестнадцатеричные числа из нормальной формы в форму с фиксированной запятой [c.26]
Выполнить операцию сложения шестнадцатеричными числами [c.30]
Выполнить операцию вычитания над нормализованными шестнадцатеричными числами [c.30]
Сдвиг осуществляется на Ь разрядов. Число Ь в адресной части команды за писывается как двузначное шестнадцатеричное число, целое без знака. [c.52]
Команды при записи их на бланках представляются шестнадцатеричными числами, причем код операции — двузначным числом, а адрес — четырехзначным числом. Порядок выполнения команд естественный. Фрагмент системы команд этой машины приведен в табл. 9.11. [c.58]
Печатание результатов производится с помощью стандартного рулонного телетайпа со скоростью одно число в 2,5 сек. Выводимые результаты печатаются в виде таблиц 8-значных чисел в десятичной или шестнадцатеричной системах счисления. Печать таблиц осуществляется в три или четыре столбца в зависимости от положения специального тумблера на печатающем устройстве. Каждое десятичное число печатается в следующем порядке знак числа, семь цифр числа, пробел, восьмая цифра (порядок), знак порядка. [c.320]
Как уже отмечалось, для перехода от двоичной записи числа к шестнадцатеричной необходимо в двоичном коде выделить группы по четыре двоичных цифры и заменить их соответствующими шестнадцатеричными цифрами. При этом для целой части числа выделение групп производится справа палево от запятой, а для дробной — слева направо. Неполные тетрады дополняются нуля- [c. 159]
Мантисса числа не превышает единицы. Считается, что число нормализовано, если старшая шестнадцатеричная цифра мантиссы отлична от нуля, т. е. 1/16 Л получения истинного значения числа мантиссу необходимо умножить на 16 в степени порядка. Однако для более точного представления как больших, так и малых по абсолютной величине чисел к действительной величине порядка добавляется число 64. Полученный таким образом порядок носит название характеристики. Значит, чтобы получить истинное значение числа, необходимо мантиссу умножить на 16 в степени характеристика минус 64. ДианаЕО-ном значений порядка в этом случае являются числа от —64 до -1- 63 (характеристики соответственно от О до 127), диапазон десятичных чисел — от 10 до 10 . Следовательно, характеристика, отсчитываемая относительно числа 64, всегда положительная. Знак порядка нет необходимости учитывать. [c.176]
Мантисса короткого числа состоит из шести шестнадцатеричных цифр и обеснечивает точность семи десятичных цифр. Мантисса длинного числа содержит 14 шестнадцатеричных цифр и дает точность в 17 десятичных цифр. [c.177]
Адресом загрузки фазы с именем КВВ будет адрес раздела переднего плана, равный 2000. Он может задаваться в виде пКбайт шестнадцатеричным числом длиной от четырех до шести знаков или десятичным числом длиной от пяти до восьми знаков. [c.217]
В шестнадцатеричной системе счисления в качестве цифр можно использовать символы О, 1, 2, 3, 4, 5, 6, 7, 8, 9, О, 1, 2, 3, 4, 5, означающие соответственно числа от нуля до пятнадцати, а в качестве основания — последовательность символов 16, означающую число шестнадцать. [c.10]
Шестнадцатеричная система счисления
Для написания программ на Ассемблере,
необходимо разобраться с шестнадцатеричной системой счисления. Ничего сложного
в ней нет. Мы используем в жизни десятичную систему. Уверен, что Вы все ее
знаете, поэтому я постараюсь объяснить шестнадцатеричную систему, проводя
аналогию с десятичной.
Итак, в десятичной системе если мы к
какому-нибудь числу справа добавим нуль, то это число увеличится в 10 раз.
Например: 1 х 10 = 10; 10 х 10 = 100; 100 х 10 = 1000 и т.д. В этой системе мы
используем цифры от 0 до 9, т.е. десять разных цифр (собственно, поэтому она и
называется десятичная).
В шестнадцатеричной системе мы используем,
соответственно, шестнадцать «цифр». Я специально написал слово
«цифр» в кавычках, т.к. в ней используются не только цифры. Да и в
самом деле как так? Объясняю: от 0 до 9 мы считаем так же, как и в десятичной,
а вот дальше будет так: A, B, C, D, E, F. Число F, как не трудно посчитать,
будет равно 15 в десятичной системе (см. Таблицу 1).
Таблица 1. Десятичная и шестнадцатеричная
системы счисления.
Десятичное число
|
0 1 2 3 4 … 8 9 10 11 12
|
Шестнадцатеричное число
|
0 1 2 3 4 . .. 8 9 A B C D E
|
Десятичное число
|
26 27 28 29 30 … 158 159
|
Шестнадцатеричное число
|
1A 1B 1C 1D 1E … 9E 9F A0
|
Т.о., если мы к какому-нибудь числу в
шестнадцатеричной системе добавим справа нуль, то это число увеличится в 16
раз.
Пример 1
- 1 х 16 = 10;
- 10 х 16 = 100;
- 100 х 16 = 1000 и т.д.
Вы смогли отличить в Примере 1
шестнадцатеричные числа от десятичных? А из этого ряда: 10, 12, 45, 64, 12, 8,
19? Это могут быть как шестнадцатеричные, так и десятичные. Для того, чтобы не
было путаницы, и компьютер смог бы однозначно отличить одни числа от других, в
Ассемблере принято после шестнадцатеричного числа ставить символ h или H (H -
это сокращение от англ. hexadecimal (шестнадцатеричное). Для краткости его
иногда называют просто Hex). А после десятичного ничего не ставить. Т.к. числа
от 0 до 9 в обоих системах имеют одинаковые значения, то числа, записанные как
5 и 5h одно и тоже.
Т.о. Пример 1 (см. выше) правильнее
записать шестнадцатеричные числа будет так:
- 1 х 16 = 10h;
- 10h х 16 = 100h;
- 100h х 16 = 1000h и т.д.
Либо так:
- 1h х 10h = 10h;
- 10h х 10h = 100h;
- 100h х 10h = 1000h
Для чего нужна шестнадцатеричная система — мы
рассмотрим в последующих главах. А в данный момент для нашего примера
программы, который будет рассмотрен ниже, нам необходимо знать о существовании
шестнадцатеричных чисел.
Итак, подведем итог. Шестнадцатеричная
система счисления состоит из 10 цифр (от 0 до 9) и 6 букв латинского алфавита
(A, B, C, D, E, F). Если к какому-нибудь числу в шестнадцатеричной системе
добавим справа нуль, то это число увеличится в 16 раз. Очень важно уяснить
данную тему, так как мы будем постоянно использовать ее при написании программ.
Теперь немного о том, как я буду строить
примеры на Ассемблере. Не совсем удобно приводить их сплошным текстом в книге,
поэтому сперва будет идти сам код программы с пронумерованными строками, а
сразу же после него — объяснения и примечания.
Примерно так:
(01)mov ah,9
(02)mov al,8
…
(15)mov dl,5Ah
Шестнадцатеричная система счисления
Содержание:
Что такое шестнадцатеричная система счисления
Как перевести целое десятичное число в шестнадцатеричную систему счисления
Как перевести десятичную дробь в шестнадцатеричную систему счисления
Как перевести число из шестнадцатеричной системы счисления в десятичную
Как перевести дробное шестнадцатеричное число в десятичное
Таблица значений десятичных чисел от 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 в десятичную систему счисления:
Позиция в числе | 4 | 3 | 2 | 1 | 0 |
Число | A | F | 2 | D | 6 |
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 в десятичное:
Позиция в числе | 1 | 0 | -1 | -2 |
Число | 6 | 9 | F | 3 |
F16 = 1510
69.F316 = 6 ⋅ 161 + 9 ⋅ 160 + 15 ⋅ 16-1 + 3 ⋅ 16-2 = 105.9492187510
Таблица значений десятичных чисел от 0 до 100 в шестнадцатеричной системе счисления
Значение числа в десятичной системе счисления | Значение числа в шестнадцатеричной системе счисления |
010 | 016 |
110 | 116 |
210 | 216 |
310 | 316 |
410 | 416 |
510 | 516 |
610 | 616 |
710 | 716 |
810 | 816 |
910 | 916 |
1010 | A16 |
1110 | B16 |
1210 | C16 |
1310 | D16 |
1410 | E16 |
1510 | F16 |
1610 | 1016 |
1710 | 1116 |
1810 | 1216 |
1910 | 1316 |
2010 | 1416 |
2110 | 1516 |
2210 | 1616 |
2310 | 1716 |
2410 | 1816 |
2510 | 1916 |
2610 | 1A16 |
2710 | 1B16 |
2810 | 1C16 |
2910 | 1D16 |
3010 | 1E16 |
3110 | 1F16 |
3210 | 2016 |
3310 | 2116 |
3410 | 2216 |
3510 | 2316 |
3610 | 2416 |
3710 | 2516 |
3810 | 2616 |
3910 | 2716 |
4010 | 2816 |
4110 | 2916 |
4210 | 2A16 |
4310 | 2B16 |
4410 | 2C16 |
4510 | 2D16 |
4610 | 2E16 |
4710 | 2F16 |
4810 | 3016 |
4910 | 3116 |
5010 | 3216 |
Значение числа в десятичной системе счисления | Значение числа в шестнадцатеричной системе счисления |
5110 | 3316 |
5210 | 3416 |
5310 | 3516 |
5410 | 3616 |
5510 | 3716 |
5610 | 3816 |
5710 | 3916 |
5810 | 3A16 |
5910 | 3B16 |
6010 | 3C16 |
6110 | 3D16 |
6210 | 3E16 |
6310 | 3F16 |
6410 | 4016 |
6510 | 4116 |
6610 | 4216 |
6710 | 4316 |
6810 | 4416 |
6910 | 4516 |
7010 | 4616 |
7110 | 4716 |
7210 | 4816 |
7310 | 4916 |
7410 | 4A16 |
7510 | 4B16 |
7610 | 4C16 |
7710 | 4D16 |
7810 | 4E16 |
7910 | 4F16 |
8010 | 5016 |
8110 | 5116 |
8210 | 5216 |
8310 | 5316 |
8410 | 5416 |
8510 | 5516 |
8610 | 5616 |
8710 | 5716 |
8810 | 5816 |
8910 | 5916 |
9010 | 5A16 |
9110 | 5B16 |
9210 | 5C16 |
9310 | 5D16 |
9410 | 5E16 |
9510 | 5F16 |
9610 | 6016 |
9710 | 6116 |
9810 | 6216 |
9910 | 6316 |
10010 | 6416 |
в шестнадцатеричной системе счисления
Шестнадцатеричное число основано на числе
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 в десятичной системе счисления
(Протестируйте его в преобразователе двоично-десятичного в шестнадцатеричный.)
The Point!
Пример: 2E6.A3
Это 2 × 16 × 16 + 14 × 16 + 6 + 10/16 + 3 / (16 × 16)
= 742,63671875 в десятичном формате
Прочтите ниже, чтобы узнать, почему
Цифры можно размещать слева
или справа от точки, чтобы отображать значения больше единицы
или меньше единицы:
Число слева от точки целое число. По мере продвижения влево каждое числовое место будет 16 | |
Первая цифра справа от точки означает шестнадцатых. (1/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 : «десятая часть» ).
Конвертер шестнадцатеричного числа в десятичное
Из
Двоичный Десятичный Шестнадцатеричный
К
Двоичный Десятичный Шестнадцатеричный
= Конвертировать
× Сброс
Менять
Десятичная дробь от дополнения до 2 со знаком
Шаги десятичных вычислений
Конвертер десятичных чисел в шестнадцатеричные ►
Как преобразовать из шестнадцатеричного в десятичное
Обычное десятичное число — это сумма цифр, умноженная на степень 10.
137 по основанию 10 равно каждой цифре, умноженной на соответствующую степень 10:
137 10 = 1 × 10 2 + 3 × 10 1 + 7 × 10 0 = 100 + 30 + 7
Шестнадцатеричные числа читаются так же, но каждая цифра учитывает степень 16 вместо степени 10.
Для шестнадцатеричного числа с n цифрами:
d n-1 … d 3 d 2 d 1 d 0
Умножьте каждую цифру шестнадцатеричного числа на соответствующую степень 16 и сумму:
десятичное = d n-1 × 16 n-1 + … + d 3 × 16 3 + d 2 × 16 2 + d 1 × 16 1 + д 0 × 16 0
Пример # 1
3B по основанию 16 равно каждой цифре, умноженной на соответствующие 16 n :
3B 16 = 3 × 16 1 + 11 × 16 0 = 48 + 11 = 59 10
Пример # 2
E7A9 в базе 16 равно каждой цифре, умноженной на соответствующие 16 n :
E7A9 16 = 14 × 16 3 + 7 × 16 2 + 10 × 16 1 + 9 × 16 0 = 57344 + 1792 + 160 + 9 = 59305 10
Пример # 3
0. 8 по основанию 16:
0,8 16 = 0 × 16 0 + 8 × 16 -1
= 0 + 0,5 = 0,5 10
Таблица преобразования шестнадцатеричных чисел в десятичные
Шестигранник основание 16 | Десятичное число основание 10 | Расчет |
---|---|---|
0 | 0 | – |
1 | 1 | – |
2 | 2 | – |
3 | 3 | – |
4 | 4 | – |
5 | 5 | – |
6 | 6 | – |
7 | 7 | – |
8 | 8 | – |
9 | 9 | – |
А | 10 | – |
B | 11 | – |
С | 12 | – |
D | 13 | – |
E | 14 | – |
F | 15 | – |
10 | 16 | 1 × 16 1 + 0 × 16 0 = 16 |
11 | 17 | 1 × 16 1 + 1 × 16 0 = 17 |
12 | 18 | 1 × 16 1 + 2 × 16 0 = 18 |
13 | 19 | 1 × 16 1 + 3 × 16 0 = 19 |
14 | 20 | 1 × 16 1 + 4 × 16 0 = 20 |
15 | 21 | 1 × 16 1 + 5 × 16 0 = 21 |
16 | 22 | 1 × 16 1 + 6 × 16 0 = 22 |
17 | 23 | 1 × 16 1 + 7 × 16 0 = 23 |
18 | 24 | 1 × 16 1 + 8 × 16 0 = 24 |
19 | 25 | 1 × 16 1 + 9 × 16 0 = 25 |
1A | 26 | 1 × 16 1 + 10 × 16 0 = 26 |
1Б | 27 | 1 × 16 1 + 11 × 16 0 = 27 |
1С | 28 | 1 × 16 1 + 12 × 16 0 = 28 |
1D | 29 | 1 × 16 1 + 13 × 16 0 = 29 |
1E | 30 | 1 × 16 1 + 14 × 16 0 = 30 |
1 этаж | 31 | 1 × 16 1 + 15 × 16 0 = 31 |
20 | 32 | 2 × 16 1 + 0 × 16 0 = 32 |
30 | 48 | 3 × 16 1 + 0 × 16 0 = 48 |
40 | 64 | 4 × 16 1 + 0 × 16 0 = 64 |
50 | 80 | 5 × 16 1 + 0 × 16 0 = 80 |
60 | 96 | 6 × 16 1 + 0 × 16 0 = 96 |
70 | 112 | 7 × 16 1 + 0 × 16 0 = 112 |
80 | 128 | 8 × 16 1 + 0 × 16 0 = 128 |
90 | 144 | 9 × 16 1 + 0 × 16 0 = 144 |
A0 | 160 | 10 × 16 1 + 0 × 16 0 = 160 |
B0 | 176 | 11 × 16 1 + 0 × 16 0 = 176 |
C0 | 192 | 12 × 16 1 + 0 × 16 0 = 192 |
D0 | 208 | 13 × 16 1 + 0 × 16 0 = 208 |
E0 | 224 | 14 × 16 1 + 0 × 16 0 = 224 |
F0 | 240 | 15 × 16 1 + 0 × 16 0 = 240 |
100 | 256 | 1 × 16 2 + 0 × 16 1 + 0 × 16 0 = 256 |
200 | 512 | 2 × 16 2 + 0 × 16 1 + 0 × 16 0 = 512 |
300 | 768 | 3 × 16 2 + 0 × 16 1 + 0 × 16 0 = 768 |
400 | 1024 | 4 × 16 2 + 0 × 16 1 + 0 × 16 0 = 1024 |
Конвертер десятичных чисел в шестнадцатеричные ►
См.
Также
Что такое шестнадцатеричный? — Определение от 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, а не по основанию 10, которые мы используем для повседневной арифметики и счета.
На практике это означает, что каждый столбец числа, записанного в шестнадцатеричном формате, может представлять до 16 значений.
Цифры в шестнадцатеричном формате используют стандартные символы 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9 для представления соответствующего значения и используют первые шесть букв алфавита для представления значений от 10 до 15 (НАПР .: 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 ()
для добавления альфа-значения к вашим цветам.
Шестнадцатеричный калькулятор
Шестнадцатеричное вычисление — сложение, вычитание, умножение или деление
Преобразовать шестнадцатеричное значение в десятичное
Преобразовать десятичное значение в шестнадцатеричное
Связанный двоичный калькулятор | Калькулятор IP-подсети
Шестнадцатеричная система счисления (шестнадцатеричная) практически идентична десятичной и двоичной. Вместо использования основания 10 или 2 соответственно, он использует базу 16. В шестнадцатеричном формате используются 16 цифр, включая 0-9, как и в десятичной системе, но также используются буквы A, B, C, D, E и F (эквивалент a, b, c, d, e, f) для обозначения чисел 10-15.Каждая шестнадцатеричная цифра представляет 4 двоичных числа, называемых полубайтами, что упрощает представление больших двоичных чисел. Например, двоичное значение 1010101010 может быть представлено как 2AA в шестнадцатеричном формате. Это помогает компьютерам сжимать большие двоичные значения таким образом, чтобы их можно было легко преобразовать между двумя системами.
Ниже приведены некоторые типичные преобразования шестнадцатеричных, двоичных и десятичных значений:
Шестнадцатеричное / десятичное преобразование
Шестнадцатеричный | Двоичный | Десятичный |
0 | 0 | 0 |
1 | 1 | 1 |
2 | 10 | 2 |
3 | 11 | 3 |
4 | 100 | 4 |
5 | 101 | 5 |
6 | 110 | 6 |
7 | 111 | 7 |
8 | 1000 | 8 |
9 | 1001 | 9 |
A | 1010 | 10 |
B | 1011 | 11 |
C | 1100 | 12 |
D | 1101 | 13 |
E | 1110 | 14 |
F | 1111 | 15 |
14 | 10100 | 20 |
3F | 111111 | 63 |
Преобразование десятичных и шестнадцатеричных чисел требует понимания значений разрядов в различных системах счисления. .Более подробное обсуждение доступно на странице двоичного калькулятора. Обратите внимание, что преобразование между десятичным и шестнадцатеричным числами очень похоже на преобразование между десятичным и двоичным числами. Возможность выполнить преобразование одного из них должно сделать другое относительно простым. Как упоминалось ранее, шестнадцатеричные функции используют основание 16. Это означает, что для значения 2AA каждое разрядное значение представляет степень 16. Начиная справа, первая буква «A» представляет разряд «единиц», или 16 0 . Вторая буква «A» справа представляет 16 1 , а 2 представляет 16 2 .Помните, что «A» в шестнадцатеричном формате эквивалентно 10 в десятичном. Зная эту информацию, можно преобразовать шестнадцатеричное в десятичное, как показано ниже:
EX: | 2AA = (2 × 16 2 ) + (A × 16 1 ) + (A × 16 0 ) |
= (2 × 256) + (10 × 16) + (10 × 1) | |
= 512 + 160 + 10 = 682 |
Преобразование из десятичного числа в шестнадцатеричное немного сложнее, но использует те же концепции. См. Шаги и пример ниже. Для понимания процесса важно проработать приведенный пример в сочетании с перечисленными шагами:
- Найдите наибольшую степень числа 16, которая меньше или равна числу, которое нужно преобразовать, которое будет обозначаться как X.
- Определите, сколько раз степень 16, найденная на шаге 1, переходит в X, и запишите это число.
- Умножьте число, полученное на шаге 2, на степень 16 и вычтите это значение из X.Это новое значение будет называться Y.
- Обратите внимание, что число, найденное на шаге 2, будет значением, записанным в разряде для найденной степени 16. Если, например, наибольшая степень числа 16 оказалась равной 16 4 , а число на шаге 2 оказалось равным 3, шестнадцатеричное значение будет иметь число 3 в своем значении разряда 16 4 : 3qrst, где qrst представляет значения от 16 0 до 3 .
- Повторите шаги 1-3, используя Y в качестве нового начального значения. Продолжайте процесс до тех пор, пока 16 не станет больше, чем оставшееся значение, и присвойте остаток значению разряда 16 0 .
- Присвойте каждому из значений, найденных на каждой итерации шага 2, его соответствующее разрядное значение, чтобы определить шестнадцатеричное значение.
EX: | Преобразовать десятичное 1500 в шестнадцатеричное | |
(1) | Наибольшая степень = 16 2 = 256 | |
(2) | 256 × 5 = 1280, так (5 × 16 2 ) | |
(3) | 1500 — 1280 = 220 | |
(4) | 16 × 13 = 208, так (13 × 16 1 ) | |
(5) | 220 — 208 = 12 | |
(6) | 16 больше 12, поэтому 12 — это значение в 16 0 разрядное значение | |
(7) | 1500 = (5 × 16 2 ) + (13 × 16 1 ) + (12 × 16 0 ) | |
(8) | Помните, что 10 -15 имеют буквенные цифры В шестнадцатеричном формате: 13 = D и 12 = C | |
(9) | То есть re шестнадцатеричное значение 1500: 5DC |
Преобразование из шестнадцатеричного в десятичное использует те же принципы, но, возможно, проще. Умножьте каждую цифру в шестнадцатеричном значении на соответствующее ей разрядное значение и найдите сумму каждого результата. Процесс одинаков, независимо от того, содержит ли шестнадцатеричное значение буквенные цифры или нет.
EX: | Преобразование шестнадцатеричного 1024 в десятичное | |
(1) | (1 × 16 3 ) + (0 × 16 2 ) + (2 × 16 1 ) + (4 × 16 0 ) | |
(2) | 4096 + 0 + 32 + 4 = 4132 |
Шестнадцатеричное сложение
Шестнадцатеричное сложение подчиняется тем же правилам, что и десятичное, с той лишь разницей, что добавляются цифры A, B, C, D, E и F.Может быть удобно иметь десятичные эквивалентные значения от A до F при выполнении шестнадцатеричных операций, если значения еще не сохранены в памяти. Ниже приведен пример шестнадцатеричного сложения. Проработайте пример и обратитесь к тексту под ним для получения дополнительных сведений.
БЫВШИЙ:
1 8 | 1 A | B | ||
+ | B | 7 | 8 | |
= | 117 | 2 | 3 |
Шестнадцатеричное сложение включает вычисление базового десятичного сложения при преобразовании между шестнадцатеричным и десятичным числами, когда присутствуют значения больше 9 (цифры от A до F).В приведенном выше примере B + 8 в десятичной системе счисления составляет 11 + 8 = 19. 19 в десятичной системе счисления равно 13 в шестнадцатеричной системе счисления , так как имеется 1 набор из 16, с оставшимися 3. Как и в случае с десятичным сложением, 1 переносится в следующий столбец. Следовательно, следующий столбец выглядит так: 1 + A (10) + 7 = 18 в десятичной системе счисления или 12 в шестнадцатеричной системе счисления . Перенесите 1 в последний столбец, получив 1 + 8 + B (11) = 20 в десятичной системе счисления или 14 в шестнадцатеричной системе счисления . Это дает результат 1423 шестнадцатеричный .
Шестнадцатеричное вычитание
Шестнадцатеричное вычитание можно вычислить почти так же, как шестнадцатеричное сложение; путем выполнения операции при преобразовании между шестнадцатеричным и десятичным значениями.Наиболее существенная разница между шестнадцатеричным и десятичным вычитанием заключается в заимствовании. При заимствовании в шестнадцатеричном формате заимствованная «1» представляет 16 в десятичной системе счисления , а не 10 в десятичной системе счисления . Это связано с тем, что столбец, из которого заимствуется, в 16 раз больше, чем столбец заимствования (по той же причине, что заимствованная 1 в десятичном представлении представляет 10). Если это отмечено и преобразование буквенных цифр A-F выполняется осторожно, шестнадцатеричное вычитание не сложнее десятичного вычитания.Проработайте пример и обратитесь к тексту под ним для получения дополнительных сведений.
БЫВШИЙ:
5 | D | 1 C | ||
— | 3 | A | F | |
= | 2 | 2 |
В первом столбце справа в приведенном выше примере C или 12 в десятичной системе счисления меньше F или 15 в десятичной системе счисления .Таким образом, необходимо заимствовать из следующего столбца. Это уменьшает D до C и предоставляет 1 или 16 десятичных чисел в первый столбец. 16 десятичное + 12 десятичное -15 десятичное = 13 десятичное , или D в первом столбце. Следующие столбцы не требуют заимствования, что упрощает вычисления. Поскольку 1 была заимствована, C — A = 12 в десятичной системе счисления — 10 в десятичной системе счисления = 2 и 5-3 = 2, что дает окончательный результат 22D. В случае, когда вычитаемое число больше, чем вычитаемое, просто измените позиции чисел, вычислите вычитание и добавьте к результату знак минус.Если бы в приведенном выше примере вместо 3AF — 5DC, он был бы записан как есть, за исключением того, что решение было бы -22D.
Шестнадцатеричное умножение
Шестнадцатеричное умножение может быть сложным, потому что преобразование между шестнадцатеричным и десятичным числом при выполнении операций требует больше усилий, поскольку числа имеют тенденцию быть больше. Может оказаться полезным наличие шестнадцатеричной таблицы умножения (она приведена ниже). В противном случае для каждого шага потребуется ручное преобразование между десятичной и шестнадцатеричной числами.Ниже приведен пример умножения шестнадцатеричного числа. Справа от примера показаны шаги умножения и сложения. Обратите внимание, что все используемые цифры шестнадцатеричные. При необходимости обратитесь к разделу «Дополнения».
БЫВШИЙ:
F | A | 3 × A = 1E; 1 перенесено в F | |||
× | C | 3 | 3 × F = 2D, + 1 = 2E | ||
2 | E | E | C × A = 78; 7 перенесено в F | ||
+ | B | B | 8 | 0 | C × F = B4, + 7 = BB |
= | B | E | 6 | E |
Hex Division
Полное деление в шестнадцатеричном формате идентично полному делению в десятичном, за исключением того, что умножение и вычитание происходят в шестнадцатеричном формате.Также возможно преобразовать в десятичную форму и выполнить длинное деление в десятичной системе счисления, а затем преобразовать обратно после завершения. В иллюстративных целях пример деления будет полностью рассчитан в шестнадцатеричном формате. Как и в случае с умножением, при проведении шестнадцатеричного деления было бы удобно иметь шестнадцатеричную таблицу умножения (одна приведена ниже). Ниже приведен пример. Обратите внимание, что все цифры в примере шестнадцатеричные. Хотя в приведенном ниже примере заимствования не происходит, помните, что заимствование в шестнадцатеричном формате приводит к заимствованию 16 десятичных чисел , а не 10 десятичных чисел .Обратитесь к разделу вычитания шестнадцатеричных чисел для получения дополнительной информации.
Шестнадцатеричная таблица умножения
Двоичные, восьмеричные и шестнадцатеричные числа
Динарный (базовый 10) | Шестнадцатеричный (базовый 16) | Восьмеричный (базовый 8) | Двоичный (базовый 2) | |
---|---|---|---|---|
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | 0 1 2 3 4 5 6 7 8 8 A | 000 001 002 003 004 005 006 007 010 011 012 013 014 012 013 014 000011 0115 00 015 | ||
10 11 12 13 14 15 16 17 18 19 1A 1B 1D 1E 1F | 020 021 022 023 024 025 026 027 030 031 032 033 034 035 03617 000100000 000100115 0115 035 036 00010101 00010110 00010111 00011000 00011001 00011010 00011011 00011100 00011101 00011110 00011111 | |||
32 33 345 9011 9011 35115 9011 5 44 45 46 47 | 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F | 00100000 00100100101 0010010010 00101000 | ||
48 49 50 51 52 53 54 55 9011 5 | 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F | 060 061 065 065 063 064 | 00110000 00110001 00110010 00110011 00110100 00110101 00110 110 00110111 00111000 00111001 00111010 00111011 00111100 00111101 00111110 00111111 | |
64 65 66 67 68 9011 9011 9011 75 78 79 | 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F | 100 101 102 103 | 01000000 01000001 01000010 01000011 01000100 01000101 01000110 0100011100 01001110 | |
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 | 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F | 120 120115 5F | 120 122115 123 124 125 126 127 130 131 132 133 134 135 136 137 | 01010000 01010001 01010010 01010011 010110100 01010115 010101011 0115 0101101 010101011 0115 01011100 01011101 01011110 01011111 |
96 97 98 99 100 101 102 103 104 105 106 107 108 109 60115 107 63 | 140 141 142 143 144 145 146 147 150 151 152 153 154 155 156 157 | 01100000 01100001 01100010 01100011 01100100 01100101 01100110 01100111 01101000 01101001 01101010 01101011 01101100 01101101 01101110 01101111 | ||
112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 | 70 71 72 72 75 76 77 78 79 7A 7B 7C 7D 7E 7F | 160 161 162 163 164 165 166 167 17115 17115 175 | 01110000 01110001 01110010 01110011 01110100 01110101 01110110 01110111 01111000 90 115 01111001 01111010 01111011 01111100 01111101 01111110 01111111 | |
128 129 130 131 132 133 134 137 1403 1415136138118 | 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F | 200 201 202 203 204 203 204 210 | 10000000 10000001 10000010 10000011 10000100 10000101 10000110 10000111 10001000 10001011 10000111 10001000 10001011 10001000 | |
144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 | 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E 9F | 220115 9E 9F | 220115 224 225 226 227 230 231 232 233 234 235 236 237 | 10010000 10010001 10010010 10010011 10010001 10010010 10010011 10010100 10010101 10011510011 100115 10011101 10011110 10011111 |
160 161 162 163 164 165 166 167 168 169 170 171 172 173 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF | 240 241 242 243 244 245 246 247 250 251 252 253 254 255 256 257 | 10100000 10100001 10100010 10100011 10100100 10100101 15 101001011 101001011 101001011 15 101001011 10100101 15 101001011 10101110 | ||
176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 | 260 261 262 263 264 265 266 267 275 275 275 267 275 275 276 277 | 10110000 10110001 10110010 10110011 10110100 10110101 10110110 10110111 10111000 90 115 10111001 10111010 10111011 10111100 10111101 10111110 10111111 | ||
192 193 194 195 196 197 198 199 203 203 203 | C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF | 300 301 302 303 9011 301 302 303 302 302 | 11000000 11000001 11000010 11000011 11000100 11000101 11000110 11000111 11001000 11001001 11001010 11001011 11001100 11001101 11001110 11001111 | |
208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 | D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE 3205 DF | 324 325 326 327 330 331 332 333 334 335 336 337 | 11010000 11010001 11010010 11010011 11010001 11010010 11010011 11010100 110101010 110115 110115 110115 110115 110115 110115 110115 110115 110115 11011101 11011110 11011111 | |
224 225 226 227 228 229 230 231 232 233 234 235 236 237 E4 | 340 341 342 343 344 345 346 347 350 351 352 353 354 355 356 357 | 11100000 11100001 11100010 11100011 11100100 11100101 15 11100115 11100115 11101110 11101111 | ||
240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 F5 | 360 361 362 363 364 365 366 367 9011 370115 366 367 9011 370115 375 376 377 | 11110000 11110001 11110010 11110011 11110100 11110101 11110110 11110111 11111000 90 115 11111001 11111010 11111011 11111100 11111101 11111110 11111111 |
- Denary — Денарная система счисления (десятичная) представляет собой систему счисления с основанием 10, используемую людьми с
- Шестнадцатеричная система счисления — шестнадцатеричная система счисления (Hex) — это система счисления с основанием 16, в которой используются цифры от 0 до 9 и буквы A. — F
- Двоичная — Двоичная система счисления (Bin) — это система счисления с основанием 2, использующая число 1 и 0
уникальными цифрами Восьмеричная система счисления — восьмеричная система счисления (Oct) — это система счисления с основанием 8, в которой используются цифры от 0 до 7
Преобразование двоичного числа в десятичное
Десятичная система счисления имеет основание 10.
Динарное (десятичное) число может быть выражено как
10,5
= 1 x 10 1 + 0 x 10 0 + 5 x 10 -1
В двоичной системе счисления основание системы счисления 2.
Двоичное число может быть выражено как
1011,1
= 1 x 2 3 + 0 x 2 2 + 1 x 2 1 + 1 x 2 0 + 1 x 2 -1
= 8 + 0 + 1 + 1 + 1/2
= 10.5
Различие двоичных и денарных чисел может быть указано как
1011,1 2 = 10,5 10
Преобразование шестнадцатеричного числа в десятичное
Шестнадцатеричная система счисления имеет основание 16 и использует следующие 16 различные цифры
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E и F
‘A’ соответствует 10 в денарной системе, От B до 11, C до 12 …
Шестнадцатеричное число может быть выражено как
1BC
= 1 x 16 2 + C x 16 1 + F x 16 0
= 1 x 16 2 + 12 x 16 1 + 15 x 16 0
= 256 + 192 + 15
= 463
Конвертер из десятичного в шестнадцатеричный
— w3res
Десятичное число:
[Введите десятичное число, например 150, в следующее поле и нажмите кнопку «Преобразовать».]
Шестнадцатеричное число:
Преобразование: десятичное в шестнадцатеричное
Десятичная система счисления:
Десятичная система счисления (также называемая основанием десяти и иногда называемая денаром) имеет основу десять, которая в десятичной системе счисления записывается как 10, как и основание в любой позиционной системе счисления. Это числовая база, наиболее широко используемая современными цивилизациями
.
Шестнадцатеричная система счисления:
В математике и вычислительной технике шестнадцатеричная система (также основание 16 или шестнадцатеричное) — это позиционная система счисления с основанием 16.Он использует шестнадцать различных символов, чаще всего символы 0–9 для представления значений от нуля до девяти и A, B, C, D, E, F (или, альтернативно, a, b, c, d, e, f) для представления значений. без десяти пятнадцать.
Таблица преобразования десятичных чисел в шестнадцатеричные
Десятичное число Число | Hex Число |
---|---|
0 | 0 |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
8 | 8 |
9 | 9 |
10 | А |
11 | B |
12 | С |
13 | D |
14 | E |
15 | F |
16 | 10 |
17 | 11 |
18 | 12 |
19 | 13 |
20 | 14 |
21 | 15 |
22 | 16 |
23 | 17 |
24 | 18 |
25 | 19 |
26 | 1A |
27 | 1Б |
28 | 1С |
29 | 1D |
30 | 1E |
31 | 1 этаж |
32 | 20 |
64 | 40 |
128 | 80 |
256 | 100 |
Предыдущая: Преобразовать десятичную в двоичную
Следующая:
Преобразовать десятичное число в восьмеричное
.