If you're seeing this message, it means we're having trouble loading external resources on our website.

Ако си зад уеб филтър, моля, увери се, че домейните *. kastatic.org и *. kasandbox.org са разрешени.

Основно съдържание

Шестнайсетични числа

Двоичните числа са чудесен начин компютрите да представят числа. Обаче не са толкова удобни за хората – толкова са дълги, че отнема известно време, за да се преброят всички 0-и и 1-ци. Когато компютърните инженери боравят с числа, те често използват или десетичната или шестнадесетичната бройна система. Да, още една бройна система!
За щастие, бройните системи имат повече прилики, отколкото разлики и сега, когато знаеш чудесно десетичната и двоичната, надяваме се, че шестнадесетичната ще ти е интуитивна.
В десетичната система всяка цифра представя степен на 10 – единиците, десетиците и т.н. Наричаме 10 основата на десетичната бройна система.
Провери наученото
Коя е основата на двоичната бройна система?
Всяка цифра представя степен на
  • Отговорът ти трябва да бъде
  • цяло число, като 6
  • несъкратима правилна дроб, като 3/5
  • несъкратима неправилна дроб, като 7/4
  • смесено число като 1 3/4
  • точна десетична дроб като 0.75
  • кратно на ПИ като 12 pi или 2/3 pi

В шестнадесетичната бройна система всяка цифра представя степен на 16.
Ето как се брои до 10 шестнадесетично: 1, 2, 3, 4, 5, 6, 7, 8, 9, A.
Това изглежда доста познато, докато не стигнем последното "число" A. Знаеш ли, в шестнадесетичната система всяка цифра трябва да представя стойностите 0-15, но десетичните числа 10-15 не се побират в една цифра. За да се справи с този проблем, шестнадесетичната система използва буквите A-F, за да представи числата 10-15.
Така, нека броим от 10 до 15: A, B, C, D, E, F. Странно, но вярно!
Всъщност през годините е имало множество различни предложения за това как да се представят стойностите 10-15, но A-F е решението, което е спечелило.
А сега да преброим по-нагоре. Това е десетичното число 24, представено в шестнадесетичен вид 18:
18
161
161160
Това число изисква две цифри, като дясната цифра представя единиците (160), а лявата цифра представя шестнадесетиците (161). Също както сумирахме десетични и двоични числа, можем да сумираме и (116)+(81) и да видим, че 18 е равно на десетичната стойност 24.
Да опитаме число, което съдържа буква. Ето го десетичното число 27, представено в шестнадесетичен вид като 1B:
1B
161
161160
За да разберем този пример, първо трябва да си спомним, че B представя стойността 11. Аз го правя, като броя буквите на пръсти, но ти можеш да го правиш както ти е удобно, стига да запомниш, че трябва да започнеш от A, представящо 10.
След това сумираме както по-рано и виждаме, че (116)+(111) е равно на десетичната стойност 27.
Провери наученото
Да проверим дали започваш да добиваш представа. Коя десетична стойност е представена с шестнадесетичното число 1F?
  • Отговорът ти трябва да бъде
  • цяло число, като 6
  • несъкратима правилна дроб, като 3/5
  • несъкратима неправилна дроб, като 7/4
  • смесено число като 1 3/4
  • точна десетична дроб като 0.75
  • кратно на ПИ като 12 pi или 2/3 pi

Защо основа 16?

На този етап може би се чудиш какво толкова ѝ харесват на шестнадесетичната система компютърните инженери. Защо да използваме система, в която са ни нужни букви, за да представяме числа? Малко историческо отклонение ще ни покаже защо...
Ранните компютри използвали 4-битови архитектури, което означава, че те винаги са обработвали битовете в групи по 4. Това е причината все още да записваме битовете в групи по 4, както когато пишем 0111, за да представим десетичното 7, въпреки че можем да напишем само 111.
Колко стойности могат да представят 4 бита? Най-малката стойност е 0 (само нули – 0000), а най-голямата стойност е 15 (само единици – 1111), така че 4 бита могат да представят 16 уникални стойности. Аха, ето го числото 16!
Всяка група от 4 бита двоично е една цифра в шестнадесетичната система. Това прави много лесно превръщането на двоични числа в шестнадесетични числа и ги прави естествени за използване и в компютрите.

Превръщане на двоични в шестнадесетични числа

