Počítače Okna Internet

Stejně jako v binárním kódu bude slovo ahoj. Ruská abeceda v binárním kódu. Jednotné abecední binární kódování. Bajtový kód. Pochopení binárních čísel

Termín "binární" ve smyslu - skládající se ze dvou částí, komponent. Binární kódy jsou tedy kódy, které se skládají pouze ze dvou symbolických stavů, jako je černý nebo bílý, světlý nebo tmavý, vodič nebo izolant. Binární kód v digitální technologii je způsob reprezentace dat (čísla, slova a další) ve formě kombinace dvou znaků, které lze označit jako 0 a 1. Znaky BC nebo jednotky se nazývají bity. Jedním z odůvodnění použití BC je jednoduchost a spolehlivost akumulace informace v jakémkoli médiu ve formě kombinace pouze dvou jeho fyzikálních stavů, například ve formě změny nebo stálosti světelného toku při čtení z disku s optickým kódem.
Existují různé možnosti kódování informací.

Binární kód

V digitální technologii je to metoda reprezentace dat (čísla, slova a další) jako kombinace dvou znaků, které lze označit jako 0 a 1. Znaky nebo jednotky DC se nazývají bity.

Jedním z důvodů pro použití DC je jednoduchost a spolehlivost akumulace informace v jakémkoli médiu ve formě kombinace pouze dvou jeho fyzikálních stavů, například ve formě změny nebo stálosti magnetického toku v daná buňka magnetického záznamového média.

Největší číslo, které lze binárně vyjádřit, závisí na počtu použitých bitů, tzn. na počtu bitů v kombinaci vyjadřující číslo. Například pro vyjádření číselných hodnot od 0 do 7 stačí mít 3bitový nebo 3bitový kód:

číselná hodnota binární kód
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111

Z toho je vidět, že pro číslo větší než 7 s 3bitovým kódem již neexistují žádné kombinace kódů 0 a 1.

Přejdeme-li od čísel k fyzikálním veličinám, výše uvedené tvrzení zformulujeme více obecný pohled: největší počet hodnot m libovolné veličiny (teplota, napětí, proud atd.), který lze vyjádřit v binárním kódu, závisí na počtu použitých bitů n jako m = 2n. Pokud n = 3, jako v uvažovaném příkladu, pak dostaneme 8 hodnot, včetně úvodní 0.
Binární kód je vícekrokový kód. To znamená, že při pohybu z jedné pozice (hodnoty) do druhé se může změnit několik bitů současně. Například číslo 3 palce binární kód= 011. Číslo 4 v binárním kódu = 100. Při přechodu z 3 na 4 tedy všechny 3 bity změní svůj stav na opačný současně. Čtení takového kódu z kódového disku by vedlo k tomu, že v důsledku nevyhnutelných odchylek (tolerance) při výrobě kódového disku ke změně informace z každé ze stop samostatně nikdy nedojde současně. To by zase vedlo k tomu, že při přechodu z jednoho čísla na druhé by se na krátkou dobu zobrazovaly nesprávné informace. Takže při zmíněném přechodu z čísla 3 na číslo 4 je krátkodobý výstup čísla 7 velmi pravděpodobný, když například nejvýznamnější bit během přechodu změnil svou hodnotu o něco dříve než zbytek. Aby se tomu zabránilo, používá se tzv. jednokrokový kód, například tzv. šedý kód.

Šedý kód

Šedý kód je tzv. jednokrokový kód, tzn. při přechodu z jednoho čísla na druhé se vždy změní pouze jeden ze všech bitů informace. Chyba ve čtení informace z disku s mechanickým kódem při přechodu z jednoho čísla na druhé povede pouze k tomu, že přechod z jedné pozice na druhou bude v čase jen nepatrně posunut, nicméně vydání zcela nesprávné hodnoty úhlová poloha při pohybu z jedné polohy do druhé je zcela vyloučena ...
Výhodou šedého kódu je také jeho schopnost zrcadlit informace. Takže invertováním nejvýznamnějšího bitu jednoduše změníte směr počítání a tím se přizpůsobíte skutečnému (fyzickému) směru otáčení osy. Změnu směru počítání tímto způsobem lze snadno změnit manipulací s takzvaným vstupem "Doplnit". Vrácená hodnota tak může stoupat nebo klesat pro stejný fyzický směr otáčení osy.
Vzhledem k tomu, že informace vyjádřená v Grayově kódu je čistě kódovaná, není skutečným nosičem. číselné informace před dalším zpracováním musí být nejprve převeden na standardní binární. To se provádí pomocí převodníku kódu (dekodér Gray-Binar), který je naštěstí snadno implementován pomocí řetězce logických prvků „exclusive or“ (XOR) jak v softwaru, tak v hardwaru.

