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

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

Решение получаем через калькулятор. Переводим целую часть числа ( 56 ).

Целая часть от деления Остаток от деления
56 div 16 = 3 56 mod 16 = 8 (56 — 3 *16)
3 div 16 = 0 3 mod 16 = 3
0 div 16 = 0 0 mod 16 = 0

Остаток от деления записываем в обратном порядке. Получаем число в 16-ой системе счисления: 038
56 = 03816

Для перевода дробной части числа последовательно умножаем дробную часть на основание 16. В результате каждый раз записываем целую часть произведения.
0.567*16 = 9.072 (целая часть 9 )
0.072*16 = 1.152 (целая часть 1 )
0.152*16 = 2.432 (целая часть 2 )
0.432*16 = 6.912 (целая часть 6 )
Получаем число в 16-ой системе счисления: 9126
0.567 = 912616

Таким образом, число 56,567 в шестнадцатеричной системе счисления записывается как 38,9126.

Пример 2 . Перевести число 0101110,011 в шестнадцатеричное представление.
Переводим целую часть числа. Для этого разделим исходный код на группы по 4 разряда.
01011102 = 0010 1110 2
Затем заменяем каждую группу на код из таблицы.

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

Получаем число: 0010 1110 2 = 2E16

Переводим дробную часть числа. Для этого разделим исходный код на группы по 4 разряда.
0112 = 01102
Затем заменяем каждую группу на код из таблицы.
Получаем число: 01102 = 616

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

Двоичная СС Восьмеричная СС
000 0
001 1
010 2
011 3
100 4
101 5
110 6
111 7

Получаем число: 4568 = 1001011102

Переводим дробную часть числа.
Получаем число: 548 = 1011002
Переводим целую часть числа. Для этого разделим исходный код на группы по 4 разряда.
1001011102 = 0001 0010 1110 2
Затем заменяем каждую группу на код из таблицы.
Получаем число: 0001 0010 1110 2 = 12E16

Переводим дробную часть числа. Для этого разделим исходный код на группы по 4 разряда.
1011002 = 1011 00002
Затем заменяем каждую группу на код из таблицы.
Получаем число: 1011 00002 = B016

Источник

Быстрый перевод между системами счисления с основаниями 2, 4, 8, 16.

Когда я разбирал быстрый и точный перевод из десятичной системы в двоичную с использованием разрядов, я обещал, что напишу, как быстро переводить без десятичной системы между двоичной, восьмеричной, шестнадцатиричной системами (часто те, кто хорошо знает метод «деления уголком», переводят сначала в десятичную, а потом в нужную новую). И вот эта статья перед Вами. В ней я не только дам этот метод (он и так валяется везде в интернете), но и опишу его принцип и объясню, почему перевод 2 8 работает, а 2 10 или 8 16 — нет. Как обычно, самое интересное — в конце.

Метод

Очень простой: заменяем цифры в записи справа налево в соответствии с нужной таблицей:

Теперь всё очень просто, как это — туда, а то — сюда : в 16-ричной системе каждая цифра будет заменена на 4 двоичных и наоборот — каждые 4 двоичных цифры будут заменяться на одну 16-ричную.

Если требуется перевести из 8-ричной в 16-ричную, то перевод осуществляем через двоичную (8->2->16).

Пример: 7F21 из 16-ричной в двоичную. «1» заменим на «0001» , «2» — на «0010», «F» — на «1111» и «7» — на «0111»: «(0111)(1111)(0010)(0001)». Лидирующий (левый) ноль стираем: 111111100100001. Профит. Можно так же быстро в восьмеричную: (111)(111)(100)(100)(001)-77441_8

Как это устроено

Всё дело в волшебных. разрядах. Разряды идут:

Смотрите, они одинаковые. В четверичной используется каждый второй двоичный разряд, в восьмеричной — каждый третий, а в 16-ричной — каждый четвёртый. Для разбора, как это работает я возьму пример перевода из 8й системы в двоичную. Сделаем заготовку для двоичной:

Теперь можно просто «перенести» цифры:

Запись получилась не двоичная, но так и должно быть. Посмотрите, в двоичной системе ни один разряд не может браться 2,3,4 и более раз, а у нас 64 берётся 7 раз. Вспомним болты, гайки и шайбы , которые разменивались друг на друга пачками. Пусть у нас болт стоит 256, гайка — 128, а шайба — 64 с порогом размена по 2 (двоичная же система) . Имеем по факту 7 шайб . 7 шайб можно разменять на 3 гайки и одна шайба останется (каждую гайку за 2 шайбы ):

