Hexadecimális számok

A bináris számok egyik fő hátránya, hogy egy nagy decimális 10-es bázisú szám bináris karakterlánc-egyenértéke meglehetősen hosszú lehet.

A nagy digitális rendszerekkel, például számítógépekkel való munka során gyakran találkozunk 8, 16 vagy akár 32 számjegyből álló bináris számokkal, ami megnehezíti mind az olvasást, mind a hiba nélküli írást, különösen, ha sok 16 vagy 32 bites bináris számmal dolgozunk.

A probléma leküzdésének egyik gyakori módja, hogy a bináris számokat négy bites (4 bites) csoportokba vagy halmazokba rendezzük. Ezek a 4-bites csoportok egy másik, a számítógépes és digitális rendszerekben is gyakran használt számozási rendszert, a hexadecimális számokat használják.

Hexadecimális számsor

A “hexadecimális” vagy egyszerűen “Hex” számrendszer a 16-os bázist használja, és népszerű választás hosszú bináris értékek ábrázolására, mivel formátumuk meglehetősen kompakt és sokkal könnyebben érthető az 1-ekből és 0-kból álló hosszú bináris számsorokhoz képest.

A 16-os bázisú rendszer lévén, a hexadecimális számrendszer ezért 16 (tizenhat) különböző számjegyet használ, a 0-tól 15-ig terjedő számkombinációkkal. Más szóval, 16 lehetséges számjegy szimbólum létezik.

A számjegyek ilyen jelölési módjának használatával azonban van egy potenciális probléma, amelyet az a tény okoz, hogy a 10, 11, 12, 13, 14 és 15 tizedes számjegyeket általában két szomszédos szimbólummal írják. Ha például hexadecimálisan 10-et írunk, akkor a tízes decimális számot értjük-e, vagy a kettes bináris számot (1 + 0). Ennek a trükkös problémának a megkerülésére a tíz, tizenegy, . . . értékeket azonosító hexadecimális számokat használjuk. , tizenöt értéket jelölő számokat A, B, C, D, E és F nagybetűkkel helyettesítjük.

A hexadecimális számrendszerben tehát a 0-tól 9-ig terjedő számokat és az A-tól F-ig terjedő nagybetűket használjuk a bináris vagy decimális szám megfelelőjének jelölésére, kezdve a legkevésbé jelentős számjeggyel a jobb oldalon.

Amint az imént említettük, a bináris karakterláncok meglehetősen hosszúak és nehezen olvashatók, de megkönnyíthetjük az életünket, ha ezeket a nagy bináris számokat páros csoportokra osztjuk, hogy sokkal könnyebb legyen leírni és megérteni őket. Például a következő, 1101 0101 1100 11112 bináris számjegyek csoportja sokkal könnyebben olvasható és érthető, mint a 1101010101110011112, amikor az összes számjegyet összevonjuk.

A decimális számrendszer mindennapi használatában három számjegyből vagy 000-ből álló csoportokat használunk a jobb oldalról, hogy egy nagyon nagy számot, például milliót vagy billiót könnyebben megértsünk, és ugyanez igaz a digitális rendszerekben is.

A hexadecimális számok egy összetettebb rendszer, mintha csak bináris vagy decimális számokat használnánk, és elsősorban a számítógépekkel és memóriacímhelyekkel kapcsolatban használják. A bináris számot 4 bitből álló csoportokra osztva, minden egyes csoport vagy 4 számjegyből álló számjegykészlet “0000” (0) és “1111” ( 8+4+2+1 = 15 ) közötti lehetséges értéket vehet fel, így összesen 16 különböző számkombináció áll rendelkezésre 0-tól 15-ig. Ne felejtsük el, hogy a “0” is egy érvényes számjegy.

Emlékszünk a bináris számokról szóló első bemutatóból, hogy a 4 bites számjegycsoportot “nibble”-nek nevezzük, és mivel egy hexadecimális szám előállításához is 4 bitre van szükség, egy hexa számjegyet is tekinthetünk nibble-nek vagy fél-byte-nak. Ekkor két hexadecimális szám szükséges egy teljes bájt előállításához, amely 00-tól FF-ig terjed.

Amellett, mivel a 16 a decimális rendszerben a 2 negyedik hatványa ( vagy 24 ), a 2 és 16 számok között közvetlen kapcsolat áll fenn, így egy hexadecimális számjegy értéke négy bináris számjegynek felel meg, így most q egyenlő “16”-al.

Egy bináris szám négy számjegye egyetlen hexadecimális számjeggyel ábrázolható. Ez nagyon egyszerűvé teszi a bináris és hexadecimális számok közötti átváltást, és a hexadecimális számok segítségével nagy bináris számokat sokkal kevesebb számjeggyel lehet leírni.

A 0-tól 9-ig terjedő számokat továbbra is az eredeti decimális rendszerben használtuk, de a 10-től 15-ig terjedő számokat most az ábécé nagybetűivel ábrázoljuk A-tól F-ig bezárólag, és a decimális, bináris és hexadecimális számok közötti kapcsolat az alábbiakban látható.

Hexadecimális számok

Dekimális szám 4–bit Bináris szám Hexadecimális szám
0 0000 0
1 0001 1
1
2 0010 2
3 0011 3
4 0100 4
5 0101 5
6 0110 6
7 0111 7
8 1000 8
9 1001 9
10 1010 A
11 1011 B
12 1100 C
13 1101 D
14 1110 E
15 111111 F
16 0001 0000 10 (1+0)
17 0001 0001 11 (1+1)
Felfelé folytatva négyes csoportokban

A fenti eredeti bináris számot használva 1101 0101 1100 11112 ez most átkonvertálható egy egyenértékű hexadecimális számmá D5CF, ami sokkal könnyebben olvasható és érthető, mint az 1-ek és 0-k hosszú sora, ami korábban volt.

A hexadecimális jelölés használatával tehát a digitális számok kevesebb számjegyből írhatók, és sokkal kisebb a hiba előfordulásának valószínűsége. Hasonlóképpen, a hexadecimális alapú számok visszaalakítása binárisra egyszerűen a fordított művelet.

A hexadecimális számrendszer fő jellemzője tehát az, hogy 16 különböző számjegy van 0-tól F-ig, és minden egyes számjegy súlya vagy értéke 16, a legkevésbé jelentős bittől (LSB) kezdve. Annak érdekében, hogy a hexadecimális számokat megkülönböztessük a denáris számoktól, a tényleges hexadecimális számérték előtt egy “#”, (Hash) vagy egy “$” (dollárjel) előtagot használunk, #D5CF vagy $D5CF.

Mivel a hexadecimális rendszer alapja 16, ami egyben a rendszerben használt egyedi szimbólumok számát is jelenti, a 16-os indexet használjuk a hexadecimálisan kifejezett számok azonosítására. Például az előző hexadecimális számot így fejezzük ki: D5CF16

Számolás hexadecimális számokkal

Azt már tudjuk, hogyan kell 4 bináris számjegyet hexadecimális számmá alakítani. De mi lenne, ha több mint 4 bináris számjegyünk lenne, hogyan számolnánk hexadecimálisan az utolsó F betűn túl. Az egyszerű válasz az, hogy kezdjük elölről egy másik 4 bitből álló sorral az alábbiak szerint.

0…-től…9-ig, A,B,C,D,E,F, 10…-től…19-ig, 1A, 1B, 1C, 1D, 1E, 1F, 20, 21….etc

Ne keverjük össze, a 10 vagy 20 NEM tíz vagy húsz, hanem 1 + 0 és 2 + 0 hexadecimálisan. Valójában húsz nem is létezik hexadecimálisan. Két hexadecimális számmal FF-ig tudunk számolni, ami egyenlő a decimális 255-tel. Hasonlóképpen, ha FF-nél magasabbra akarunk számolni, akkor balra hozzáadunk egy harmadik hexadecimális számjegyet, így az első 3 bites hexadecimális szám 10016, (25610) és az utolsó FFF16, (409510) lenne. A maximális 4 jegyű hexadecimális szám az FFFF16, ami decimálisan 65 535-nek felel meg, és így tovább.