Korespondence desetinných čísel v rozsahu od 0 do 15 po binární kód a šedý kód

Binární kódování Šedé kódování
Desetinný kód
Binární hodnota Šestnáct. význam Desetinný kód Binární hodnota Šestnáct. význam
0 0000 0h 0 0000 0h
1 0001 1h 1 0001 1h
2 0010 2h 3 0011 3h
3 0011 3h 2 0010 2h
4 0100 4h 6 0110 6h
5 0101 5h 7 0111 7h
6 0110 6h 5 0101 5h
7 0111 7h 4 0100 4h
8 1000 8h 12 1100 Ch
9 1001 9h 13 1101 Dh
10 1010 Ah 15 1111 Fh
11 1011 Bh 14 1110 Eh
12 1100 Ch 10 1010 Ah
13 1101 Dh 11 1011 Bh
14 1110 Eh 9 1001 9h
15 1111 Fh 8 1000 8h

Převod Grayova kódu na známý binární kód lze provést pomocí jednoduché schéma s invertory a hradly „exclusive-or“, jak je znázorněno níže:

Grey-Excess Code

Obvyklý jednokrokový šedý kód je vhodný pro rozlišení, která lze znázornit jako číslo umocněné na 2. V případech, kdy je nutné implementovat jiná rozlišení z obvyklého šedého kódu, je jeho střední část vyříznuta a použita. Tím je zachován „jednokrokový“ kód. Číselný rozsah však nezačíná nulou, ale je posunut o určitou hodnotu. Při zpracování informací se od generovaného signálu odečte polovina rozdílu mezi původním a sníženým rozlišením. Rozlišení jako 360? k vyjádření úhlu jsou často implementovány touto metodou. Takže 9bitový Gray kód rovný 512 krokům, oříznutý na obou stranách o 76 kroků, bude roven 360 °.

Počítače nerozumí slovům a číslům jako lidé. Moderní software umožňuje koncovému uživateli jej ignorovat, ale na nejnižších úrovních váš počítač pracuje na binárním elektrickém signálu, který má pouze dva státy: zda je aktuální nebo ne. Abyste „pochopili“ složitá data, váš počítač je musí zakódovat v binárním formátu.

Binární systém je založen na dvou číslicích, 1 a 0, které odpovídají zapnutým a vypnutým stavům, kterým váš počítač rozumí. Pravděpodobně znáte desítkovou soustavu. Používá deset číslic, od 0 do 9, a pak přejde k dalšímu řádu, aby vytvořil dvouciferná čísla, s číslicí z každého dalšího řádu desetkrát větší než předchozí. Dvojková soustava je podobná, každá číslice je dvakrát větší než ta předchozí.

Binární počítání

V binárním systému je první číslice desetinná 1. Druhá číslice je 2, třetí je 4, čtvrtá je 8 a tak dále – pokaždé se zdvojnásobí. Přidáním všech těchto hodnot získáte desetinné číslo.

1111 (binární) = 8 + 4 + 2 + 1 = 15 (desítkové)

Účtování 0 nám dává 16 možných hodnot pro čtyři binární bity. Posuňte 8 bitů a získáte 256 možných hodnot. To zabere mnohem více místa k vyjádření, protože čtyři číslice v desítkové soustavě nám dávají 10 000 možných hodnot. Binární kód samozřejmě zabírá více místa, ale počítače rozumí binárním souborům mnohem lépe než desítkovým. A pro některé věci, jako je logické zpracování, je binární lepší než desítkové.

Je třeba říci, že existuje další základní systém, který se používá při programování: hexadecimální... Přestože počítače nepracují v hexadecimálním formátu, programátoři jej používají k reprezentaci binárních adres ve formátu čitelném pro člověka, když píší kód. Je to proto, že dvě číslice hexadecimálního čísla mohou představovat celý bajt, to znamená, že nahrazují osm číslic v dvojkové soustavě. Hexadecimální systém používá čísla 0-9 a písmena A až F k získání dalších šesti číslic.