Нека докажем колко добре се разбират двоичните и шестнадесетичните числа, като превръщаме от двоични в шестнадесетични.
Ще започнем с късо двоично число:
0010
То е дълго 4 бита, което означава, че отговаря на една шестнадесетична цифра. Има 0 на всяка позиция, с изключение на позицията на двойките, следователно е равно на десетичното число 2. И десетичната, и шестнадесетичната системи представят числата 0-9 по един и същ начин, така че 0010 е просто 2 в шестнадесетичен запис.
Да опитаме с по-дълго двоично число:
1001101001101100
Един подход би бил да разберем какво десетично число е представено от този дълъг низ от нули и единици и след това да превърнем него в шестнадесетично. Този подход ще свърши работа, но, човече, звучи като много работа за такова число.
По-лесният подход е да превръщаме всяка група от по 4 бита наведнъж.
Започвайки с най-лявата група 1001, която е равна на (18)+(11), десетичното число 9. Това число е по-малко от 10, така че 1001 е просто 9 шестнадесетично.
Следващата група е 1010, или (18)+(12), десетичната стойност 10. Това число изисква буквено представяне в шестнадесетичен вид – A.
Следващата група е 0110, или (14)+(12), десетичната стойност 6. Това число е същото в шестнадесетичен вид – 6.
Последната група е 1100, или (18)+(14), деесетичната стойност 12. Tова число изисква буквено представяне в шестнадесетичен вид – C.
Крайният ни шестнадесетичен резултат е 9A6C. Направихме това преобразуване без да знаем кое десетично число е представено. Сега ще разкрия и двете 1001101001101100 и 9A6C са равни на десетичното число 39 532. Това е ужасно голямо число – радвам се, че го превърнахме цифра по цифра.
Провери наученото
Сега опитай ти. На кое шестнадесетично число е равно това двоично число?
1011100100011000
Избери един отговор:

Модели в шестнадесетичните числа

Хайде да придобием малко интуиция за шестнадесетичната бройна система.
Първо: какво е най-голямото число за даден брой цифри? В десетичната система това са само деветки, като 9999. В двоичната система това са само единици, като 1111.
В този случай в шестнадесетичната система всяка цифра е FFFFF. Когато видим такова число знаем, че то представя най-голямата възможна стойност за този брой цифри. За да представим което и да било по-голямо число, ще ни трябват повече цифри.
Добре, колко представя голямо число като това? Можем да използваме същото правило, както при двоичната система – най-голямото число, което може да се представи с даден брой цифри n, е същото, като 16n1. Сега, след като работим с основа 16, вместо основа 2, може да ни се наложи да използваме калкулатор, за да се справим.
Тук имаме таблица с първите 4 големи стойности:
ЦифриНай-голямо шестнадесетичноДесетична равностойност
1F15(1611)
2FF255(1621)
3FFF4095(1631)
4FFFF65535(1641)
Провери наученото
Таблицата показва най-големите стойности за всеки брой цифри. Кой е общият брой уникални стойности, които могат да се представят с 2 цифри?
  • Отговорът ти трябва да бъде
  • цяло число, като 6
  • несъкратима правилна дроб, като 3/5
  • несъкратима неправилна дроб, като 7/4
  • смесено число като 1 3/4
  • точна десетична дроб като 0.75
  • кратно на ПИ като 12 pi или 2/3 pi

Приложение на шестнадесетичната бройна система

В този раздел за принципите на работа на компютрите ще се занимаваме предимно с двоични числа. Важно е обаче да разбираш и шестнадесетичните, тъй като те ще се появяват в следващите раздели, а и като цяло в ежедневието на програмистите.
Един пример от моя опит – разработчиците на сайтове използват шестнадесетични числа, за да представят цветовете. Описваме цветовете като комбинация от три съставки: червено, зелено и синьо. Всяка от тези съставки може да се променя между 0 и 255. Синият цвят може да се запише така rgb(0, 0, 255) или с по-съкратената шестнадесетична версия, #0000FF. Използвайки тази нотация, можем да опишем 166 уникални цвята — повече от 16 милиона цвята!
Сега, след като се запозна с шестнадесетичните числа, отваряй си очите за тях. Често ще ги виждаш записани с 0x пред тях, като 0x4F или можеш да разпознаеш отличителната им смесица от 0-9 с A-F. Ако забележиш интересно тяхно приложение в ежедневието, сподели откритието си по-долу в секцията "Съвети и благодарности".

🙋🏽🙋🏻‍♀️🙋🏿‍♂️Имаш ли въпроси по темата? Ще се радваме да ти отговорим, просто задай въпросите си по-долу!

Искаш ли да се присъединиш към разговора?

Все още няма публикации.
Разбираш ли английски? Натисни тук, за да видиш още дискусии в английския сайт на Кан Академия.