null
объекты · система счисления · позиционная
FF

шестнадцатеричная

основание 16 · 0–9 и A–F · язык цветов и памяти.


основание16
цифры0 1 2 3 4 5 6 7 8 9 A B C D E F
использованиеадреса памяти · цвета #RRGGBB · Unicode · MAC-адреса
связь4 бита = 1 hex-цифра · байт = 2 hex-цифры
примеры#c44a32 = красный сайта · 0xFF = 255 · 0x1F4 = 500
// первые 16 значений · dec / hex / bin
10162
000000
110001
220010
330011
440100
550101
660110
770111
881000
991001
10A1010
11B1011
12C1100
13D1101
14E1110
15F1111
// цвета null в hex
hexрольRGB
#f7f6f2фонR=f7=247 G=f6=246 B=f2=242
#111111чернилаR=11=17 G=11=17 B=11=17
#c44a32красный акцентR=c4=196 G=4a=74 B=32=50
#2c5fb6синийR=2c=44 G=5f=95 B=b6=182
#1a7a4aзелёныйR=1a=26 G=7a=122 B=4a=74
// эссе

Шестнадцатеричная система — компромисс между двоичной и десятичной. Двоичная понятна процессору, но нечитаема человеку. Десятичная читаема человеком, но неудобна для битовых операций. Hex — посередине.

4 двоичных бита = 1 hex-цифра. Байт (8 бит) = 2 hex-цифры. 0xFF = 11111111₂ = 255₁₀. Красиво и компактно.

Цвета в вебе — hex по историческим причинам. #c44a32 — это три байта: R = 0xc4, G = 0x4a, B = 0x32. Каждый компонент от 0x00 (0) до 0xFF (255). 16 миллионов цветов. Все в шести символах.

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