Та же участь ждёт гайки . Из трёх гаек можно взять 2 и разменять на 1 болт :

Теперь надо так же разменять «4». Четыре «восьмёрки» ( шайбы ) разменяется ровнёхонько на один по «32» ( болт )

В те разряды, которые не задействованы, ставим 0.

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

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

Напрямую можно переводить и между четверичной и 16-ричной. А вот десятичная тут ущербная. Её разряды не встречаются ни в одной другой «практически полезной» системе: . -1000-100-10-1. Здесь есть корреляция с простыми делителями (не даром есть метод «деления уголком») оснований систем счисления. У чисел 4, 8, 16 и т.д. делитель только один — двойка. Поэтому и разряды в них только из двоичной системы. Для девятки делитель тоже только один — тройка. А вот у десятки сразу два простых делителя. Это 5 и 2. Значит, у «сродной» системы к десятичной будут делители основания 25 и 4 (квадраты), а это только 100-ричная.

Напоследок

Подарю пример перевода между системами 2->10 с помощью » деления уголком «. Не из десятичной в двоичную, а наоборот. Метод настолько универсальный, что работает даже там. Делим уголком 111001001 на 1010 (в двоичной системе так записывается основание «нашей» десятичной системы) и записываем остатки в обратном порядке:

Вдруг, кому пригодится деление в двоичной системе. Я хотел сначала в девятиричную перевести (надо было делить на 1001), но это неспециалисту проверить труднее.

Источник

Шестнадцатеричный код.

Шестнадцатеричная система счисления (также — шестнадцатеричный код) является позиционной системой счисления с целочисленным основанием 16. Иногда в литературе также используется термин hex (произносится «хекс», сокращение от англ. hexadecimal). Цифрами данной системы счисления принято использовать арабские цифры 0—9, а также первые символы латинского алфавита A—F. Буквы соответствуют следующим десятичным значениями:

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

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

Применение. Шестнадцатеричный код широко применяется в низкоуровневом программировании, а также в различных компьютерных справочных документах. Популярность системы обоснована архитектурными решениями современных компьютеров: в них в качестве минимальной единицы информации установлен байт (состоящий из восьми бит) — а значение байта удобно записывать с помощью двух шестнадцатеричных цифр. Значение байта может ранжироваться с #00 до #FF (от 0 до 255 в десятичной записи) — другими словами, используя шестнадцатеричный код, можно записать любое состояние байта, при этом не остаётся «лишних» не используемых в записи цифр.

В кодировке Юникод для записи номера символа используется четыре шестнадцатеричных цифры. Запись цвета стандарта RGB (Red, Green, Blue — красный, зелёный, синий) также часто использует шестнадцатеричный код (например, #FF0000 — запись ярко-красного цвета).

Способ записи шестнадцатеричного кода.

Математический способ записи. В математической записи основание системы записывают в десятичном виде в нижнем индексе справа от числа. Десятичную запись числа 3032 можно записать как 303210, в шестнадцатеричной системе данное число будет иметь запись BD816.

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

* В C, C++ и схожих языках (Java) для этого используется префикс «0x», например: 0x0A0B;

* В синтаксисе некоторых разновидностей языка ассемблера используется латинская буква «h», которая ставится справа от числа, например: 20Dh. Если число начинается с латинской буквы, то перед ним ставится ноль, например: 0A0Bh. Это сделано для того, чтобы отличать от констант значения, использующие шестнадцатеричный код;

* В прочих разновидностях ассемблера, а также в Pascal (и его разновидностях, таких как Delphi) и некоторых диалектах Basic, применяют префикс «$»: $A15;

* В языке разметки HTML, а также в каскадных файлах CSS, для указания цвета в формате RGB с шестнадцатеричной системой записи, используется префикс «#»: #00DC00.

Как перевести шестнадцатеричный код в другую систему?

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

Источник

Оцените статью
( Пока оценок нет )
Поделиться с друзьями
Uchenik.top - научные работы и подготовка
0 0 голоса
Article Rating
Подписаться
Уведомить о
guest
0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии