• Hexadecimální kód. Ilustrovaný tutoriál o digitální grafice

    Hexadecimální číselná soustava, je zdaleka nejoblíbenějším prostředkem kompaktního zápisu binárních čísel. Je široce používán při vývoji a návrhu digitální technologie.

    Jak název napovídá, základem tohoto systému je číslo šestnáct. 16 nebo v hexadecimální soustavě 10 16. Aby nedošlo k záměně, při psaní čísel v jiných než desítkových soustavách uvedeme základ číselné soustavy vpravo dole od hlavního zápisu čísla. Vzhledem k tomu, že základem systému je číslo šestnáct, potřebujeme k reprezentaci čísel šestnáct číslic. Prvních deset číslic je převzato z nám známé desítkové soustavy (0,1,..,8,9) a je přidáno dalších šest písmen latinské abecedy (a,b,c,d,e,f). Například v hexadecimálním čísle 3f7c2 jsou písmena "f" a "c" hexadecimální číslice.

    Počítání v šestnáctkové soustavě je podobné počítání v desítkové soustavě. Zkusme počítat a psát čísla tak, že je sestrojíme z dostupných šestnácti číslic:

    Nula - 0 ;
    Jeden - 1 ;
    Dva - 2 ;
    ...
    a tak dále…
    ...
    Osm - 8 ;
    Devět - 9 ;
    Deset - A;
    Jedenáct - b;
    Dvanáct - C;
    13 - d;
    Čtrnáct - E;
    Patnáct - F;

    Co dělat dál? Všechna čísla jsou pryč. Jak znázornit číslo šestnáct? Udělejme totéž, co jsme udělali v desítkové soustavě. Tam jsme zavedli pojem desítka, ale tady zavádíme pojem "šestnáctka" a říkáme, že šestnáctka je jedna "šestnáctka" a nula jednotek. A to už lze zapsat - "10 16".

    Tak, Šestnáct - 10 16 (jedna "šestnáct", nula jedniček)
    Sedmnáct - 11 16 (jedna "šestnáctka", jedna jednotka)
    ...
    a tak dále…
    ...
    Dvacet pět - 19 16 (jedna "šestnáct", devět jednotek)
    Dvacet šest - 1a 16 (jedna "šestnáct", deset jedniček)
    Dvacet sedm - 1b 16 (jedna "šestnáct", jedenáct jedniček)
    ...
    a tak dále…
    ...
    Třicet - 1e 16 (jeden "šestnáct", čtrnáct jedniček)
    Třicet jedna - lf 16 (jeden "šestnáct", patnáct jedniček)
    Třicet dva - 20 16 (dvě "šestnáct", nula jedničky)
    Třicet tři - 21 16 (dvě "šestnáctky", jedna jednotka)
    ...
    a tak dále…
    ...
    Dvě stě padesát pět - ff 16 (patnáct krát "šestnáct", patnáct jedniček)

    dvě stě padesát šest - 100 16 (jedna "dvě stě padesát šest", nula až "šestnáct", nula jednotek)
    dvě stě padesát sedm - 101 16 (jedna "dvě stě padesát šest", nula až "šestnáct", jedna jednotka)
    dvě stě padesát osm - 102 16 (jedna "dvě stě padesát šest", nula až "šestnáct", dvě jedničky)
    ...
    a tak dále...
    ...

    Vždy, když vyčerpáme sadu číslic pro zobrazení dalšího čísla, zadáme větší jednotky účtu (tj. počítáme po „šestnácti“, po „dvě stě padesát šest“ atd.) a zapíšeme číslo s příponou jedna číslice .

    Zvažte číslo 3e2c 16 zapsaný v hexadecimální číselné soustavě. O něm můžeme říci, že obsahuje: tři krát čtyři tisíce devadesát šest, "e" (čtrnáct) krát dvě stě padesát šest, dva krát šestnáct a "c" (dvanáct) jednotek. A můžete získat jeho hodnotu prostřednictvím čísel v něm obsažených následovně.

    3e2c 16 = 3 *4096+14 *256+2 *16+12 *1, dále znak * (hvězdička) znamená násobení.

    Ale řada čísel 4096, 256, 16, 1 není nic jiného než celočíselné mocniny čísla šestnáct (základ číselné soustavy), a proto můžeme psát:

    3e2c 16 = 3 *16 3 +14 *16 2 +2 *16 1 +12 *16 0

    Podobně pro hexadecimální zlomek (zlomkové číslo), například: 0,5a2 16 lze říci, že obsahuje: pět šestnáctin, „a“ (deset) dvě stě padesát šestin a dvě čtyři tisíce devadesát šest. A jeho hodnotu lze vypočítat takto:

    0,5a2 16 = 5 *(1/16) + 10 *(1/256) + 2 *(1/4096)

    A zde je řada čísel 1/16; 1/256 a 1/4096 nejsou nic jiného než celočíselné mocniny šestnácti a můžeme také psát:

    0,5a2 16 = 5 *16 -1 + 10 *16 -2 + 2 *16 -3

    Pro smíšené číslo 7b2.1f9 můžeme podobně napsat:

    7b2.1f9 = 7 *16 2 +11 *16 1 +2 *16 0 +1 *16 -1 +15 *16 -2 +9 *16 -3

    Číslice celé části nějakého hexadecimálního čísla očíslujeme zprava doleva jako 0,1,2 ... n (číslování začíná od nuly!). A číslice zlomkové části, zleva doprava, jako -1, -2, -3 ... -m, pak lze hodnotu nějakého hexadecimálního čísla vypočítat podle vzorce:

    N = d n 16 n +d n-1 16 n-1 +…+d 1 16 1 +d 0 16 0 +d -1 16 -1 +d -2 16 -2 +…+d -(m-1) 16-(m-1) +d-m16-m

    Kde: n- počet číslic v celé části čísla mínus jedna;
    m- počet číslic ve zlomkové části čísla
    d i- číslo v i-té kategorie

    Tento vzorec se nazývá vzorec pro bitový rozvoj hexadecimálního čísla, tzn. číslo zapsané v šestnáctkové soustavě. Nahradíme-li číslo šestnáct v tomto vzorci nějakým libovolným číslem q, pak získáme expanzní vzorec pro zapsané číslo qthčíselný systém, tzn. se základnou q:

    N = d n q n +d n-1 q n-1 +…+d 1 q 1 +d 0 q 0 +d -1 q -1 +d -2 q -2 +…+d -(m-1) q - (m-1) +d-mq-m

    Pomocí tohoto vzorce můžete vždy vypočítat hodnotu čísla zapsaného v libovolné poziční číselné soustavě se základem q.

    Další číselné systémy naleznete na našich webových stránkách na následujících odkazech.

    Nyní je velmi snadná procházka spojená s hexadecimální číselnou soustavou. V tomto případě doufáme, že máte podezření, a pravděpodobně oprávněně, že bychom nyní měli mít 16 různých číslic.

    Ale jak víme, existuje pouze deset tradičních („arabských“) číslic. A to trvá šestnáct. Ukázalo se, že chybí šest znaků.

    Komentář
    Vzniká tak čistě designový úkol na téma „Znaky“ – vymyslet chybějící znaky pro čísla
    .

    Takže najednou museli specialisté přijít s nějakými novými znaky. Kdysi, na začátku éry počítačů, ale ve znameních moc na výběr nebyl. Programátoři měli pouze znaky číslic a písmen. Vydali se proto základní cestou: vzali první písmena latinské abecedy jako čísla, zejména proto, že historicky to není první případ (již jsme zmínili, že zpočátku mnoho národů používalo písmena místo čísel).

    Komentář
    Doufáme, že každý chápe, proč v tomto případě nelze použít např. čísla „10“, „11“, „12“ atd.? Protože pokud mluvíme o hexadecimální číselné soustavě, pak by to mělo být šestnáct čísla, ne čísla
    .

    A desetinné číslo „10“ se začalo označovat latinským písmenem „A“ (přesněji „číslo A“). Podle toho následují čísla "B", "C", "D", "E" a "P".

    Protože jsme zamýšleli sestavit hexadecimální systém, který začíná od nuly, dostaneme přesně 16 číslic. Například číslo "D" je desetinné číslo "13" a číslo "F" je desetinné číslo "15".

    Když k hexadecimálnímu číslu „F“ přidáme jedničku, pak, protože nám tyto číslice došly, vložíme do této číslice „O“ a převedeme jedničku na další číslici, takže se ukáže, že desetinné číslo „ 16" bude v hexadecimální číselné soustavě reprezentováno číslem "10", tj. vyjde "hexadecimální desítka". Spojme desetinná a šestnáctková čísla do jediné tabulky (tabulka 4.5).

    Tabulka 4.5. Shoda desítkových a hexadecimálních čísel.

    Desetinné číslo Hexadecimální číslo Desetinné číslo Hexadecimální číslo
    0-9 0-9 29 1D
    10 A 30 1E
    11 V 31 1F
    12 S 32-41 20-29
    13 D 42-47 2A-2F
    14 E 48-255 30-FF
    15 F 256 100
    16 10 512 200
    17-25 11-19 1024 400
    26 1A 1280 500
    27 1B 4096 1000
    28 1C

    Hexadecimální systém se používá k kompaktnějšímu zápisu binárních informací. „Šestnáctkový tisíc“, sestávající ze čtyř číslic, v binární podobě má třináct číslic (1000 16 \u003d 1000000000000 2).

    Při probírání číselných soustav se opakovaně objevovaly „desítky“, „stovky“ a „tisíce“, proto je třeba dávat pozor na tzv. „kulatá“ čísla.

    Chcete-li psát programy v assembleru, musíte rozumět hexadecimální číselné soustavě. Není v tom nic složitého. V životě používáme desítkovou soustavu. Jsem si jistý, že to všichni znáte, takže se pokusím vysvětlit hexadecimální systém nakreslením analogie s desetinnou soustavou.

    Pokud tedy v desítkové soustavě přidáme nulu napravo od libovolného čísla, toto číslo se zvýší 10krát. Například: 1 x 10 = 10; 10 x 10 = 100; 100 x 10 = 1000 atd. V tomto systému používáme čísla od 0 do 9, tzn. deset různých číslic (ve skutečnosti se proto nazývá desítková).

    V šestnáctkové soustavě používáme šestnáct „číslic“. Slovo "čísla" jsem konkrétně napsal v uvozovkách, protože používá víc než jen čísla. A jak to vlastně je? Vysvětluji: od 0 do 9 počítáme stejně jako v desítkové soustavě, ale pak to bude takto: A, B, C, D, E, F. Číslo F, jakkoli obtížné počet, bude se rovnat 15 v desítkové soustavě (viz tabulka 1).

    Desetinné číslo

    Hexadecimální číslo

    Tabulka 1. Desítkové a šestnáctkové soustavy.

    Pokud tedy k libovolnému číslu v šestnáctkové soustavě přidáme nulu zprava, toto číslo se zvýší16 jednou.

    Příklad 1: 1 x 16 = 10; 10 x 16 = 100; 100 x 16 = 1000 atd.

    Dokázali jste v příkladu 1 rozlišit šestnáctkové od desítkové? A z této řady: 10, 12, 45, 64, 12, 8, 19? Může být hexadecimální nebo decimální. Aby nedošlo k záměně a počítač mohl jednoznačně rozlišit jedno číslo od druhého, je v Assembleru zvykem dávat za hexadecimální číslo znak h nebo H ( H je zkratka pro angličtinu. hexadecimální (hexadecimální). Zkráceně se tomu někdy říká jednoduše hex ) . A za desetinnou čárkou nic nedávejte. Protože čísla od 0 do 9 v obou systémech mají stejný význam, pak jsou čísla zapsaná jako 5 a 5h stejná.

    Že. Příklad 1 (viz výše) by bylo správnější napsat takto: 1 x 16 = 10h; 10h x 16 = 100h; 100h x 16 = 1000h. Nebo takto: 1h x 10h = 10h; 10h x 10h = 100h; 100h x 10h = 1000h.

    Proč je potřeba hexadecimální systém, budeme zvažovat v následujících číslech. Prozatím pro náš ukázkový program, o kterém bude řeč níže, potřebujeme vědět o existenci hexadecimálních čísel.

    Pojďme si to tedy shrnout. Hexadecimální číselný systém se skládá z 10 číslic (od 0 do 9) a 6 písmen latinské abecedy (A, B, C, D, E, F). Pokud přidáme nulu napravo od libovolného čísla v šestnáctkové soustavě, toto číslo se zvýší o16 jednou. Je velmi důležité tomuto tématu porozumět., protože jej budeme neustále používat při psaní programů.

    Nyní něco málo o tom, jak budu stavět příklady v assembleru. Prezentovat je ve formátu HTML není příliš vhodné, takže nejprve bude samotný programový kód s očíslovanými řádky a hned za ním vysvětlivky a poznámky.

    Takhle:

    linky Programový kód
    (1) mov ah, 9

    Vysvětlivky:

    V řádku (1) děláme něco a v řádku (15) děláme něco.

    Obrovský požadavek: NEKOpírujte programy ze stránky do schránky a poté je nevkládejte do poznámkového bloku (nebo kamkoli jinam)! Zadejte je ručně v textovém editoru. Pokud existuje tiskárna, vyberte program, vytiskněte vybraný fragment a poté jej přeneste z papíru do editoru. Všechny příklady musíte napsat sami! Tím se urychlí zapamatování operátorů.

    A dál. Malá a VELKÁ písmena se v Assembleru nerozlišují. Příspěvky jako:

    Assembler je vnímán stejně. Můžete samozřejmě donutit assembler, aby rozlišoval mezi malými a VELKÝMI znaky, ale zatím to dělat nebudeme. Pro čitelnost programu je nejlepší psát příkazy malými písmeny a názvy podprogramů a štítků začínat velkými písmeny. Ale takhle to někomu bude vyhovovat.

    Pojďme tedy k našemu prvnímu programu:

    (1) Segment CSEG

    (2) org 100h

    (4) Začátek:

    (6) mov ah,9

    (7) mov dx, offsetová zpráva

    (8) mezi 21h

    (10) int 20h

    (11)

    (12) Zpráva db "Ahoj světe!" $

    (13) CSEG končí

    (14) konecZačátek

    Abychom vysvětlili všechny operátory tohoto příkladu, budeme potřebovat několik epizod. Proto popis některých příkazů v této fázi jednoduše vynecháme. Jen si pomysli, že to tak má být. Ve velmi blízké budoucnosti se budeme těmito operátory podrobně zabývat. Takže řádky s čísly (1), (2) a (13) jednoduše ignorujete.

    Řádky (3), (5), (9) a (11) zůstávají prázdné. To se provádí pro přehlednost. Assembler je jednoduše vynechá.

    Nyní přejděme ke zbytku operátorů. Od řádku (4) začíná kód programu. Toto je štítek, který říká assembleru, aby spustil kód. Řádek (14) obsahuje příkaz end Begin ( Začněte anglicky Start; konec konec). Toto je konec programu. Obecně místo slov Začít dalo se použít něco jiného. Například, Start:. V tomto případě bychom museli program dokončit Konec Start (14).

    Řádky (6) (8) zobrazují zprávu Hello, world!. Zde musíme stručně hovořit o registrech procesorů (podrobněji se tomuto tématu budeme věnovat v příštím čísle).

    Registr procesoru je vyhrazená paměť pro uložení čísla.

    Například:

    Pokud chceme sečíst dvě čísla, pak v matematice píšeme takto:

    A, B a C jsou to jakési registry (mluvíme-li o počítači), do kterých lze ukládat některá data. A=5 lze číst jako: Přidělte A číslo 5 .

    Pro přiřazení hodnoty registru existuje v Assembleru operátor mov (z anglického move load). Řádek (6) by měl znít takto: Nahrávání do registru AHčíslo 9 (jinými slovy přiřadíme AHčíslo 9). Níže zvážíme, proč je to nutné.

    V řádku (7) načteme do registru DX adresa zprávy, která má být odeslána (v tomto příkladu to bude řetězecAhoj světe! $).

    Přerušení budou podrobně popsána v budoucích verzích. Zde řeknu pár slov.

    Přerušit MS-DOS je druh podprogramu (součást MS DOS), který je trvale uložen v paměti a lze jej kdykoli vyvolat z libovolného programu.

    Zvažte výše uvedené na příkladu (zvýraznit poznámky malým písmem):

    Program pro sčítání dvou čísel

    HomeProgramy

    A=5 do proměnné A zadáme hodnotu 5

    B=8 na hodnotu proměnné B 8

    Přidání volání podprogramu

    nyní C je 13

    A = 10 to samé, jen jiná čísla

    B = 25

    Přidání volání podprogramu

    nyní C je 35

    Konec programu

    Přidání podprogramu

    C=A+B

    Návrat z podprogramu vracíme se na místo, odkud jsme volali

    Konec podprogramu

    V tomto příkladu jsme podprogram volali dvakrát Přidání, který přidal dvě čísla předaná v proměnných A a B . Výsledek je umístěn do proměnné C. Při volání podprogramu si počítač pamatuje, odkud byl volán, a poté, když podprogram skončí, počítač se vrátí na místo, odkud byl volán. Že. Podprogramy můžete odkudkoli volat neomezeně mnohokrát.

    Při provádění řádku (8) programu v assembleru zavoláme podprogram (v tomto případě nazývaný přerušení), který řádek vypíše na obrazovku. Za tímto účelem ve skutečnosti vkládáme potřebné hodnoty do registrů. Veškerou potřebnou práci (řádkový výstup, pohyb kurzoru) vykonává podprogram. Tento řádek lze číst takto: zavoláme dvacáté první přerušení ( int z angličtiny. přerušit přerušit). Upozorňujeme, že za číslem 21 je písmeno h . Toto, jak již víme, je hexadecimální číslo (33 v desítkové soustavě). Nic nám samozřejmě nebrání ve výměně linky int 21h až int 33. Program bude fungovat správně. Jen je v Assembleru zvykem udávat číslo přerušení v šestnáctkové soustavě.

    V řádku (10) jsme, uhodli jste, zavolali přerušení 20 h . Chcete-li zavolat toto přerušení, nemusíte v registrech zadávat žádné hodnoty. Provádí pouze jeden úkol: ukončení programu (ukončení DOS). V důsledku přerušení 20h se program vrátí tam, kde byl spuštěn (nahrán, volán). Například v Norton Commander nebo DOS Navigator.

    Řádek (12) obsahuje zprávu, která má být odeslána. První slovo ( zpráva zpráva) název zprávy. Může to být cokoliv (např. nepořádek nebo provázek atd.). O věnujte pozornost řádku (7), ve kterém načítáme do registru DX adresu naší zprávy.

    Můžeme vytvořit další linku, kterou zavoláme nepořádek2. Poté od řádku (9) vložte následující příkazy:

    (10) mov dx,offset Mess2

    (13) Zpráva db "Ahoj světe!" $

    (14) Mess2 db "To jsem já! $"

    a znovu sestavte náš program. Doufám, že tušíte, co se stane

    Věnujte pozornost poslednímu znaku v řádcích Message and Mess2 - $. Ukazuje na konec řádku. Pokud jej odstraníme, pak 21 h přerušení bude pokračovat ve výstupu, dokud se někde v paměti nenarazí na znak $. Na obrazovce uvidíme odpadky .

    Pokud máte debugger, můžete vidět, jak bude náš program fungovat.

    Účelem tohoto čísla nebylo pochopit podrobně s každým operátorem. To je nemožné, protože ještě nemáte dostatek znalostí. Věřím, že po 3-4 vydáních pochopíte princip a strukturu programu v Assembleru. Možná jste si mysleli, že jazyk symbolických instrukcí je extrémně komplikovaný, ale věřte mi, na první pohled.

    Chcete-li reprezentovat čísla v mikroprocesoru, binární systém.
    V tomto případě může mít jakýkoli digitální signál dva stabilní stavy: "vysoká úroveň" a "nízká úroveň". Ve dvojkové soustavě se pro zobrazení libovolného čísla používají dvě číslice: 0 a 1. Libovolné číslo x=a n a n-1 ..a 1 a 0 ,a -1 a -2 …a -m zapsaný v binárním zápisu jako

    x = a n 2 n +a n-1 2 n-1 +…+a 1 2 1 +a 0 2 0 +a -1 2 -1 +a -2 2 -2 +…+a -m 2 -m

    Kde a i— binární číslice (0 nebo 1).

    Osmičková číselná soustava

    V osmičkovém číselném systému jsou základními číslicemi čísla od 0 do 7. 8 jednotek nejméně významného bitu se spojí do nejvýznamnější jednotky.

    Hexadecimální číselná soustava

    V hexadecimálním číselném systému jsou základními číslicemi čísla 0 až 15 včetně. K označení základních číslic větších než 9 jedním znakem se kromě arabských číslic 0 ... 9 používají v hexadecimálním číselném systému písmena latinské abecedy:

    10 10 = A 16 12 10 = C 16 14 10 = E 16
    11 10 = B 16 13 10 = D 16 15 10 = F 16 .

    Například číslo 175 10 v šestnáctkové soustavě bude zapsáno jako AF 16 . Opravdu,

    10 16 1 +15 16 0 =160+15=175

    Tabulka obsahuje čísla od 0 do 16 v desítkové, dvojkové, osmičkové a šestnáctkové soustavě.

    Desetinný Binární osmičkový Hexadecimální
    0 0 0 0
    1 1 1 1
    2 10 2 2
    3 11 3 3
    4 100 4 4
    5 101 5 5
    6 110 6 6
    7 111 7 7
    8 1000 10 8
    9 1001 11 9
    10 1010 12 A
    11 1011 13 B
    12 1100 14 C
    13 1101 15 D
    14 1110 16 E
    15 1111 17 F
    16 10000 20 10

    Binární-osmičkové a binárně-hexadecimální převody

    Binární číselný systém je vhodný pro provádění aritmetických operací mikroprocesorovým hardwarem, ale je nepohodlný pro lidské vnímání, protože vyžaduje velký počet číslic. Proto se ve výpočetní technice kromě binární číselné soustavy pro kompaktnější reprezentaci čísel hojně používají i osmičkové a šestnáctkové číselné soustavy.

    Tři bity osmičkové číselné soustavy implementují všechny možné kombinace osmičkových číslic v binární číselné soustavě: od 0 (000) do 7 (111). Chcete-li převést binární číslo na osmičkové, musíte zkombinovat binární číslice do skupin po 3 číslicích (triádách) ve dvou směrech, počínaje oddělovačem celých a zlomkových částí. Je-li to nutné, musí být vlevo od původního čísla přidány nevýznamné nuly. Pokud číslo obsahuje zlomkovou část, pak lze napravo od něj přidat také nevýznamné nuly, dokud nebudou vyplněny všechny trojice. Poté je každá trojice nahrazena osmičkovou číslicí.

    Příklad: Převeďte číslo 1101110,01 2 na osmičkové.

    Kombinujeme binární číslice do trojic zprava doleva. Dostaneme

    001 101 110,010 2 = 156,2 8 .

    Chcete-li převést číslo z osmičkové soustavy na binární, musíte každou osmičkovou číslici zapsat do jejího binárního kódu:

    156,2 8 = 001 101 110,010 2 .

    Čtyři bity hexadecimální číselné soustavy implementují všechny možné kombinace hexadecimálních číslic v binární číselné soustavě: od 0 (0000) do F(1111). Chcete-li převést binární číslo na hexadecimální, musíte zkombinovat binární číslice do skupin po 4 číslicích (tetradách) ve dvou směrech, počínaje oddělovačem celých a zlomkových částí. Je-li to nutné, musí být vlevo od původního čísla přidány nevýznamné nuly. Pokud číslo obsahuje zlomkovou část, pak se napravo od něj musí přidat také nevýznamné nuly, dokud nebudou vyplněny všechny tetrády. Každá tetráda je pak nahrazena hexadecimální číslicí.

    Příklad: Převeďte číslo 1101110.11 2 na šestnáctkové.

    Kombinujeme binární číslice do tetrád zprava doleva. Dostaneme

    0110 1110,11002 = 6E,C16.

    Chcete-li převést číslo z hexadecimálního na binární, musíte do jeho binárního kódu zapsat každou hexadecimální číslici.

    1. Tuto metodu použijte, pokud nejste obeznámeni s hexadecimální číselnou soustavou. Jednoduchou intuitivní metodu zvládne téměř každý. Pokud znáte různé číselné soustavy, přečtěte si o tom, co je popsáno níže.

      • Pokud o hexadecimální soustavě nevíte vůbec nic, začněte tím, že se naučíte základní pojmy.
    2. Zvedněte 16 na výkon od 1 do 5 a zapište výsledky.Číslice každé číslice šestnáctkového čísla je výsledkem umocnění 16, stejně jako číslice každé číslice desetinného čísla je výsledkem umocnění 10. Následující seznam výsledků umocnění 16 na různé síly budou užitečné v procesu převodu:

      • 16 5 = 1048576
      • 16 4 = 65536
      • 16 3 = 4096
      • 16 2 = 256
      • 16 1 = 16
      • Pokud je desetinné číslo, které se má převést, větší než 1048576, zvedněte 16 na vyšší mocninu a přidejte výsledek do seznamu.
    3. V seznamu najděte největší číslo, které je menší než zadané desetinné číslo. Zapište si dané desetinné číslo, které chcete převést na šestnáctkové. Podívejte se na výše uvedený seznam a najděte největší výsledek (umocnění 16), který je menší než dané desetinné číslo.

      • Například je třeba převést desetinné číslo 495 na šestnáctkové. Vyberte číslo 256 ze seznamu.
    4. Vydělte desetinné číslo vámi zvolenou umocněním 16. Pracujte s celočíselným výsledkem dělení – čísla za desetinnou čárkou ignorujte.

      • V našem příkladu: 495 ÷ 256 = 1,93... takže pracujte s číslem 1 (je to celočíselný kvocient).
      • Výsledkem je první číslice hexadecimálního čísla. V tomto případě jste dané desetinné číslo vydělili 256, takže 1 je na místě 256.
    5. Najděte první zbytek. Tedy zbytek po dělení daného desetinného čísla zvoleným číslem (dělitel). Zbytek se vypočítá stejným způsobem jako při dělení sloupcem.

      • Vynásobte výsledný podíl dělitelem. V našem příkladu: 1 x 256 = 256 (tj. 1 v šestnáctkové soustavě představuje 256 v základu 10).
      • Odečtěte výsledek násobení od daného desetinného čísla: 495 - 256 = 239 .
    6. Vydělte zbytek dalším (na seznamu) výsledkem zvýšení 16 na mocninu. Podívejte se na seznam s výsledky zvýšení 16 na různé síly. Najděte výsledek, který je pod výsledkem, který jste vybrali pro předchozí rozdělení. Vydělte zbytek zvoleným číslem, abyste našli další číslici hexadecimálního čísla (pokud je zbytek menší než zvolené číslo, další číslice je 0).

      • 239 ÷ 16 = 14 . Čísla za desetinnou čárkou ignorujte.
      • Toto je druhá číslice hexadecimálního čísla, které je na místě 16. Jakékoli číslo mezi 0 a 15 může být reprezentováno jednou hexadecimální číslicí. Výsledná čísla budou převedena a umístěna na konec této metody.
    7. Najděte druhý zbytek. Chcete-li to provést, vynásobte výsledný podíl dělitelem a poté odečtěte výsledek násobení od prvního zbytku. Druhý zbytek musí být převeden na hexadecimální číslici.

      • 14 x 16 = 224.
      • 239 - 224 = 15, to znamená, že zbytek je 15 .
    8. Opakujte výše uvedený postup, dokud nebude zbytek menší než 16. Pokud je zbytek číslo mezi 0 a 15, může být vyjádřen jako jedna hexadecimální číslice. Tato číslice bude poslední číslicí.

      • Poslední číslice hexadecimálního čísla je 15, což je na místě jedniček.
    9. Převeďte přijatá čísla a zapište odpověď. Našli jste všechny číslice hexadecimálního čísla. Ale jsou psány v desítkové soustavě. Chcete-li převést každou číslici na základ 16, použijte následující pokyny:

      • Čísla od 0 do 9 se nemění.
      • 10=A; 11 = B; 12=C; 13=D; 14=E; 15=F
      • V našem příkladu jste dostali čísla (1) (14) (15). To znamená, že hexadecimální číslo se zapisuje takto: 1EF.
    10. Zkontrolujte odpověď. To je snadné, pokud znáte základy hexadecimální číselné soustavy. Převeďte každou hexadecimální číslici na základní 10 číslic, pak vynásobte výsledkem 16 mocninou, která odpovídá pozici číslice. V našem příkladu:

      • 1EF → (1) (14) (15)
      • Pracujte s čísly zprava doleva. 15 je na místě jedniček: 16 0 = 1, takže 15 x 1 = 15.
      • Další číslice je na 16. místě: 16 1 = 16, tedy 14 x 16 = 224.
      • Další číslice je na místě 256: 16 2 = 256, takže 1 x 256 = 256.
      • Přidejte nalezené výsledky: 256 + 224 + 15 = 495, to znamená, že dostanete původní desetinné číslo.