Proč počítače používají binární soubory

Krátká odpověď je: Hardware a fyzikální zákony. Každý znak ve vašem počítači je elektrický signál a v počátcích počítačů bylo měření elektrických signálů mnohem obtížnější. Bylo rozumnější rozlišovat pouze mezi stavem "zapnuto", reprezentovaným záporným nábojem, a stavem "vypnuto", reprezentovaným kladným nábojem.

Pro ty, kteří nevědí, proč je „vypnuto“ představováno kladným nábojem, je to způsobeno tím, že elektrony mají záporný náboj a více elektronů - více proudu se záporným nábojem.

Používaly se tedy dřívější počítače velikosti místnosti dvojhvězdy k budování svých systémů, a přestože používali starší, těžkopádnější hardware, fungovali na stejných základních principech. Moderní počítače použít tzv tranzistor provádět výpočty s binárním kódem.

Zde je schéma typického tranzistoru:

V podstatě umožňuje proudění proudu ze zdroje do odpadu, pokud je v bráně proud. To tvoří binární klíč. Výrobci dokážou vyrobit tyto tranzistory neuvěřitelně malé – malé jako 5 nanometrů nebo malé jako dvě vlákna DNA. Takto fungují moderní procesory a dokonce mohou trpět problémy s rozlišením mezi stavy zapnuto a vypnuto (ačkoli je to způsobeno jejich nerealistickou molekulární velikostí, s výhradou zvláštnosti kvantové mechaniky).

Proč jen binární soustava

Možná si říkáte: „Proč jen 0 a 1? Proč nepřidat ještě jedno číslo?" I když je to částečně způsobeno tradicí stavění počítačů, přidání další číslice by znamenalo potřebu zvýraznit jiný stav aktuálního, nejen „vypnuto“ nebo „zapnuto“.

Problém je v tom, že pokud chcete používat více napěťových úrovní, potřebujete způsob, jak s nimi snadno počítat, a moderní hardware, který to dokáže, není jako náhrada za binární výpočet životaschopný. Existuje například tzv trojitý počítač vyvinut v 50. letech 20. století, ale tam se vývoj zastavil. Ternární logika efektivnější než binární, ale stále neexistuje žádná účinná náhrada za binární tranzistor, nebo alespoň neexistuje tranzistor tak malý v měřítku jako binární.

Důvod, proč nemůžeme použít trojitou logiku, spočívá v tom, jak jsou tranzistory zapojeny v počítači a jak se používají pro matematické výpočty. Tranzistor přijme informaci na dvou vstupech, provede operaci a vrátí výsledek na jeden výstup.

Binární matematika je tedy na počítači jednodušší než cokoli jiného. Binární logika se snadno převede na binární systémy, přičemž True a False odpovídají stavům On a Off.

Binární pravdivostní tabulka pracující na binární logice bude mít čtyři možné výstupy pro každou základní operaci. Ale protože trojitá brána používá tři vchody, tabulka trojité pravdy by měla 9 nebo více. Zatímco binární systém má 16 možných operátorů (2 ^ 2 ^ 2), ternární systém by měl 19683 (3 ^ 3 ^ 3). Škálování se stává problémem, protože ternární je sice efektivnější, ale také exponenciálně složitější.

Kdo ví? V budoucnu je docela možné, že uvidíme trigeminální počítače, protože binární logika čelila problémům s miniaturizací. Prozatím bude svět nadále fungovat v binárním režimu.

Rozhodl jsem se udělat takový nástroj, jako je převod textu na binární kód a naopak, takové služby existují, ale většinou pracují s latinkou, ta moje je překladatel pracuje kódování unicode Formát UTF-8 který kóduje znaky azbuky ve dvou bytech. tento moment možnosti překladače jsou omezeny na dvoubajtová kódování, tzn. Čínské znaky nelze vysílat, ale toto nepříjemné nedorozumění napravím.

Chcete-li převést text na binární zadejte text do levého okna a stiskněte TEXT-> BIN, v pravém okně se objeví jeho binární reprezentace.

Chcete-li převést binární kód na text zadejte kód v pravém okně a stiskněte BIN-> TEXT v levém okně se objeví jeho symbolické znázornění.

Li překlad binárního kódu do textu nebo naopak to nevyšlo - zkontrolujte si správnost svých údajů!

Aktualizace!

Nyní je k dispozici zpětná transformace textového typu:

