Разлика между версии на „Шестнайсетична бройна система“

поправена граматика
(Грешки в статичния код: Грешно разположено съдържание; форматиране: 13x кавички, 7x тире, 4x тире-числа, URL (ползвайки Advisor))
(поправена граматика)
'''Шестнайсетичната бройна система''' е [[Бройна система#Позиционни бройни системи|позиционна бройна система]], с [[Основа на бройна система|основа]] 16, в която числата се представят с помощта на 16 динамични символа. Символите от '''0 – -9''' са представени чрез [[арабски цифри]], а латинските букви '''A, B, C, D, E, F (или a-f)''' се ползват за стойностите от 10 до 15. Всяка шестнайсетична цифра се представя като група от четири двоични цифри ([[бит]]). Причина за това е, че за съхраняването на данните в [[Оперативна памет|оперативната памет]] на електронноизчислителни машини се използва [[двоичен код]].
 
== Представяне ==
=== Писмено представяне ===
==== Използване на 0 – -9 и A-F ====
<table border="0" cellspacing="0" cellpadding="0" class="infobox" style="text-align: center; border: 2px">
<tr style="background:black; height:2px"><td colspan="12" style="background:black; width:2px"></td></tr>
</table>
 
За да не се обърква представянето на символите в различните бройни системи се използват няколко установени практики. Една от тях е при изписването на знаците да се слага долен индекс, който показва основата на бройната система. Например 119<sub>10</sub> в [[Десетична бройна система|десетична]] и е равно на 77<sub>16</sub> в шестнайсетична. Други предпочитат индекса да е текстов: 119<sub>decimal</sub> или 119<sub>d</sub> – десетична, 77<sub>hex</sub> или 77<sub>h</sub>– шестнайсетична. Изписването на отрицателни числа става по същият начин както и в десетична бройна система с „-“.
 
При разработката на софтуер сасе разработиизползват различни методи за представянето на шестнайсетичните символи:
* В [[URI|URIs]] (както и в [[URL]]s), низ от символи написан като шестнайсетична двойка се изписва с „%“: <code><nowiki>http://www.example.com/name%20with%20spaces</nowiki></code>, където %20 е празното място между знаците (стойности 20<sub>16</sub> и 32<sub>10</sub>).
* В [[XML]] и [[XHTML]] знаците могат да бъдат изразени с аритметични кодкодове като „&#xcode“, където „code“ e 1 – 6 цифрено шестнайсетично число добавено към символ от [Уникод|Unicode]. Вследствие &#x007А е еквивалент на „z“([[Уникод|Unicode]] стойност 007А, десетична 122)
*Цветовата гама в [[HTML]], [[CSS]] и [[X WindowsWindow System]] могат да бъдат изразени с шест цифрен шестнайсетичен код (по две за червено, зелено и синьо, съответно подредени в този ред), предхождан с #: бялото се възпроизвежда с #FFFFFF. В [CSS] това може да се представи и с 3 знака #FFF (бяло)
* В програмнипрограмните езици като [[C++]], [[C Sharp|C#]], [[Java]], [[JavaScript]], [[Python]] и Windows PowerShell се пише 0x пред шестнайсетичното число: 0xA12. Символи или символни [[Низ|низове]] могат да се представят с \x последвани от два шестнайсетични символа:\x1B.а
* Други езици като [[Паскал (език)|Pascal]], [[Delphi]], някои версии на [[BASIC]] ( Commodore ), GML и [[Forth]] използватеизползват $ като префикс: $ 5A3.ac
* В [[Уникод|Unicode]] стандарт, символна стойност се представя с "U +", следвана от шестнайсетиченшестнайсетична стойност: U +03B1 – гръцката буква [[Алфа (буква)|алфа]] (α).
* Всички [[IPv6]] адреси могат да бъдат записани като осем групи от по четири шестнайсетични цифри, където всяка група е отделена от двоеточие ( : ). Валиден [[IPv6]] адрес: 2001:0 db8: 85a3: 0000:0000:8 A2E: 0370:7334
 
=== Ранните писмени представяния ===
* The Librascope LGP-30 използва букви F, G, J, K, Q и W.
 
== Ранно използване на шестнайсетичнашестнайсетичната бройна система в компютъра ==
[[Двоична бройна система|Двоичната бройна система]] е много добра за [[Компютър|компютрите]], но има малък недостатък – броят на цифрите расте неимоверно бързо. Както се оказва, има и друга бройна схема, която също е благоприятна за компютрите: '''шестнайсетичната'''. Преди години, когато компютърът е бил все още съвсем ново откритие, хората, които го проектирали осъзнали, че трябва да се създаде '''стандарт''' за съхранение на информация. Тъй като компютрите могат да смятат само с двоични числа – '''букви, текст''' и други символи трябвало да бъдат съхранени като числа. Но притеснението им не е било само това. Те трябвало да се уверят, че числото, което, представя примерно ‘А’, ще бъде едно и също на всички компютри. За да се улесни това се създала [[ASCII]] (от Английски език – '''American Standard Code for Information Interchange''') таблицата. В нея има невидими символи, които изпълняват определи функции, като отместване на указателя (09), звън (07). Могат да се използват различни комбинации на само осем двоични цифри, или битове, за да се представи всеки символ на ASCII графиката. '''128 знака''' можели да изглеждат много, но не след дълго разработчиците забелязали липсата на много от специалните гласни, използвани от '''[[Латински език|латинския език]]''', различни от [[Английски език|английския език]] като например: ä, é, û и Æ. Също липсвали и математически символи (±, µ, °, ¼) и знаци за парични валути, различни от ($) като (£, ¥, ¢). За да се компенсира тази липса, '''ASCII''' таблицата била разширена от '''128''' на '''256''' символа.
'''128 знака''' можели да изглеждат много, но не след дълго разработчиците забелязали липсата на много от специалните гласни, използвани от '''[[Латински език|латинския език]]''', различни от [[Английски език|английския език]] като например: ä, é, û и Æ. Също липсвали и математически символи (±, µ, °, ¼) и знаци за парични валути, различни от ($) като (£, ¥, ¢). За да се компенсира тази липса, '''ASCII''' таблицата била разширена от '''128''' на '''256''' символа.
 
Стойността на 256 може да бъде представена като '''<math>16^2</math>'''(шестнайсет на втора степенквадрат), което ни връща към '''шестнайсетична бройна система'''. Оказва се, че всеки символ на ASCII таблицата може да се представи чрез двуцифрено число в шестнайсетична бройна система – от 00 до FF.
 
== Преобразуване ==
 
=== От Двоична в Шестнайсетична ===
Ако искаме да сметнем числото 01101000101000101111 <sub>(2)</sub> до число с база <sub>(16)</sub>, първо се разделя двоичното число на групи от по четири:
 
0110 1000 1010 0010 1111
1111 = F
 
Когато се съберат се получава, че 01101000101000101111 <sub>(2)</sub> = 68A2F<sub>(16)</sub>.
 
=== От Шестнайсетична в Двоична ===
F = 1111
 
Когато се съберат се получава, че = 68A2F<sub>(16)</sub> = 01101000101000101111 <sub>(2)</sub>.
 
=== От Десетична в Шестнайсетична ===
Анонимен потребител