Шестнадесетичният конвертор е инструмент, който преобразува стойности между шестнадесетични, десетични, двоични и други бройни системи. Работи, като чете всяка шестнадесетична цифра като степен на 16, след което преобразува тази стойност в целевия формат, от който се нуждаете. Инструментът предлага 4 основни предимства: мигновено преобразуване без ръчна математика, безгрешна обработка на големи стойности, поддръжка за множество формати на едно място и ясна представа за това как байтовете се преобразуват в четими от човека числа. Хората използват шестнадесетичен конвертор, за да четат адреси на паметта, да декодират цветови кодове, да инспектират блокчейн данни, да отстраняват грешки в мрежови пакети и да превеждат необработени байтове в текст. Основните части на шестнадесетичен преобразувател са полето за въвеждане на изходната стойност, полето за изход за конвертирания резултат, селектор на формат за избор между шестнадесетичен, десетичен, двоичен, осмичен или текст и бутон за копиране за извличане на резултата.
Какво е шестнадесетичен конвертор?
Шестнадесетичният конвертор е инструмент, който променя шестнадесетична стойност в друг числов формат или променя друг формат в шестнадесетичен. Вие въвеждате стойност в полето за въвеждане, инструментът чете всяка цифра и връща еквивалентната стойност в десетичен, двоичен, осмичен, текстов или друг целеви формат.
Инструментът премахва необходимостта от ръчно изчисление. Преобразуването на 1D8A от шестнадесетичен в десетичен на ръка означава умножаване на четири цифри по степени на 16 и добавяне на резултатите. Шестнадесетичен конвертор прави това за времето, необходимо за натискане на клавиш.
⚡ Опитайте го на живо
—
—
—
Какво е шестнадесетичен?
Шестнадесетичната е бройна система с основа 16. Той използва 16 символа: цифрите от 0 до 9 и буквите от A до F. Буквите заместват стойностите от 10 до 15, тъй като десетичната система има само 10 едноцифрени символа, с които да работи.
Компютрите съхраняват данни в битове, а 8 бита образуват байт. Записването на байт в двоична система отнема 8 знака. Записването на същия байт в шестнадесетичен отнема 2 знака, тъй като всяка шестнадесетична цифра покрива точно 4 бита (хапка). Ето защо hex се показва навсякъде, където програмистите трябва да четат двоични данни, без да се взират в дълги низове от 1 и 0: адреси на паметта, цветови кодове, хеш стойности и заглавки на файлове.
Шестнадесетичната стойност често се записва с префикс 0x, като 0xFF, за да се отдели от десетично число, което случайно използва същите цифри.
🔄 Брой във всяка база
—
Какво можете да конвертирате с шестнадесетичен конвертор?
Шестнадесетичен конвертор обработва 6 често срещани типа преобразуване: шестнадесетичен към десетичен, десетичен към шестнадесетичен, шестнадесетичен към двоичен, двоичен към шестнадесетичен, шестнадесетичен към осмичен и шестнадесетичен към текст (ASCII или UTF-8). Много инструменти също поддържат шестнадесетичен към RGB за уеб цветове, шестнадесетичен към Base64 за кодирани данни и шестнадесетичен към IP адрес за мрежови стойности.
Всеки тип преобразуване изпълнява различна задача. Шестнадесетичен към десетичен ви помага да прочетете необработена стойност с познати термини. Шестнадесетичен към двоичен показва точния битов модел, с който работи процесорът. Шестнадесетичен към текст декодира последователности от байтове обратно в четими знаци. Hex към RGB превръща 6-знаков цветен код в червени, зелени и сини стойности на канала за работа по проектиране.
🔀 Пътища за реализация
Шестнадесетична бройна система
Шестнадесетичната бройна система използва радикс или основа от 16. Всяка позиция в шестнадесетично число представлява степен от 16, като се започне от 16⁰ вдясно и се увеличава с една степен за всяка позиция, преместена наляво.
Една шестнадесетична цифра може да съдържа 16 възможни стойности (0-9, A-F), в сравнение с 10 стойности в десетична система и 2 стойности в двоична система. Това дава на hex по-голяма плътност на информация за символ. Една шестнадесетична цифра кодира 4 бита, така че 2 шестнадесетични цифри кодират пълен байт (8 бита), а 4 шестнадесетични цифри кодират 2 байта (16 бита).
📐 Place Value Explorer
× 16² (256)
Как да използвате шестнадесетичния конвертор
Въведете шестнадесетична стойност в полето за въвеждане, след което прочетете преобразувания резултат в полето за изход. Конверторът приема стойности със или без префикс 0x, с главни или малки букви, и обикновено игнорира интервали или двоеточия, поставени между двойки байтове.
За да преобразувате десетичен в шестнадесетичен, въведете цяло число в десетичното поле и инструментът връща шестнадесетичния еквивалент. Превключете посоката с помощта на селектор за размяна или формат, ако инструментът поддържа и двете посоки в един интерфейс. Копирайте резултата с бутона за копиране, вместо да го изберете и въведете отново, тъй като ръчното повторно въвеждане въвежда грешки в дългите хеш стойности.
📋 Как работи
Стъпка 1
Изберете Формат
Формули за шестнадесетично преобразуване
Всяко преобразуване между шестнадесетичен и друг формат следва фиксирана формула. 6-те формули по-долу обхващат реализациите, които хората търсят най-много.
Шестнадесетична към десетична формула
Шестнадесетичната към десетичната формула е десетична = Σ (цифра × 16ⁿ), сумирана за всяка цифра, където n е позицията на цифрата, преброена отдясно наляво, започваща от 0. Hex 1A3 преобразува в десетична 419: (1 × 16²) + (10 × 16¹) + (3 × 16⁰) = 256 + 160 + 3 = 419.
Десетична към шестнадесетична формула
Десетичната към шестнадесетичната формула разделя десетичното число на 16 многократно, записвайки всеки остатък като шестнадесетична цифра, докато частното достигне 0. Десетично 419 се преобразува в шестнадесетичен 1A3: 419 ÷ 16 = 26 остатък 3, 26 ÷ 16 = 1 остатък 10 (A), 1 ÷ 16 = 0 остатък 1. Четенето на остатъците в обратен ред дава 1A3.
Шестнадесетична към двоична формула
Шестнадесетичната към двоичната формула замества всяка шестнадесетична цифра с нейния 4-битов двоичен еквивалент, след което се присъединява към групите в ред: двоичен = concat(цифра → 4-битов двоичен), прилага се цифра по цифра. Hex 2AA преобразува в двоично число 0010 1010 1010, тъй като 2 е 0010, а A е 1010 във всяка оставаща позиция.
Двоична към шестнадесетична формула
Двоичната към шестнадесетичната формула групира двоичните цифри в комплекти от по 4, започвайки отдясно, допълвайки най-лявата група с нули, когато има по-малко от 4 цифри, след което преобразува всяка група в нейната шестнадесетична цифра: hex = concat(4-bit group → digit). Двоичният 1010101010 се преобразува в шестнадесетичен 2AA.
Шестнадесетична към осмична формула
Шестнадесетичната към осмичната формула преминава през двоична като средна стъпка: преобразувайте всяка шестнадесетична цифра в 4-битова двоична, прегрупирайте пълния двоичен низ в набори от 3 отдясно, след което преобразувайте всяка 3-цифрена група в нейната осмична цифра. Hex FF преобразува в осмично 377, тъй като FF е двоично 11111111, групирано като 011 111 111.
Шестнадесетична към текстова формула
Формулата за шестнадесетичен към текст разделя шестнадесетичния низ на двойки байтове от 2 знака, преобразува всяка двойка в нейната десетична стойност с помощта на формулата за шестнадесетичен към десетичен знак, след което съпоставя всяка десетична стойност към нейния знак с помощта на таблицата ASCII или UTF-8: текст = map(decimal(byte) → знак). Hex 48656C6C6F се преобразува в текста „Здравей“.
📐 Формула Quick Ref
Примери за шестнадесетично преобразуване
Hex A3 преобразува в десетично 163, тъй като A (10) × 16¹ + 3 × 16⁰ = 160 + 3 = 163. Hex FF преобразува в десетично 255, тъй като F (15) × 16¹ + F (15) × 16⁰ = 240 + 15 = 255. Hex 1D8A преобразува в десетично 7562, следвайки същото умножение цифра по цифра през 4 позиции.
Десетично 1500 се преобразува в шестнадесетичен 5DC. Decimal 255 се преобразува в шестнадесетичен FF. Десетичната 4132 се преобразува в шестнадесетична 1024.
Hex 48656C6C6F се преобразува в текста „Здравей“, тъй като всяка шестнадесетична двойка от 2 знака се преобразува в един ASCII байт: 48 е H, 65 е e, 6C е l, 6C е l и 6F е o.
🧮 Калкулатор стъпка по стъпка
Методи за шестнадесетично преобразуване
Има 2 основни метода за преобразуване между шестнадесетичен и десетичен: разширяване на цифри за шестнадесетичен към десетичен и многократно деление за десетичен към шестнадесетичен.
Цифровото разширение умножава всяка шестнадесетична цифра по нейната позиционна степен 16, след което сумира резултатите. Повтарящото се деление дели десетичното число на 16 отново и отново, записвайки остатъка на всяка стъпка, след което чете остатъците в обратен ред, за да изгради шестнадесетичната стойност.
🔬 Метод визуализатор
(Цифра × 16^поз.) + (Цифра × 16^поз.)…
Шестнадесетичен срещу десетичен, двоичен и осмичен
Шестнадесетичният, десетичният, двоичният и осмичният се различават по базата и колко цифри трябва да представят една и съща стойност. Двоичният (база 2) използва 8 цифри за представяне на един байт. Осмичната (база 8) използва 3 цифри. Десетичната система (база 10) използва от 1 до 3 цифри. Hex (база 16) използва точно 2 цифри.
Двоичният формат е процесорът на формат, който работи директно. Octal беше често срещан в ранните изчисления и сега оцелява главно в кодовете за разрешения на файлове на Unix. Десетичната система е системата, която хората използват за ежедневна аритметика. Hex балансира компактността с директно преобразуване в двоичен код, поради което той доминира в адресирането на паметта, цветовите кодове и криптографския изход.
🎚️ Сравнете числови бази
Какво представлява десетичната система?
Десетичната система е бройна система с основа 10, която използва 10 цифри: от 0 до 9. Позицията на всяка цифра представлява степен на 10, като се започне от 10⁰ вдясно.
Десетичната система е стандарт за ежедневна аритметика, защото хората броят на 10 пръста. Компютрите не използват десетична система вътрешно, така че всяка десетична стойност, въведена в системата, се преобразува в двоична или шестнадесетична преди обработка.
Шестнадесетична система (шестнадесетична система)
Шестнадесетичната система използва 16 символа: 0-9 и A-F. Всяка цифра представлява степен на 16. Буквите от A до F означават десетичните стойности от 10 до 15.
Hex се използва в изчисленията, защото се подравнява с границите на байтовете. Един байт, съставен от 8 бита, преобразува чисто в точно 2 шестнадесетични цифри без остатък или закръгляване. Това чисто съпоставяне не съществува между байтове и десетични цифри, поради което необработените компютърни данни се показват в шестнадесетичен, а не в десетичен знак.
Десетична система
Decimal е позиционна бройна система с основа 10. Стойността на всяка цифра зависи както от самата цифра, така и от нейната позиция в числото. Цифрата 5 в числото 500 представлява 5 × 10² или 500. Същата цифра 5 в числото 50 представлява 5 × 10¹ или 50.
Decimal обработва дробни стойности, като използва десетична запетая, където цифрите след точката представляват отрицателни степени на 10 (десети, стотни и т.н.).
Как да изчислим шестнадесетичен в десетичен
Умножете всяка шестнадесетична цифра по 16, повдигната до нейната позиция, като броите позициите отдясно наляво, започвайки от 0, след което добавете резултатите заедно. Шестнадесетичната стойност 2AA се преобразува в десетична 682: (2 × 16²) + (10 × 16¹) + (10 × 16⁰) = 512 + 160 + 10 = 682.
За дълги шестнадесетични низове като криптографски хешове, това изчисление все още работи цифра по цифра, но полученото десетично число нараства бързо. Шестнадесетичен хеш от 64 знака може да създаде десетично число със 77 цифри.
⚙️ Дигитално разширяване на живо
Преобразуване на шестнадесетична стойност в десетична стойност
Преобразуването на шестнадесетична стойност в десетична следва 3 стъпки: присвоете на всяка цифра нейната степен 16 въз основа на позицията, умножете всяка цифра по нейната степен и сумирайте всеки резултат.
Пример: шестнадесетичен 7DE преобразува в десетична 2014. (7 × 16²) + (13 × 16¹) + (14 × 16⁰) = 1792 + 208 + 14 = 2014.
Преобразуване на десетична стойност в шестнадесетична стойност
Преобразуването на десетична стойност в шестнадесетична следва 4 стъпки: разделете десетичното число на 16, запишете остатъка като шестнадесетична цифра, използвайте частното като следващо число за деление и повторете, докато частното достигне 0.
Пример: десетичната 7562 се преобразува в шестнадесетична 1D8A. 7562 ÷ 16 = 472 остатък 10 (A). 472 ÷ 16 = 29 остатък 8 (8). 29 ÷ 16 = 1 остатък 13 (D). 1 ÷ 16 = 0 остатък 1 (1). Четенето на остатъците от последния към първия дава 1D8A.
Шестнадесетичен към двоичен и двоичен към шестнадесетичен
Шестнадесетичното към двоично преобразуване замества всяка шестнадесетична цифра с нейния 4-битов двоичен еквивалент, след което се присъединява към групите по ред. Hex 2AA преобразува в двоично 0010 1010 1010, тъй като 2 е 0010, а A е 1010 във всяка от останалите 2 позиции.
Двоичното в шестнадесетично преобразуване групира двоичните цифри в набори от 4, започвайки отдясно, допълвайки най-лявата група с нули, когато има по-малко от 4 цифри, след което преобразува всяка група в нейната шестнадесетична цифра. Двоичният 1010101010 се преобразува в шестнадесетичен 2AA, използвайки същите групирани стойности в обратен ред.
Шестнадесетичен към осмичен
Шестнадесетичното в осмично преобразуване преминава през двоично като средна стъпка: преобразувайте шестнадесетичната стойност в двоично, прегрупирайте двоичните цифри в набори от 3 отдясно, след което преобразувайте всяка 3-цифрена група в нейната осмична цифра. Шестнадесетичният FF се преобразува в осмичен 377: FF е двоично число 11111111, групирано като 011 111 111, което се чете като 3, 7, 7.
Шестнадесетичен към цяло число
Преобразуването от шестнадесетичен към цяло число чете шестнадесетична стойност като цяло число без знак или като цяло число със знак, в зависимост от ширината на типа данни. Неподписаната 8-битова шестнадесетична стойност варира от 00 до FF или от 0 до 255 в десетичен знак. 8-битовата шестнадесетична стойност със знак използва допълнение от две, така че 00 до 7F представлява 0 до 127, докато 80 до FF представлява -128 до -1. Hex FF като 8-битово цяло число без знак е равно на 255, но като 8-битово цяло число със знак е равно на -1.
Същите правила със знак и без знак се простират до 16-битови, 32-битови и 64-битови цели числа, в повече шестнадесетични цифри: 4 шестнадесетични цифри за 16-битови, 8 шестнадесетични цифри за 32-битови и 16 шестнадесетични цифри за 64-битови.
Шестнадесетично изчисление—събиране, изваждане, умножение или деление
Шестнадесетичната аритметика следва същите правила като десетичната аритметика, с 2 корекции: цифрите над 9 използват букви от A до F, а пренасянето или заемането се движат в единици от 16, а не 10.
Шестнадесетично добавяне
Добавете шестнадесетични цифри по същия начин, по който добавяте десетични цифри, като преобразувате буквите в техните десетични стойности, когато е необходимо, след което пренесете произволно количество от 16 или повече в следващата колона. Пример: B (11) + 8 = 19 в десетичен знак, което се равнява на 13 в шестнадесетичен. Запишете 3, пренесете 1 в следващата колона.
Шестнадесетично изваждане
Извадете шестнадесетичните цифри колона по колона, заемайки 16 от следващата колона, когато горната цифра е по-малка от долната. Пример: в 5D1C − 3AF най-дясната колона се нуждае от C (12) − F (15), което е отрицателно, така че колоната заема 16 от следващата цифра: 16 + 12 − 15 = 13, или D.
Шестнадесетично умножение
Умножете шестнадесетичните цифри, като използвате техните десетични еквиваленти, преобразувайте всеки частичен продукт обратно в шестнадесетичен, след това добавете частичните произведения заедно, следвайки нормалното шестнадесетично събиране. Шестнадесетичната таблица за умножение премахва необходимостта от преобразуване на всяка стъпка.
Шестнадесетична дивизия
Разделете шестнадесетични числа, като използвате дълго деление, като извършвате всяка стъпка на умножение и изваждане в шестнадесетичен, а не в десетичен знак. Заемането по време на изваждане все още се движи в единици от 16.
Шестнадесетична таблица за умножение
| × | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
| 2 | 2 | 4 | 6 | 8 | A | C | E | 10 | 12 | 14 | 16 | 18 | 1A | 1C | 1E |
| 3 | 3 | 6 | 9 | C | F | 12 | 15 | 18 | 1B | 1E | 21 | 24 | 27 | 2A | 2D |
| 4 | 4 | 8 | C | 10 | 14 | 18 | 1C | 20 | 24 | 28 | 2C | 30 | 34 | 38 | 3C |
| 5 | 5 | A | F | 14 | 19 | 1E | 23 | 28 | 2D | 32 | 37 | 3C | 41 | 46 | 4B |
| 6 | 6 | C | 12 | 18 | 1E | 24 | 2A | 30 | 36 | 3C | 42 | 48 | 4E | 54 | 5A |
| 7 | 7 | E | 15 | 1C | 23 | 2A | 31 | 38 | 3F | 46 | 4D | 54 | 5B | 62 | 69 |
| 8 | 8 | 10 | 18 | 20 | 28 | 30 | 38 | 40 | 48 | 50 | 58 | 60 | 68 | 70 | 78 |
| 9 | 9 | 12 | 1B | 24 | 2D | 36 | 3F | 48 | 51 | 5A | 63 | 6C | 75 | 7E | 87 |
| A | A | 14 | 1E | 28 | 32 | 3C | 46 | 50 | 5A | 64 | 6E | 78 | 82 | 8C | 96 |
| B | B | 16 | 21 | 2C | 37 | 42 | 4D | 58 | 63 | 6E | 79 | 84 | 8F | 9A | A5 |
| C | C | 18 | 24 | 30 | 3C | 48 | 54 | 60 | 6C | 78 | 84 | 90 | 9C | A8 | B4 |
| D | D | 1A | 27 | 34 | 41 | 4E | 5B | 68 | 75 | 82 | 8F | 9C | A9 | B6 | C3 |
| E | E | 1C | 2A | 38 | 46 | 54 | 62 | 70 | 7E | 8C | 9A | A8 | B6 | C4 | D2 |
| F | F | 1E | 2D | 3C | 4B | 5A | 69 | 78 | 87 | 96 | A5 | B4 | C3 | D2 | E1 |
🔢 Шестнадесетична аритметика
(191)
Общи шестнадесетични стойности
| Hex | Decimal | Binary | ASCII |
|---|---|---|---|
| 00 | 0 | 00000000 | NUL |
| 0A | 10 | 00001010 | LF (newline) |
| 20 | 32 | 00100000 | Space |
| 30 | 48 | 00110000 | 0 |
| 41 | 65 | 01000001 | A |
| 61 | 97 | 01100001 | a |
| 7F | 127 | 01111111 | DEL |
| FF | 255 | 11111111 | Extended byte |
Тези 8 стойности се появяват често, защото маркират граници: 00 е нулевият байт, 20 е символът за интервал, който разделя думите в ASCII, 41 започва главната азбука, 61 започва малката азбука и FF маркира най-високата еднобайтова стойност.
🗺️ ASCII Map Explorer
Шестнадесетичен към текст, ASCII и UTF-8
Преобразуването от шестнадесетичен към текст разделя шестнадесетичния низ на двойки байтове от 2 знака, преобразува всяка двойка в нейната десетична стойност, след което чете тези байтове като знаци. Hex 48656C6C6F декодира до “Здравей”, тъй като 48 е H, 65 е e, 6C е l, 6C е l и 6F е o.
Hex към ASCII следва същия метод на двойка байтове, но ASCII покрива само стойности на байтове от 0 до 127 или от 00 до 7F в шестнадесетичен. Hex към UTF-8 разширява това за стойности на байтове над 7F, където конверторът чете 2, 3 или 4 шестнадесетични байта заедно, за да декодира един знак.
🗺️ ASCII Map Explorer
Текст в Hex
Преобразуването на текст в шестнадесетичен преобразува всеки знак в неговата байтова стойност, като използва своето кодиране на знаци, след което записва всяка байтова стойност като шестнадесетична двойка от 2 знака. Текстът „Здравей“ се преобразува в шестнадесетичен 4869, тъй като H е равно на десетичен знак 72 (шестнадесетичен 48), а i е равен на десетичен знак 105 (шестнадесетичен 69).
Шестнадесетичен към Base64
Преобразуването от шестнадесетичен към Base64 прегрупира необработените байтове, представени от шестнадесетичен низ, в комплекти от 3 байта (24 бита), разделя всяка 24-битова група на четири 6-битови сегмента, след което картографира всеки 6-битов сегмент към един от 64 символа Base64 (A-Z, a-z, 0-9, +, /). Hex 48656C6C6F, което е 5 байта, се преобразува в Base64 SGVsbG8=, с добавяне на подложка, когато броят на байтовете не се дели равномерно на 3.
Шестнадесетични преобразувания на цветовете
Шестнадесетичният код на цвета е шестнадесетична стойност от 6 знака, която представлява цвят, използвайки по 2 цифри за червено, зелено и синьо. Кодът FF5733 представлява червено-оранжев цвят: FF (255) червено, 57 (87) зелено и 33 (51) синьо.
Hex to RGB
Преобразуването от шестнадесетичен в RGB разделя шестнадесетичен цвят с 6 знака на 3 двойки, след което преобразува всяка двойка в нейната десетична стойност. Hex FF5733 преобразува в RGB (255, 87, 51), следвайки реда на двойки червено, зелено, синьо.
Hex to HSL
Преобразуването от Hex към HSL първо извлича RGB стойностите, след което изчислява оттенъка, наситеността и осветеността от относителната яркост и диапазона на RGB каналите. Нюансът се измерва в градуси от 0 до 360, докато наситеността и светлотата се измерват като проценти от 0 до 100.
Hex to HSV
Преобразуването от шестнадесетичен към HSV също започва от извлечените RGB стойности, след което изчислява нюанса, наситеността и стойността (яркостта). HSV се различава от HSL по начина, по който определя яркостта: стойностният канал на HSV проследява директно най-високия от 3-те RGB канала, докато яркостта на HSL осреднява най-високите и най-ниските канали.
Шестнадесетичен към CMYK
Преобразуването от Hex към CMYK първо извлича RGB, след което преобразува RGB стойностите в циан, магента, жълто и ключови (черни) проценти за използване при печат. CMYK стойностите са субтрактивни, което означава, че описват колко мастило абсорбира светлина, докато RGB и шестнадесетичните стойности са адитивни, описващи колко светлина излъчва екранът.
Шестнадесетичен към Pantone
Преобразуването от шестнадесетичен към Pantone съвпада с шестнадесетичен цвят спрямо най-близкия запис в библиотеката на Pantone Matching System (PMS), тъй като Pantone използва наименувани формулировки на мастило, а не математическа RGB или CMYK формула. Съвпадението е приблизително: 2 различни шестнадесетични стойности могат да се съпоставят с една и съща мостра на Pantone и изходът за печат може да варира от екранния шестнадесетичен преглед в зависимост от хартията и процеса на печат.
Hex в блокчейн
Блокчейн системите съхраняват почти всички необработени данни в шестнадесетичен формат. Идентификаторите на транзакциите, блоковите хешове, адресите и данните за интелигентни договори използват шестнадесетичен, тъй като картографират директно базовите байтове, без да губят структура.
Идентификационни номера на транзакции
ID на биткойн транзакция (txid) е шестнадесетичен низ от 64 знака. Той представлява двойния хеш SHA-256 на сериализираната транзакция, компресиран от 32 необработени байта в шестнадесетична форма за четливост.
Блокиране на хешове
Хешът на блок също е шестнадесетичен низ от 64 знака, получен чрез хеширане на 80-байтовия блоков хедър два пъти с SHA-256. Целта за трудност при доказателство за работа на биткойн изисква хешът да падне под праг, което в шестнадесетичен смисъл означава, че хешът трябва да започва с определен брой водещи нули.
Адреси и публични ключове
Публичният ключ на биткойн е 33 байта в компресирана форма или 65 байта некомпресирани, показани в шестнадесетичен преди конвертиране във формат Base58Check или Bech32. Адресът на Ethereum е шестнадесетичен низ от 40 знака (20 байта) с префикс 0x.
Операционни кодове и скрипт
Bitcoin Script използва еднобайтови кодове за операции, посочени от техните шестнадесетични стойности. Стандартен скрипт Pay-to-Public-Key-Hash чете 76 A9 14 [хеш] 88 AC в шестнадесетичен, където 76 е OP_DUP, A9 е OP_HASH160, 88 е OP_EQUALVERIFY и AC е OP_CHECKSIG.
Данни за интелигентен договор
Извикванията на интелигентни договори на Ethereum се кодират като шестнадесетични данни в полето за въвеждане на транзакция. Първите 4 байта образуват функционален селектор, получен от Keccak-256 хеша на сигнатурата на функцията. ERC-20 transfer() повикване започва със селектора 0xA9059CBB.
⛓️ Анатомия на транзакцията
01000000
01
7b1eabe0209b1fe794124575ef807057c77ada2138ae4fa8d6c4de0398a14f3f
00000000
494830450221008949…
фффффффф
Задръжте курсора на мишката върху полета за декодиране на суровото шестнадесетични транзакционни байтове.
Шестнадесетичен в програмирането и данните
Шестнадесетичното се показва в 6 често срещани задачи за програмиране и данни извън основното преобразуване на числа: кодиране с плаваща запетая, обработка на реда на байтовете, побитови операции, проверка на машинен код, анализ на необработен файл и генериране на идентификатор.
Шестнадесетичен към IEEE 754
Преобразуването от шестнадесетичен към IEEE 754 чете шестнадесетична стойност като число с плаваща запетая, използвайки стандарта IEEE 754, който разделя битовете на знаков бит, експонента и мантиса. 32-битов (с единична точност) float използва 1 знаков бит, 8 експонентни бита и 23 мантисови бита. Шестнадесетичната стойност 3F800000 се преобразува в стойността с плаваща запетая 1.0 съгласно този стандарт.
Hex Endian конвертор
Конверторът на шестнадесетичен ред на байтовете обръща реда на байтовете на шестнадесетична стойност между форматите с голям и малък ред. Big-endian съхранява първо най-значимия байт; little-endian съхранява първо най-малко значимия байт. 4-байтовата шестнадесетична стойност 12345678 в big-endian става 78563412 в little-endian, тъй като последователността от байтове се обръща, докато собствените 2 цифри на всеки байт запазват своя ред.
Шестнадесетичен XOR калкулатор
Шестнадесетичен XOR калкулатор прилага побитовата операция XOR към 2 шестнадесетични стойности, като ги сравнява бит по бит и връща 1, когато битовете се различават, и 0, когато съвпадат. Hex FF XOR 0F е равно на F0, тъй като всяка битова позиция, където 2-те стойности не съвпадат, произвежда 1.
Шестоъгълник към монтажа
Преобразуването от шестнадесетичен към асемблиране, наричано също разглобяване, превежда необработените байтове на машинния код обратно в четливи инструкции за асемблиране за конкретна процесорна архитектура. Всеки шестнадесетичен код на операция се преобразува в една мнемоника на инструкция, като MOV, ADD или JMP, въпреки че точното преобразуване зависи от набора инструкции: x86, ARM или друга архитектура.
Hex Dump конвертор
Конверторът на шестнадесетичен дъмп взема двоичен файл и показва необработените му байтове в шестнадесетичен формат, обикновено заедно с ASCII колона, показваща знака за печат за всеки байт. Шестнадесетичните дъмпове позволяват на разработчиците да проверяват заглавките на файловете, да проверяват файловите подписи и да отстраняват грешки в двоични данни без специализиран парсер за всеки тип файл.
Шестнадесетичен към UUID
Преобразуването от шестнадесетичен към UUID форматира 32-знакова (16-байтова) шестнадесетична стойност в стандартния модел на UUID: 8-4-4-4-12 шестнадесетични цифри, разделени с тирета, като 550E8400-E29B-41D4-A716-446655440000. UUID е 128-битова стойност, използвана за идентифициране на записи или обекти с почти нулев шанс за сблъсък между системите.
Справка за преобразуване
| Hex | Decimal | Binary | ASCII |
|---|---|---|---|
| 00 | 0 | 00000000 | NUL |
| 0A | 10 | 00001010 | LF |
| 30 | 48 | 00110000 | 0 |
| 41 | 65 | 01000001 | A |
| 61 | 97 | 01100001 | a |
| 7F | 127 | 01111111 | DEL |
| FF | 255 | 11111111 | — |
📚 ASCII контролни знаци
| Hex | Decimal | Binary | ASCII |
|---|---|---|---|
| 00 | 0 | 00000000 | NUL |
| 0A | 10 | 00001010 | LF |
| 30 | 48 | 00110000 | 0 |
| 41 | 65 | 01000001 | A |
| 61 | 97 | 01100001 | a |
| 7F | 127 | 01111111 | DEL |
| FF | 255 | 11111111 | — |
Общи шестнадесетични стойности в крипто
| Hex Value | Name | Context |
|---|---|---|
| 0x76 | OP_DUP | Duplicates the top stack item |
| 0xA9 | OP_HASH160 | Applies SHA-256 then RIPEMD-160 |
| 0xAC | OP_CHECKSIG | Verifies a signature |
| 0x6A | OP_RETURN | Marks an output as unspendable |
| 0x88 | OP_EQUALVERIFY | Checks equality and verifies |
| 0xAE | OP_CHECKMULTISIG | Verifies a multisig condition |
| 0xA9059CBB | transfer(address,uint256) | ERC-20 function selector |
| 0x095EA7B3 | approve(address,uint256) | ERC-20 function selector |
| 0x70A08231 | balanceOf(address) | ERC-20 function selector |
🪙 Web3 & Bitcoin Ops
| Hex Value | Name | Context |
|---|---|---|
| 0x76 | OP_DUP | Duplicates the top stack item |
| 0xA9 | OP_HASH160 | Applies SHA-256 then RIPEMD-160 |
| 0xAC | OP_CHECKSIG | Verifies a signature |
| 0x6A | OP_RETURN | Marks an output as unspendable |
| 0x88 | OP_EQUALVERIFY | Checks equality and verifies |
| 0xAE | OP_CHECKMULTISIG | Verifies a multisig condition |
| 0xA9059CBB | transfer(address,uint256) | ERC-20 function selector |
| 0x095EA7B3 | approve(address,uint256) | ERC-20 function selector |
| 0x70A08231 | balanceOf(address) | ERC-20 function selector |
Шестнадесетичен срещу други числови системи
| Property | Binary (Base-2) | Octal (Base-8) | Decimal (Base-10) | Hex (Base-16) |
|---|---|---|---|---|
| Digits used | 0, 1 | 0-7 | 0-9 | 0-9, A-F |
| Bits per digit | 1 | 3 | ~3.32 | 4 |
| One byte requires | 8 digits | 3 digits | 1-3 digits | 2 digits |
| Common prefix | 0b | 0o | None | 0x |
| 255 expressed as | 11111111 | 377 | 255 | FF |
| Primary use | Logic gates, bit flags | Unix permissions | Everyday arithmetic | Memory, crypto, colors |
📊 Базово сравнение
HEX
2 знака
FF
Преобразуване на шестнадесетични (база-16) числа в десетични (база-10)
За да преобразувате шестнадесетични (база-16) числа в десетични (база-10), въведете шестнадесетична стойност като 3B2 или 0xFF в шестнадесетичен конвертор и десетичният еквивалент се появява веднага. Шестнадесетичната бройна система е с основа 16, използваща 16 различни символа: цифри от 0 до 9 и букви от A до F. 6-те шестнадесетични букви представляват следните десетични стойности: A = 10, B = 11, C = 12, D = 13, E = 14, F = 15.
Десетичната система (база 10) използва 10 цифри — от 0 до 9 — и е стандартната бройна система за ежедневна аритметика. Hex се използва в изчисленията, защото 2 шестнадесетични цифри представляват 1 байт (8 бита), което прави шестнадесетичния 4 пъти по-компактен от двоичния (база-2).
За едноцифрени шестнадесетични стойности от 0 до 9 десетичната стойност е идентична. Hex 5 = 5 в десетичен знак, hex 8 = 8 в десетичен знак и hex 9 = 9 в десетичен знак.
За многоцифрени шестнадесетични стойности се прилага позиционно претегляне. Шестнадесетичен 10 = 16 в десетичен знак, шестнадесетичен 16 = 22 в десетичен знак, шестнадесетичен 20 = 32 в десетичен знак и шестнадесетичен 80 = 128 в десетичен знак.
За да преобразувате десетичната в шестнадесетична, разделете десетичната стойност на 16 многократно и запишете всеки остатък като шестнадесетична цифра. Десетично 5 = 5 в шестнадесетично, десетично 9 = 9 в шестнадесетично, десетично 14 = E в шестнадесетично, десетично 35 = 23 в шестнадесетично и десетично 5000 = 1388 в шестнадесетично.
Преобразуването на шестнадесетичен в десетичен знак се прилага в 3 основни области:
- **Адресиране на паметта: ** Системните архитектури използват шестнадесетични за представяне на адресите на паметта, тъй като hex поддържа нотацията на адресите компактна.
- Цветово кодиране: Цветовите кодове за уеб дизайн като #FF5733 изразяват стойностите на каналите за червено, зелено и синьо (RGB) като 3 шестнадесетични двойки, всяка варираща от 00 до FF (0 до 255 в десетичен знак).
- Програмиране на асемблиране: Инструкциите на процесора в програмирането на асемблиране са написани в шестнадесетичен формат, което изисква преобразуване на шестнадесетичен в десетичен за анализ и четливост.
Как работи преобразуването от шестнадесетичен към десетичен?
Преобразуването от шестнадесетичен в десетичен знак работи, като всяка шестнадесетична цифра се умножи по 16, повдигната на степента на позицията на цифрата, след което се сумират всички продукти. Позициите се броят от 0 в най-дясната цифра и се увеличават с 1 при движение наляво. Заменете A до F с 10 до 15, преди да приложите формулата.
Формулата за преобразуване е:
Десетичен = (Dₙ × 16ⁿ) + (Dₙ₋₁ × 16ⁿ⁻¹) + … + (D₁ × 16¹) + (D₀ × 16⁰)
- Преобразувайте шестнадесетичен 2 в десетичен знак: 2 × 16⁰ = 2 × 1 = 2. Шестнадесетичен 2 = 2 в десетичен знак.
- Преобразувайте шестнадесетичен 10 в десетичен знак: (1 × 16¹) + (0 × 16⁰) = 16 + 0 = 16. Шестнадесетичен 10 = 16 в десетичен знак.
- Преобразувайте шестнадесетичен 14 в десетичен знак: (1 × 16¹) + (4 × 16⁰) = 16 + 4 = 20. Шестнадесетичен 14 = 20 в десетичен знак.
- Преобразувайте шестнадесетичен 1E в десетичен знак: (1 × 16¹) + (14 × 16⁰) = 16 + 14 = 30. Шестнадесетичен 1E = 30 в десетичен знак.
- Преобразувайте шестнадесетичен 22 в денари: (2 × 16¹) + (2 × 16⁰) = 32 + 2 = 34. Шестнадесетичен 22 = 34 в денари.
- Преобразувайте шестнадесетичен 2A в десетичен знак: (2 × 16¹) + (10 × 16⁰) = 32 + 10 = 42. Шестнадесетичен 2A = 42 в десетичен знак.
- Преобразувайте шестнадесетичен 2C в десетичен знак: (2 × 16¹) + (12 × 16⁰) = 32 + 12 = 44. Шестнадесетичен 2C = 44 в десетичен знак.
- Преобразувайте шестнадесетичен 2E в денари: (2 × 16¹) + (14 × 16⁰) = 32 + 14 = 46. Шестнадесетичен 2E = 46 в денари.
- Преобразувайте шестнадесетичен 2F в десетичен знак: (2 × 16¹) + (15 × 16⁰) = 32 + 15 = 47. Шестнадесетичен 2F = 47 в десетичен знак.
- Преобразувайте шестнадесетичен 30 в денари: (3 × 16¹) + (0 × 16⁰) = 48 + 0 = 48. Шестнадесетичен 30 = 48 в денари.
- Преобразувайте шестнадесетичен 32 в десетичен знак: (3 × 16¹) + (2 × 16⁰) = 48 + 2 = 50. Шестнадесетичен 32 = 50 в десетичен знак.
- Преобразувайте шестнадесетичен 3C в десетичен знак: (3 × 16¹) + (12 × 16⁰) = 48 + 12 = 60. Шестнадесетичен 3C = 60 в десетичен знак.
- Преобразувайте шестнадесетичен 3B2 в десетичен знак: (3 × 16²) + (11 × 16¹) + (2 × 16⁰) = 768 + 176 + 2 = 946. Шестнадесетичен 3B2 = 946 в десетичен знак.
- Преобразуване на шестнадесетичен 34.3 в двоичен: Шестнадесетичен 34 преобразува в 00110100 в двоичен, а шестнадесетичен .3 преобразува в .0011 в двоичен. Шестнадесетичен 34.3 = 00110100.0011 в двоична система.
За десетично преобразуване в шестнадесетичен, приложете повторно деление. За да преобразувате десетично 5000 в шестнадесетично: 5000 ÷ 16 = 312 остатък 8; 312 ÷ 16 = 19 остатък 8; 19 ÷ 16 = 1 остатък 3; 1 ÷ 16 = 0 остатък 1. Четене на остатъците от последния към първия: десетично 5000 = 1388 в шестнадесетичен.
Таблица за преобразуване на шестнадесетичен в десетичен
Таблицата за преобразуване на шестнадесетичен в десетичен по-долу изброява шестнадесетични (база-16) стойности заедно с техните десетични (база-10) еквиваленти и позиционното изчисление стъпка по стъпка. Едноцифрените шестнадесетични стойности от 0 до 9 са идентични и в двете системи. 6-те шестнадесетични букви от A до F съответстват на десетични стойности от 10 до 15.
| Hex (Base-16) | Decimal (Base-10) | Calculation |
|---|---|---|
| 0 | 0 | — |
| 1 | 1 | — |
| 2 | 2 | — |
| 3 | 3 | — |
| 4 | 4 | — |
| 5 | 5 | — |
| 6 | 6 | — |
| 7 | 7 | — |
| 8 | 8 | — |
| 9 | 9 | — |
| A | 10 | — |
| B | 11 | — |
| C | 12 | — |
| D | 13 | — |
| E | 14 | — |
| F | 15 | — |
| 10 | 16 | 1×16¹ + 0×16⁰ = 16 |
| 11 | 17 | 1×16¹ + 1×16⁰ = 17 |
| 12 | 18 | 1×16¹ + 2×16⁰ = 18 |
| 13 | 19 | 1×16¹ + 3×16⁰ = 19 |
| 14 | 20 | 1×16¹ + 4×16⁰ = 20 |
| 15 | 21 | 1×16¹ + 5×16⁰ = 21 |
| 16 | 22 | 1×16¹ + 6×16⁰ = 22 |
| 17 | 23 | 1×16¹ + 7×16⁰ = 23 |
| 18 | 24 | 1×16¹ + 8×16⁰ = 24 |
| 19 | 25 | 1×16¹ + 9×16⁰ = 25 |
| 1A | 26 | 1×16¹ + 10×16⁰ = 26 |
| 1B | 27 | 1×16¹ + 11×16⁰ = 27 |
| 1C | 28 | 1×16¹ + 12×16⁰ = 28 |
| 1D | 29 | 1×16¹ + 13×16⁰ = 29 |
| 1E | 30 | 1×16¹ + 14×16⁰ = 30 |
| 1F | 31 | 1×16¹ + 15×16⁰ = 31 |
| 20 | 32 | 2×16¹ + 0×16⁰ = 32 |
| 22 | 34 | 2×16¹ + 2×16⁰ = 34 |
| 2A | 42 | 2×16¹ + 10×16⁰ = 42 |
| 2C | 44 | 2×16¹ + 12×16⁰ = 44 |
| 2E | 46 | 2×16¹ + 14×16⁰ = 46 |
| 2F | 47 | 2×16¹ + 15×16⁰ = 47 |
| 30 | 48 | 3×16¹ + 0×16⁰ = 48 |
| 32 | 50 | 3×16¹ + 2×16⁰ = 50 |
| 3C | 60 | 3×16¹ + 12×16⁰ = 60 |
| 40 | 64 | 4×16¹ + 0×16⁰ = 64 |
| 50 | 80 | 5×16¹ + 0×16⁰ = 80 |
| 60 | 96 | 6×16¹ + 0×16⁰ = 96 |
| 70 | 112 | 7×16¹ + 0×16⁰ = 112 |
| 80 | 128 | 8×16¹ + 0×16⁰ = 128 |
| 90 | 144 | 9×16¹ + 0×16⁰ = 144 |
| A0 | 160 | 10×16¹ + 0×16⁰ = 160 |
| B0 | 176 | 11×16¹ + 0×16⁰ = 176 |
| C0 | 192 | 12×16¹ + 0×16⁰ = 192 |
| D0 | 208 | 13×16¹ + 0×16⁰ = 208 |
| E0 | 224 | 14×16¹ + 0×16⁰ = 224 |
| F0 | 240 | 15×16¹ + 0×16⁰ = 240 |
| FF | 255 | 15×16¹ + 15×16⁰ = 255 |
| 100 | 256 | 1×16² + 0×16¹ + 0×16⁰ = 256 |
| 200 | 512 | 2×16² + 0×16¹ + 0×16⁰ = 512 |
| 300 | 768 | 3×16² + 0×16¹ + 0×16⁰ = 768 |
| 400 | 1024 | 4×16² + 0×16¹ + 0×16⁰ = 1024 |
| 3B2 | 946 | 3×16² + 11×16¹ + 2×16⁰ = 946 |
| 1388 | 5000 | 1×16³ + 3×16² + 8×16¹ + 8×16⁰ = 5000 |
Разгледайте нашите специализирани инструменти
CMYK към HEX конвертор
Hex Dump конвертор
Hex Endian конвертор
Шестнадесетичен IEEE 754 конвертор
Конвертор с шестнадесетичен знак/без знак
Шестнадесетичен към ASCII конвертор
Конвертор от шестнадесетичен към асемблиран
Конвертор от шестнадесетичен към Base64
Конвертор от шестнадесетичен към BCD
Конвертор HEX към CMYK
Конвертор от шестнадесетичен към EBCDIC
HEX към HSL конвертор
Конвертор HEX към HSV
Конвертор на шестнадесетичен към IP адрес
Конвертор на шестнадесетичен към MAC адрес
Конвертор HEX към OKLCH
Конвертор HEX към Pantone
Шестнадесетичен към PCAP конвертор
Конвертор HEX към RAL
HEX към RGB конвертор
Конвертор HEX към RGBA
Конвертор Hex към UF2
Конвертор от шестнадесетичен към Unicode
Конвертор от шестнадесетичен към UTF-8
Шестнадесетичен UUID конвертор
Шестнадесетичен XOR калкулатор
HSL към HEX конвертор
HSV към HEX конвертор
RGB към HEX конвертор
Frequently Asked Questions
Какво е шестнадесетичен?
Шестнадесетичната е числова система с основа 16, която използва 16 символа: цифрите от 0 до 9 и буквите от A до F. Всяка шестнадесетична цифра представлява 4 двоични цифри, така че 2 шестнадесетични цифри винаги се равняват на 1 байт. Компютрите използват шестнадесетичен формат за показване на необработени данни във форма, която остава кратка и четлива.
Какво е шестнадесетичен конвертор?
Шестнадесетичният конвертор е инструмент, който преобразува стойност между шестнадесетичен и друг числов формат, като десетичен, двоичен, осмичен или текстов. Въвеждате стойност в едно поле и инструментът връща еквивалентната стойност в целевия формат в рамките на същата стъпка.
Как да конвертирам шестнадесетичен в десетичен?
Умножете всяка шестнадесетична цифра по 16, повдигната до нейната позиция, след което добавете резултатите заедно. Шестнадесетичната стойност 1A3 се преобразува в десетична 419: (1 × 256) + (10 × 16) + (3 × 1) = 256 + 160 + 3 = 419.
Как да преобразувам десетичен знак в шестнадесетичен?
Разделете десетичното число на 16, запишете остатъка като шестнадесетична цифра, след което повторете делението на частното, докато частното достигне 0. Четенето на остатъците в обратен ред дава шестнадесетичната стойност. Десетично 1500 се преобразува в шестнадесетичен 5DC с помощта на този метод: 1500 ÷ 16 = 93 остатък 12 (C), 93 ÷ 16 = 5 остатък 13 (D), 5 ÷ 16 = 0 остатък 5. Четенето на остатъците назад дава 5DC.
Как да конвертирам шестнадесетичен в двоичен?
Заменете всяка шестнадесетична цифра с нейния 4-битов двоичен еквивалент, след което съединете групите заедно по ред. Шестнадесетичната стойност 2AA се преобразува в двоична 0010 1010 1010, тъй като 2 е 0010, а A е 1010 във всяка от двете оставащи позиции.
Как да конвертирам двоичен в шестнадесетичен?
Групирайте двоичните цифри в набори от 4, като започнете отдясно, допълвайки най-лявата група с нули, ако има по-малко от 4 цифри, след което преобразувайте всяка група в нейната шестнадесетична цифра. Двоичната стойност 1010101010 се преобразува в шестнадесетичен 2AA: групирани като 0010 1010 1010, което се чете като 2, A, A.
Как да конвертирам шестнадесетичен в осмичен?
Първо преобразувайте шестнадесетичната стойност в двоична, след това прегрупирайте двоичните цифри в комплекти от 3 отдясно, след което преобразувайте всяка група от 3 в нейната осмична цифра. Шестнадесетичната стойност FF се преобразува в осмична 377: FF е двоично 11111111, групирано като 011 111 111, което се чете като 3, 7, 7.
Как да конвертирам шестнадесетичен в текст?
Разделете шестнадесетичния низ на двойки байтове от 2 знака, преобразувайте всяка двойка в нейната десетична стойност, след което прочетете тези байтове като знаци, използвайки ASCII или UTF-8. Шестнадесетичният низ 48 65 6C 6C 6F се декодира до “Hello”, тъй като 48 е H, 65 е e, 6C е l, 6C е l и 6F е o.
Как да конвертирам шестнадесетичен в ASCII?
Преобразувайте шестнадесетичен в ASCII по същия начин, както шестнадесетичен в текст: разделете шестнадесетичния низ на двойки байтове, преобразувайте всяка двойка в десетична, след това съпоставете тази десетична стойност с ASCII таблицата. ASCII покрива само стойности на байтове от 0 до 127 (00 до 7F в шестнадесетичен), така че всеки байт над 7F попада извън стандартния ASCII и вместо това се нуждае от UTF-8 декодиране.
Как да конвертирам шестнадесетичен в UTF-8?
За байтови стойности от 00 до 7F преобразуването от шестнадесетичен към UTF-8 работи точно като шестнадесетичен към ASCII, с 1 байт на знак. За стойности на байтове над 7F UTF-8 използва многобайтови последователности, така че конверторът чете 2, 3 или 4 шестнадесетични байта заедно, за да декодира правилно един знак.
Как да конвертирам текст в шестнадесетичен?
Преобразувайте всеки знак в неговата байтова стойност, като използвате неговото кодиране на знаци, след което запишете всяка байтова стойност като шестнадесетична двойка от 2 знака. Текстът “Hi” се преобразува в шестнадесетичен 48 69, тъй като H е равно на десетична 72 (шестнадесетична 48), а i е равна на десетична 105 (шестнадесетична 69).
Каква е разликата между шестнадесетичен и двоичен?
Двоичните използват 2 символа (0 и 1), докато шестнадесетичните използват 16 символа (0-9 и A-F). Една шестнадесетична цифра винаги се равнява на 4 двоични цифри, така че шестнадесетичната представлява едни и същи данни, използвайки една четвърт от знаците. Байтът 0xFF в шестнадесетичен е 11111111 в двоичен код.
Какво означава префиксът 0x?
Префиксът 0x маркира стойност като шестнадесетична, а не десетична. Без него “10” е двусмислено между десет (десетичен) и шестнадесет (шестнадесетичен). Префиксът започна в езика за програмиране C и сега се появява в повечето езици за програмиране и блокчейн протоколи. Адресите на Ethereum винаги носят префикс 0x; Биткойн обикновено не го прави.
Могат ли шестнадесетичните числа да съдържат букви?
Да, шестнадесетичните числа съдържат 6 букви: A, B, C, D, E и F. Тези букви представляват десетичните стойности от 10 до 15, запълвайки празнината, оставена от десетичните едноцифрени символа (0-9) в 16-символна система.
Чувствителен ли е към главни и малки букви в шестнадесетичния знак?
Не, шестнадесетичните букви не са чувствителни към малки и големи букви за тяхната цифрова стойност. FF и ff са равни на 255 след десетичната запетая и повечето преобразуватели приемат регистър или комбинация от двете. Едно изключение съществува в Ethereum, където контролните суми на адреси кодират допълнителна информация в главни букви, така че промяната на главния регистър на адреса на Ethereum може да направи невалидна контролната му сума, въпреки че основната стойност остава същата.
Колко байта има шестнадесетична стойност?
Шестнадесетичната стойност съдържа 1 байт за всеки 2 шестнадесетични цифри, тъй като всяка шестнадесетична цифра представлява 4 бита, а байтът съдържа 8 бита. Стойност от 2 знака като FF е 1 байт, стойност от 4 знака като 1A3F е 2 байта, а стойност от 64 знака, обичайна за криптографските хешове, е 32 байта.
Могат ли шестнадесетичните стойности да съдържат интервали?
Не, необработеното шестнадесетично кодиране не включва интервали като част от самите данни. Интервали или двоеточие понякога се добавят между двойки байтове за четливост, като 48 65 6C 6C 6F или 48:65:6C:6C:6F. Повечето инструменти за шестнадесетично преобразуване премахват тези разделители автоматично, преди да обработят стойността.
Колко голямо може да бъде едно шестнадесетично число?
Няма фиксирано ограничение за размера на шестнадесетично число. Блокчейн приложенията обикновено използват 32-байтови (256-битови) стойности за хешове и 20-байтови (160-битови) стойности за адреси. 32-байтов шестнадесетичен низ е с дължина 64 знака и може да представлява числа до приблизително 1,16 × 10⁷⁷ в десетичен знак, което изисква аритметика с произволна точност за преобразуване без грешки при закръгляване.
За какво се използва шестнадесетично число в блокчейн?
Шестнадесетичният представлява почти всички необработени блокчейн данни, включително идентификатори на транзакции, хешове на блокове, публични ключове, адреси, кодове за операции на скриптове и данни за извикване на интелигентни договори. Шестнадесетичният преобразува директно в двоични данни, с 2 шестнадесетични знака, равни на 1 байт, което поддържа данните на протокола от ниско ниво компактни и четими едновременно.
Защо блокчейн изследователите показват данни в шестнадесетичен?
Изследователите на блокчейн показват данни в шестнадесетичен, тъй като шестнадесетичният запазва точната байтова структура без интерпретация. Операционните кодове, байтовете на версията, адресните префикси и хеш изходите остават видими и могат да се проверят в шестнадесетичен. Десетичният би замъглил структурата на ниво байт, а двоичният би заел твърде много място за четене.
Как мога да отстраня неправилно шестнадесетично преобразуване?
Проверете 5 често срещани източника на грешка, когато шестнадесетичното преобразуване изглежда грешно: водещо или завършващо празно пространство във входа, непремахнат префикс 0x, ред на байтовете (endianness), несъответстващ между четения с голям и малък ред, интерпретация със знак срещу незнак на едни и същи битове и изпусната водеща нула, която измества позицията на всяка цифра. Сравняването на стойността с известен запис в таблицата за преобразуване, като FF, равен на 255, изолира коя от тези 5 причини е приложима.