do normálního pohledu. Chcete-li to provést, zaškrtněte políčko: "Nahradit 0 mezerami a 1 █". Poté vložte text do pravého okna: "Text v binární reprezentaci" a klikněte na tlačítko pod ním "BIN-> TEXT".

Při kopírování takových textů je třeba být opatrní, protože můžete snadno ztratit mezery na začátku nebo na konci. Řádek výše vypadá například takto:

██ █ █ ███████ █ ██ ██ █ █ ███ ██ █ █ ██ █ ██ █ █ ██ █ ███ █ ██ █ █ ██ █ █ ███ ██ █ █ ███ ██ █ ██

a na červeném pozadí:

██ █ █ ███████ █ ██ ██ █ █ ███ ██ █ █ ██ █ ██ █ █ ██ █ ███ █ ██ █ █ ██ █ █ ███ ██ █ █ ███ ██ █ ██

uvidíte, kolik míst na konci můžete ztratit?

Množina znaků, kterými je text psán, se nazývá abeceda.

Počet znaků v abecedě je jeho Napájení.

Vzorec pro určení množství informací: N = 2 b,

kde N je mohutnost abecedy (počet znaků),

b - počet bitů (informační váha znaku).

Abeceda s kapacitou 256 znaků pojme téměř všechny potřebné znaky. Tato abeceda se nazývá dostatečný.

Protože 256 = 2 8, pak váha 1 znaku je 8 bitů.

Osmibitová jednotka byla pojmenována 1 bajt:

1 bajt = 8 bitů.

Binární kód každého znaku v počítačovém textu zabírá 1 bajt paměti.

Jak jsou textové informace reprezentovány v paměti počítače?

Pohodlnost bajtového kódování znaků je zřejmá, protože bajt je nejmenší adresovatelná část paměti, a proto může procesor přistupovat ke každému znaku samostatně a provádět zpracování textu. Na druhou stranu, 256 znaků je dostačující počet pro reprezentaci široké škály informací o znacích.

Nyní vyvstává otázka, jaký druh osmibitového binárního kódu přiřadit ke každému znaku.

Je jasné, že se jedná o podmíněnou záležitost, můžete přijít s mnoha způsoby kódování.

Všechny znaky v počítačové abecedě jsou číslovány od 0 do 255. Každé číslo odpovídá osmimístnému binárnímu kódu od 00000000 do 11111111. Tento kód je jednoduše pořadové číslo znaku v binární soustavě.

Tabulka, ve které jsou všem znakům počítačové abecedy přiřazena pořadová čísla, se nazývá kódovací tabulka.

Pro odlišné typy Počítače používají různé kódovací tabulky.

Mezinárodním standardem pro PC se stal stůl ASCII(čti asci) (Americký standardní kód pro výměnu informací).

ASCII tabulka je rozdělena na dvě části.

Mezinárodním standardem je pouze první polovina tabulky, tzn. symboly s čísly od 0 (00000000), až 127 (01111111).

Struktura tabulky kódování ASCII

Sériové číslo

Kód

Symbol

0 - 31

00000000 - 00011111

Symboly s čísly od 0 do 31 se obvykle nazývají řídicí znaky.
Jejich funkcí je řídit proces zobrazování textu na obrazovce nebo tisku, podávání zvukový signál, textové označení atd.

32 - 127

00100000 - 01111111

Standardní část tabulky (anglicky). To zahrnuje malá písmena a velká písmena Latinská abeceda, desetinné číslice, interpunkční znaménka, všechny druhy závorek, obchodní a jiné symboly.
Znak 32 je mezera, tzn. prázdné místo v textu.
Všechny ostatní se odrážejí v určitých znameních.

128 - 255

10000000 - 11111111

Alternativní část tabulky (ruština).
Druhá polovina tabulky kódů ASCII, nazývaná kódová stránka (128 kódů počínaje 10000000 a končící 11111111), může mít různé varianty, každá varianta má své vlastní číslo.
Kódová stránka se primárně používá k umístění jiných národních abeced než latinky. V ruském národním kódování obsahuje tato část tabulky symboly ruské abecedy.

První polovina ASCII tabulky


Upozorňuji na skutečnost, že v tabulce kódování jsou písmena (velká a malá písmena) uspořádána v abecedním pořadí a čísla jsou seřazeny vzestupně podle hodnot. Toto dodržování lexikografického řádu v uspořádání znaků se nazývá princip sekvenčního kódování abecedy.

