- Шестнадцатеричная система счисления
-
Системы счисления в культуре Индо-арабская система счисления Арабская
Индийские
Тамильская
БирманскаяКхмерская
Лаоская
Монгольская
ТайскаяВосточноазиатские системы счисления Китайская
Японская
Сучжоу
КорейскаяВьетнамская
Счётные палочкиАлфавитные системы счисления Абджадия
Армянская
Ариабхата
КириллическаяГреческая
Эфиопская
Еврейская
КатапаядиДругие системы Вавилонская
Египетская
Этрусская
РимскаяАттическая
Кипу
МайскаяПозиционные системы счисления Десятичная система счисления (10) 2, 3, 4, 5, 6, 7, 8, 9, 12, 16, 20, 60 Нега-позиционная система счисления Симметричная система счисления Смешанные системы счисления Фибоначчиева система счисления Непозиционные системы счисления Единичная (унарная) система счисления Список систем счисления Шестнадцатеричная система счисления (шестнадцатеричные числа) — позиционная система счисления по целочисленному основанию 16.
Обычно в качестве шестнадцатеричных цифр используются десятичные цифры от 0 до 9 и латинские буквы от A до F для обозначения цифр от 1010 до 1510, то есть (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F).
Содержание
Применение
Широко используется в низкоуровневом программировании и компьютерной документации, поскольку в современных компьютерах минимальной единицей памяти является 8-битный байт, значения которого удобно записывать двумя шестнадцатеричными цифрами. Такое использование началось с системы IBM/360, где вся документация использовала шестнадцатеричную систему, в то время как в документации других компьютерных систем того времени (даже с 8-битными символами, как, например, PDP-11 или БЭСМ-6) использовали восьмеричную систему.
В стандарте Юникода номер символа принято записывать в шестнадцатеричном виде, используя не менее 4 цифр (при необходимости — с ведущими нулями).
Шестнадцатеричный цвет — запись трёх компонент цвета (R, G и B) в шестнадцатеричном виде.
Способы записи
В математике
В математике основание системы счисления принято указывать в десятичной системе в нижнем индексе. Например, десятичное число 1443 можно записать как 144310 или как 5A316.
В языках программирования
В разных языках программирования для записи шестнадцатеричных чисел используют различный синтаксис:
- В Ада и VHDL такие числа указывают так: «16#5A3#».
- В Си и языках схожего синтаксиса, например, в Java, используют префикс «0x». Например, «0x5A3».
- В некоторых ассемблерах используют букву «h», которую ставят после числа. Например, «5A3h». При этом, если число начинается не с десятичной цифры, то для отличия от имён идентификаторов (например, констант) впереди ставится «0» (ноль): «0FFh» (25510)
- Другие ассемблеры (AT&T, Motorola), а также Паскаль и некоторые версии Бейсика используют префикс «$». Например, «$5A3».
- Некоторые иные платформы, например ZX Spectrum в своих ассемблерах (MASM, TASM, ALASM, GENS и т. д.) использовали запись #5A3, обычно выровненную до одного или двух байт: #05A3.
- Другие версии Бейсика используют для указания шестнадцатеричных цифр сочетание «&h». Например, «&h5A3».
- В Unix-подобных операционных системах (и многих языках программирования, имеющих корни в Unix/linux) непечатные символы при выводе/вводе кодируются как 0xCC, где CC — шестнадцатеричный код символа.
В электронных калькуляторах
Б3-34 и ему подобные используют «-», «L», «C», «Г», «E» « » (space) на их экране.
Перевод чисел из одной системы счисления в другую
Перевод чисел из шестнадцатеричной системы в десятичную
Для перевода шестнадцатеричного числа в десятичное необходимо это число представить в виде суммы произведений степеней основания шестнадцатеричной системы счисления на соответствующие цифры в разрядах шестнадцатеричного числа.
Например, требуется перевести шестнадцатеричное число 5A3 в десятичное. В этом числе 3 цифры. В соответствии с вышеуказанным правилом представим его в виде суммы степеней с основанием 16:
5A316 = 3·160+10·161+5·162
= 3·1+10·16+5·256 = 3+160+1280 = 144310Перевод чисел из двоичной системы в шестнадцатеричную и наоборот
Для перевода многозначного двоичного числа в шестнадцатеричную систему нужно разбить его на тетрады справа налево и заменить каждую тетраду соответствующей шестнадцатеричной цифрой. Для перевода числа из шестнадцатеричной системы в двоичную нужно заменить каждую его цифру на соответствующую тетраду из нижеприведенной таблицы перевода.
Например:0101101000112 = 0101 1010 0011 = 5A316 Таблица перевода чисел
0hex = 0dec = 0oct 0 0 0 0 1hex = 1dec = 1oct 0 0 0 1 2hex = 2dec = 2oct 0 0 1 0 3hex = 3dec = 3oct 0 0 1 1 4hex = 4dec = 4oct 0 1 0 0 5hex = 5dec = 5oct 0 1 0 1 6hex = 6dec = 6oct 0 1 1 0 7hex = 7dec = 7oct 0 1 1 1 8hex = 8dec = 10oct 1 0 0 0 9hex = 9dec = 11oct 1 0 0 1 Ahex = 10dec = 12oct 1 0 1 0 Bhex = 11dec = 13oct 1 0 1 1 Chex = 12dec = 14oct 1 1 0 0 Dhex = 13dec = 15oct 1 1 0 1 Ehex = 14dec = 16oct 1 1 1 0 Fhex = 15dec = 17oct 1 1 1 1 См. также
Ссылки
Категория:- Системы счисления
Wikimedia Foundation. 2010.