Шістнадцяткова система числення

Матеріал з Вікіпедії — вільної енциклопедії.

Двійкова
система
Шістнад-
цяткова
система
Десяткова
система
00000 00 00
00001 01 01
00010 02 02
00011 03 03
00100 04 04
00101 05 05
00110 06 06
00111 07 07
01000 08 08
01001 09 09
01010 0A 10
01011 0B 11
01100 0C 12
01101 0D 13
01110 0E 14
01111 0F 15
10000 10 16
10001 11 17
10010 12 18
10011 13 19
10100 14 20
10101 15 21
10110 16 22
10111 17 23
11000 18 24
11001 19 25
11010 1A 26
11011 1B 27
11100 1C 28
11101 1D 29
11110 1E 30
11111 1F 31

Шістнадцяткова система числення - це позиційна система числення, кожне число в якій записується за допомогою 16-ти символів. Цю систему часто називають також Hex (початкові літери англ. hexadecimal - шіснадцятковий). Початково планувалось вживати латинське sexa замість hexa, проте це слово сприймалось неоднозначно. Для запису чисел в цій системі окрім 10 арабських цифр (від 0 do 9) використовують 6 літер латинської абетки: A, B, C, D, E, F.

Запис числа формується за загальним принципом: на n-й позиції (зправа на ліво від 0) стоїть цифра, що відповідає кількості n-х степенів шістнадцяти у цьому числі. Наприклад, число записане в десятковій системі як 1000, в hex записується як 3E8, де:

3x162 + 14x161 + 8x160 = 768 + 224 + 8 = 1000.

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

В математиці числа в недесяткових системах позначуються нижнім індексом, що визначає основу позиції. Наприклад, 1016 = 1610. В інформатиці прийняті інші форми запису. В різних мовах програмування шістнадцятковий запис виглядає так:

  • C, C++, Java - використовують префікс 0x (zero oraz x) напр. 0x102f, а в текстових послідовностях \x, напр. "\x2f"
  • Деякі версії Асемблера - за числом ставлять h, напр.102fh. При цьому, якщо число починається не з десяткової цифри, то зпереду ставиться "0" (нуль): 0FFh (25510)
  • Інші асемблери (AT&T, Motorola), а також Паскаль і деякі версії Бейсіку використовують префікс $, напр. $102f
  • Інші версії Бейсіку використовують для позначення шістнадцяткових цифр комбінацію "&h". Наприклад, &h5A3.
  • HTML - кольори RGB (Red - Червоний, Green - Зелений, Blue - Синій) записується як 3 двозначні числа hex від 0 до FF(25510) з попереднім знаком #, наприклад рожевий - #FF8080, сірий - #808080, чорний - #000000. Цей запис стосується 24-бітного кольору, який приписують тому чи іншому графічному елементу документу HTML.

[ред.] Див. також

Герб Польші
В цій статті використано матеріали з Польської вікіпедії