U písmen ruské abecedy je také dodržován princip sekvenčního kódování.

Druhá polovina ASCII tabulky


Bohužel v současnosti existuje pět různých kódování azbuky (KOI8-R, Windows, MS-DOS, Macintosh a ISO). Z tohoto důvodu často vznikají problémy s přenosem ruského textu z jednoho počítače do druhého, z jednoho softwarový systém jinému.

Chronologicky byl jedním z prvních standardů pro kódování ruských písmen na počítačích KOI8 ("Kód výměny informací, 8-bit"). Toto kódování se používalo již v 70. letech na počítačích řady ES EVM a od poloviny 80. let se začalo používat v prvních rusifikovaných verzích operační systém UNIX.

Z počátku 90. let, doby dominance operačního systému MS DOS, zůstává kódování CP866 ("CP" znamená "Code Page").

Počítače Apple se systémem Mac OS používají vlastní kódování Mac.

Kromě toho Mezinárodní organizace pro normalizaci (International Standards Organization, ISO) schválila další kódování nazvané ISO 8859-5 jako standard pro ruský jazyk.

Nejběžnější je v současné době Microsoft kódování Windows, zkráceně CP1251.

Od konce 90. let byl problém standardizace kódování znaků řešen zavedením nového mezinárodního standardu tzv. Unicode... Jedná se o 16bitové kódování, tj. každému znaku přiděluje 2 bajty paměti. Tím se samozřejmě zdvojnásobí množství použité paměti. Ale pak takové tabulka kódů může obsahovat až 65536 znaků. Kompletní specifikace Standard Unicode zahrnuje všechny existující, zaniklé a uměle vytvořené abecedy světa, stejně jako mnoho matematických, hudebních, chemických a dalších symbolů.

Zkusme si pomocí ASCII tabulky představit, jak budou slova vypadat v paměti počítače.

Vnitřní reprezentace slov v paměti počítače

Někdy se stává, že text sestávající z písmen ruské abecedy přijatý z jiného počítače nelze přečíst - na obrazovce monitoru je vidět nějaký druh "blábolu". To je způsobeno tím, že počítače používají různé kódování znaků ruského jazyka.

K překladu ze strojového jazyka do běžného se používá dekódování binárního kódu. Online nástroje fungují rychle, i když je snadné to udělat ručně.

K přenosu informací v digitální podobě se používá binární nebo binární kód. Sada pouze dvou znaků, například 1 a 0, umožňuje zašifrovat jakékoli informace, ať už jde o text, čísla nebo obrázek.

Jak šifrovat pomocí binárního kódu

Pro ruční překlad libovolných symbolů do binárního kódu se používají tabulky, ve kterých je každému symbolu přiřazen binární kód ve formě nul a jedniček. Nejběžnějším kódovacím systémem je ASCII, který používá 8bitovou notaci kódu.

Základní tabulka obsahuje binární kódy pro latinku, čísla a některé symboly.

Do rozšířené tabulky byla přidána binární interpretace azbuky a dalších znaků.

K překladu z binárního kódu do textu nebo čísel stačí vybrat požadované kódy z tabulek. Ale dělat takovou práci ručně samozřejmě trvá dlouho. A chyby jsou navíc nevyhnutelné. Počítač se s dešifrováním vyrovná mnohem rychleji. A ani si nemyslíme, když píšeme na obrazovce text, že se v tuto chvíli text překládá do binárního kódu.

Převod binárního čísla na desítkové

Chcete-li ručně převést číslo z binární číselné soustavy na desítkovou, můžete použít poměrně jednoduchý algoritmus:

  1. Pod binárním číslem, počínaje extrémem pravá číslice, pište číslo 2 v rostoucích stupních.
  2. Vynásobte mocniny čísla 2 odpovídající číslicí binárního čísla (1 nebo 0).
  3. Přidejte výsledné hodnoty.

Takto vypadá algoritmus na papíře:

Online služby pro binární dešifrování

Pokud přesto potřebujete vidět dešifrovaný binární kód, nebo naopak text přeložit do binární podoby, nejjednodušší je využít online služby k tomu určené.

Dvě okna, obvyklá pro online překlady, umožňují téměř současně vidět obě verze textu v normální i binární podobě. A dešifrování se provádí v obou směrech. Zadávání textu se provádí jednoduchým kopírováním a vkládáním.