Шестнайсетична бройна система | бройна система, съставена от 16 символа (основа 16)
Шестнадесетичната бройна система, често съкращавана до "шестнадесетична", е бройна система, съставена от 16 символа (основа 16). Стандартната бройна система се нарича десетична (основа 10) и използва десет символа: 0,1,2,3,4,5,6,7,8,9. Шестнадесетичната система използва десетичните числа и шест допълнителни символа. Няма цифрови символи, които да представят стойности, по-големи от девет, затова се използват букви от английската азбука, а именно A, B, C, D, E и F. Шестнадесетична A = десетична 10, а шестнадесетична F = десетична 15.
Хората използват предимно десетичната система (основа 10), където всяка цифра може да има една от десетте стойности между нула и десет. Това вероятно се дължи на факта, че хората имат десет пръста на ръцете си. Компютрите обикновено представят числата в двоична система (основа 2). В двоичната система всяка "двоична цифра" се нарича бит и може да има само една от две стойности: единица или нула. Тъй като двете възможни стойности на един бит представляват една пета от информацията, която може да бъде предадена от десетте възможни стойности на десетичната цифра, двоичното представяне на цели числа може да изисква много повече (двоични) битове, отколкото десетични цифри.
Например трицифрената десетична стойност 219 се нуждае от осем бита, за да бъде представена в двоична бройна система (11011011). Хората смятат, че четенето, запомнянето и въвеждането на дълги поредици от битове е неудобно. Шестнадесетичната система позволява групи от четири бита да се представят по-удобно с една единствена "шестнадесетична" цифра, така че осембитовата двоична стойност 11011011 изисква само две шестнадесетични цифри "DB".
Компютърната памет е организирана като масив от низове от битове, наречени байтове. В съвременните компютри всеки байт обикновено съдържа осем бита, които могат да бъдат представени като две шестнадесетични цифри. Инженерите и компютърните специалисти често наричат всяка от тези четирибитови стойности "нибъл" (понякога се изписва "нибъл", вж. компютърния жаргон).
За да се избегне объркване с десетична, осмична или други системи за номериране, шестнадесетичните числа понякога се изписват с "h" след или "0x" преди числото. Например 63h и 0x63 означават 63 шестнадесетични числа.
История
За разлика от съвременните компютри, много ранни компютри са имали шестбитови байтове. Програмистите на тези системи обикновено използваха алтернативна схема за групиране на битовете, наречена осмична. Всяка осмична цифра ефективно представлява три бита, а шестбитов байт може да бъде представен като две осмични цифри. Три бита, всеки от които е включен или изключен, могат да представят осемте числа от 0 до 7: 000 = 0; 001 = 1; 010 = 2; 011 = 3; 100 = 4; 101 = 5; 110 = 6 и 111 = 7.
Шестнадесетични стойности
Шестнадесетичната бройна система е подобна на осмичната бройна система (основа 8), тъй като всяка от тях може лесно да се сравни с двоичната бройна система. Шестнадесетичната система използва четирибитово двоично кодиране. Това означава, че всяка цифра в шестнадесетичната система е същата като четири цифри в двоичната система. Окталната система използва трибитова двоична система.
В десетичната система първата цифра е мястото на единицата, следващата цифра вляво е мястото на десетката, следващата е мястото на стотицата и т.н. В шестнадесетичната система всяка цифра може да има 16 стойности, а не 10. Това означава, че цифрите имат място на единицата, място на шестнайсетицата, а следващата е място на 256. Така че 1h = 1 в десетична бройна система, 10h = 16 в десетична бройна система, а 100h = 256 в десетична бройна система.
Примерни стойности на шестнадесетични числа, преобразувани в двоична, осмична и десетична бройна система.
|
Преобразуване
Превръщане на двоична в шестнадесетична система
Промяната на числото от двоично в шестнадесетично използва метод за групиране. Двоичното число се разделя на групи от по четири цифри, като се започва отдясно. След това тези групи се преобразуват в шестнадесетични цифри, както е показано в таблицата по-горе за шестнадесетичните числа от 0 до F. За да се промени от шестнадесетична система, се прави обратното. Всяка от шестнайсетичните цифри се превръща в двоична и групирането обикновено се премахва.
Двоичен | Групировки | Hex | |||
01100101 | 0110 | 0101 | 65 | ||
010010110110 | 0100 | 1011 | 0110 | 4B6 | |
1101011101011010 | 1101 | 0111 | 0101 | 1010 | D75A |
Когато броят на битовете в двоичното число не е кратен на 4, той се допълва с нули, за да стане такъв. Примери:
- двоичен 110 = 0110, което е 6 Hex.
- двоичен код 010010 = 00010010, което е 12 Hex.
Превръщане на шестнадесетично в десетично число
За преобразуване на дадено число от шестнадесетична в десетична система има два общи начина.
Първият метод е по-често прилаган при ръчно конвертиране:
- Използвайте десетичната стойност за всяка шестнадесетична цифра. За 0-9 тя е същата, но A = 10, B = 11, C = 12, D = 13, E = 14 и F = 15.
- Съхранявайте сбора на числата, преобразувани на всяка стъпка по-долу.
- Започнете с най-малката шестнадесетична цифра. Това е цифрата в десния край. Това ще бъде първият елемент в сумата.
- Вземете втората най-малка цифра. Тя е до цифрата в десния край. Умножете десетичната стойност на цифрата по 16. Добавете това към сумата.
- Направете същото и за третата най-малка цифра, но я умножете по 162 (т.е. 16 на квадрат или 256). Добавете я към сумата.
- Продължете за всяка цифра, като умножавате всяко място с друга степен на 16. (4096, 65536 и т.н.)
| Местоположение | |||||
6 | 5 | 4 | 3 | 2 | 1 | |
Стойност | 1048576 (16 )5 | 65536 (16 )4 | 4096 (16 )3 | 256 (16 )2 | 16 (16 )1 | 1 (16 )0 |
Следващият метод се прилага по-често при преобразуване на число в софтуер. Не е необходимо да се знае колко цифри има числото, преди да започне, и никога не се умножава по повече от 16, но на хартия изглежда по-дълъг.
- Използвайте десетичната стойност за всяка шестнадесетична цифра. За 0-9 тя е същата, но A = 10, B = 11, C = 12, D = 13, E = 14 и F = 15.
- Съхранявайте сбора на числата, преобразувани на всяка стъпка по-долу.
- Започнете с най-значимата цифра (цифрата вляво). Това е първият елемент в сумата.
- Ако има друга цифра, умножете сумата по 16 и добавете десетичната стойност на следващата цифра.
- Повтаряйте горната стъпка, докато няма повече цифри.
Пример: 5Fh и 3425h в десетична бройна система, метод 1
|
|
|
|
Пример: 5Fh и 3425h в десетична бройна система, метод 2
|
|
|
|
Въпроси и отговори
В: Какво представлява шестнадесетичната бройна система?
О: Шестнадесетичната бройна система е бройна система с основа 16, съставена от 16 символа.
В: Кои са десетте символа, използвани в десетичната бройна система (основа 10)?
О: Десетте символа, използвани в десетичната бройна система (основа 10), са 0,1,2,3,4,5,6,7,8 и 9.
В: Какви шест допълнителни символа използва шестнадесетичната система?
О: Шестнадесетичната система използва букви от английската азбука - A, B, C, D, E и F.
В: Колко бита съдържа един байт в съвременните компютри?
О: При съвременните компютри всеки байт обикновено съдържа осем бита.
В: Какво наричат инженерите и компютърните специалисти четирибитови стойности?
О.: Инженерите и компютърните специалисти наричат четирибитовите стойности "нибъл" (понякога се изписва "нибъл").
В: Как можете да избегнете объркване с други системи за номериране, когато записвате шестнадесетични числа?
О: За да избегнете объркване с други системи за номериране, когато пишете шестнадесетични числа, можете да добавите "h" след или "0x" преди числото. Например 63h или 0x63 означава 63 в шестнадесетична бройна система.