Egy hexadecimális szám ábrázolása

MSB Hexadecimális szám LSB
168 167 166 165 164 163 162 161 160
4.3G 2.6G 16M 1M 65k 4k 256 16 1

Ez a további hexadecimális számjegyek hozzáadása a decimális és bináris számok hexadecimális számmá alakításához nagyon egyszerű, ha 4, 8, 12 vagy 16 bináris számjegyet kell átalakítani. De nullákat is hozzáadhatunk a legjelentősebb bit, az MSB bal oldalára, ha a bináris bitek száma nem négy többszöröse.

A 110010110110110012 például egy tizennégy bites bináris szám, amely túl nagy ahhoz, hogy csak három hexadecimális számjegy legyen, de túl kicsi a négy hexadecimális számhoz. A megoldás az, hogy további nullákat adunk hozzá a bal szélső bithez, amíg nem kapunk egy teljes négybites bináris számot vagy annak többszörösét.

További 0-k hozzáadása a bináris számhoz

Bináris szám 0011 0010 1101 1001
Hexadecimális szám 3 2 D 9

A hexadecimális szám fő előnye, hogy nagyon kompakt, és a 16-os bázis használata azt jelenti, hogy az adott szám ábrázolásához használt számjegyek száma általában kevesebb, mint a bináris vagy decimális számban. Emellett gyors és egyszerű a hexadecimális számok és a bináris számok közötti átalakítás.

Hexadecimális számok Példa No1

A következő 1110 10102 bináris számot alakítsuk át a hexadecimális szám megfelelőjévé.

Bináris szám = 111010102
Csoportosítsuk a biteket négyesével a jobb oldalról kezdve
= 1110 1010
Keressük meg mindegyiknek a decimális megfelelőjét. egyedi csoport
= 14 10 (tizedesjegyben)
Konvertáld át Hexadecimálisra a fenti táblázat segítségével
= E A (hexában)
Ezután, a bináris szám

1110 10102 hexadecimális megfelelője #EA16

Hexadecimális számok Példa No2

A következő hexadecimális számot #3FA716 alakítsuk át a bináris megfelelőjére, valamint a decimális vagy denáris megfelelőjére az egyes számrendszereket azonosító indexek segítségével.

#3FA716

= 0011 1111 1010 01112

= (8192 + 4096 + 2048 + 1024 + 512 + 256 + 128 + 32 + 4 + 2 + 1)

= 16,29510

Ezután a 16,295 decimális számot így lehet ábrázolni:-

#3FA716 hexadecimálisan

vagy

0011 1111 1010 01112 binárisan.

Hexadecimális számok összefoglalása

Ezután összefoglalva. A hexadecimális vagy Hex számrendszert a számítógépes és digitális rendszerekben általában arra használják, hogy a nagy bináris számsorokat a számunkra könnyen értelmezhető négyjegyű számsorozatokra redukálják. A “hexadecimális” szó tizenhatot jelent, mivel ez a fajta digitális számozási rendszer 16 különböző számjegyet használ 0-tól 9-ig és A-tól F-ig.

A hexadecimális számok a bináris számokat négy számjegyből álló halmazokká csoportosítják. Ahhoz, hogy egy bináris sorozatot egyenértékű hexadecimális számmá alakítsunk át, először a bináris számjegyeket 4-bites halmazba kell csoportosítanunk. Ezek a bináris halmazok 010 ( 00002 ) és 1510 ( 11112 ) között bármilyen értéket felvehetnek, ami a 0-tól F-ig a hexadecimális megfelelőjét jelenti.

A bináris logikáról szóló következő bemutatóban a bináris számok egész sorozatait fogjuk megvizsgálni egy másik digitális számrendszerbe, az oktális számokba és fordítva.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.