karakterkódolás

karakterkódolás

Home | Rólunk | visszacsatolás

Információk alapján a kapacitás egy cella 1 bit elkódolhatsz két különböző államokban. Ahhoz, hogy minden karakter beírható a billentyűzet latin nyilvántartásba. kapott egy egyedi bináris kód 7 bitet. Szekvenciájára alapozva 7 bit, a következő képlet szerint Hartley, úgy állíthatjuk elő, N = 7 február = 128 különböző kombinációi nullák és egyesek, azaz bináris kódokat. Hozzárendelése az egyes karakterek bináris kód, akkor egy kódolási táblázat. Man működik karakterek, a számítógép - a bináris kódokat.

Latin billentyűzetkiosztás ilyen kódolási táblázat egyik az egész világon, így beírt szöveget a latin elrendezés, akkor megfelelően jelenik meg minden számítógépen. Ez a táblázat a neve az ASCII (American Standard Code Information Interchange) angolul ejtik [eski] orosz ejtik [Asuka]. Az alábbiakban a teljes ASCII táblázat, amelyben kódok decimális formában. Be lehet meghatározni, hogy amikor belép a billentyűzeten, például a „*” jelet, akkor érzékeli, mint egy számítógépes kód 42 (10). viszont 42 (10) = 101010 (2) - Ez a bináris kód a karakter "*". Kódjai 0-31 ebben a táblázatban nem használják.

Táblázat ASCII karaktereket

A tárolásához kódokat, valamint a nemzeti jellegét az egyes országok (a mi esetünkben - a cirill karaktereket) a felvenni kívánt további 1 bit, ami növeli a számos egyedi kombinációja nullák és egyesek kétszer, azaz a rendelkezésünkre lesz egy további 128 ingyenes kódok (128 th 255 th), megfelel, amely lehetővé tette a szimbólumok a magyar ábécé.

Így fenntartott információk tárolására minden karakter kódja 8 bit, megkapjuk N = 2 8 = 256 egyedi bináris kódok, ami elég ahhoz, hogy kódolja az összes karakter beírható a billentyűzetről.

Ez elvezet minket annak szükségességét, hogy megismerjék a másik mérésének alapegysége - byte.

Byte - egy 8 bit sorozatából áll.

1 byte = március 2. bit = 8 bit.

Alapján egyetlen bájt lehet beszerezni augusztus 2 = 256 egyedi bináris kódokat.

A modern kódolási táblázatokat információ tárolására a kódot minden karakter kap 1 byte.

1 karakter = 1 byte.

A mért adatok mennyisége byte (V) a tárolás során, és átvitel kommunikációs csatornák. Például a „Helló!” Az összegének 12 bájt.

A bit egy bájt számozása a végén egy 0-edik 7-én. Minimális kombináció alapján egyetlen byte - nyolc nulla, maximum - nyolc egységet. Ábra. 18a.

11111111 (2) = 2 7 +2 6 +2 5 +2 4 +2 3 +2 2 +2 1 +2 0 = 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255 (10)

Amikor tároltuk a fizikai szinten, minden bájt lehet végrehajtani, például alapján nyolc kondenzátorok, amelyek mindegyike vagy lemerült (0) vagy töltött (1). Ábra. 18b.

Ábra. 18a. Byte: a minimális és maximális kombinációját

Ábra. 18b. Byte: megfelelő bináris szám, és az elektromos impulzus.

Visszatérve a kód táblázat, tudomásul vesszük, hogy a mai napig a használata nem egy, hanem több kódolási táblázatokat beleértve a cirill kódok - ezek a szabványok kidolgozása különböző időpontokban és különböző szervek. Ezek a táblák különböznek, hogy milyen sorrendben vannak elrendezve egymás mögött karakter cirill ábécé, így ugyanazt a kódot felelnek meg a különböző karaktereket. Emiatt vagyunk néha szembe szövegeket, amelyek a magyar betűk, de egy értelmetlen sorrendben számunkra.

Például a szöveg „a számítógépes vírusok” bevezetett Windows-1251 a KOI-8 fog megjelenni a következő: „lPNRShAFETOShE CHYTHUSCH”.

Következetlensége karakter kódok különböző kódolások cirill.

Ezt a problémát meg lehet oldani - minden számítógépen van az összes fő kódolási táblázat, és ha a teszt nem megfelelő, hogy megpróbálja újrakódolni, egyszerűen megadásával olyan kódolási táblázat arra, hogy más. De létezik ez a probléma, természetesen hozza a kellemetlenségekért.

Segítségével egy 8 bites, nem látjuk olyan kódolási táblázat a megfelelően figyelemmel és szövegeket, a használó nyelvet eltérő karakterek a latin és a cirill, például karakterek ékezetes a német nyelvet.

Elméletileg van egy hosszú ideje, hogy megoldja ezeket a problémákat. Ez az úgynevezett Unicode (Unicode). Unicode - ez egy kódolási táblázat, amely felhasználja 2 bájt kódolásához minden egyes karakter, azaz 16 bit. Alapján egy ilyen táblázat lehet kódolva N = február 16 = 65536 szimbólumokat.

Unicode tartalmazza szinte az összes modern irodalom, többek között: arab, örmény, bengáli, burmai, görög, grúz, dévanágari, héber, cirill, kopt, Khmer, latin, tamil, hangul, Han (Kína, Japán, Korea), Cherokee, etióp japán (katakana, hiragana, kandzsi), és mások.

A Unicode, sokféle matematikai és zenei jelek és piktogramok.

Ahhoz, hogy a cirill karakterek Unicode tartományban két kód kiosztott:

Cirill (# 0400 - # 04FF)

Cirill kiegészítés (# 0500 - # 052F).

De a bevezetése Unicode táblázat a legtisztább formában korlátozza, az az oka, hogy ha a kód egy karaktert fogja elfoglalni egynél több bájtot és két bájt, hogy tárolja a szöveges szüksége lesz kétszer annyi helyet, valamint az átviteli kommunikációs csatornákon keresztül - kétszer annyi ideig.

Tehát most a gyakorlatban több közös képviselete az Unicode UTF-8 (Unicode Transformation Format). UTF-8 biztosítja a legjobb kompatibilitást a rendszereknél, amelyek a 8 bites karaktereket. Szöveg, amely csak szimbólumok száma kevesebb, mint 128 átalakítjuk egy közönséges ASCII írásakor UTF-8. A fennmaradó Unicode karakterek képviselik hosszúságú szekvenciák 2-4 bájt. Általában a leggyakoribb a világon a szimbólumok - szimbólumok a latin ábécé - is elfoglalják 1 byte kódolás sokkal gazdaságosabb, mint a tiszta Unicode UTF-8.

1. Az angol szövegben kódolva csak 26 az ábécé és 6 írásjeleket. Ebben az esetben a szöveg, amely 1000 karakter lehet garantálni a veszteségmentes tömörítés a mérete:

2. szótár Ellochka - „Cannibal” (karakter a regény „A Tizenkét szék”) a 30 szó. Hány bit elég kódolni a szókincs Ellochka? Változatok 8, 5, 3, 1.

4.4. Egység az adatmennyiség és a memória kapacitása: kilobájt, megabájt, gigabájt ...

Tehát azt találtuk, hogy a legtöbb modern kódoló tárolása elektronikus média egy karakter a szöveg adott 1 byte. Ie bájt mennyiség (V), annak során az adatok tárolása és továbbítása (fájlok, üzenetek).

A mennyiségi adatok (V) - a szükséges bájtok számát, hogy tárolja azokat a memóriában a számítógépes adathordozón.

Memória hordozók, viszont korlátozott kapacitású. azaz képes tartani egy bizonyos összeget. Memória kapacitás az elektronikus média, persze, szintén bájt.

Azonban byte - kis egységnyi adatmennyiség nagyobb kilobájt, megabájt, gigabájt, terabájt ...

Szükséges megjegyezni, hogy az előtag „kilo”, „mega”, „giga” ... nem ebben az esetben tizedes. Tehát „kilo” a „kilobájt” nem azt jelenti, „ezer”, azaz Ez nem azt jelenti, „március 10.” Bit - egy bináris egyet, és emiatt a számítógép könnyen kezelhető többszöröse mértékegységek „2” a szám helyett a „10”.

1 bájt = 2 3 = 8 bit, 1 kilobájt = 2 10 = 1024 bájt. A bináris 1 kilobájt = 10000000000 bájt.

Ie „Kilo” megjelölésen a jelen leírásban a legközelebbi ezer szám, amely egy 2-hatvány, azaz a amely „kerek” a bináris rendszerben.

1 099 511 627 776 b

Ebben az összefüggésben az a tény, hogy a kötet a mértékegységeket és kapacitás adathordozók többszöröse 2 és 10 többszöröse, a legtöbb feladatot a témában könnyebb megoldani, ha megjelennek az érték a mértéke 2. Itt egy példa egy ilyen problémát és a megoldást:

A szöveges fájl tárolja a szöveg 400 oldalas. Minden oldal tartalmaz 3200 karakter. Ha a kódoló KOI-8 (8 bit per karakter), a fájl mérete:

1) Határozza meg a karakterek száma egy szöveges fájlt. Ugyanakkor bemutatjuk többszörösét 2 hatványa formájában 2 hatványa, azaz a 4 helyett, írd 2 2 stb Mértékének meghatározására a 7. táblázat is használható.

2) szerint a feladat állapot 1 szimbólum 8 bit, azaz 1 byte => file foglal július 2 * 10000 bájt.

3) 1 kilobyteos = 2 10 bájt => a fájl mérete kilobájtban, egyenlő:

1. Hány bitet egy kilobyte?

2. Mi az 1 MB-ot?

4. A kötet a text fájlban 640 Kb. Ez a fájl tartalmazza a könyv, amely szerzett átlagosan 32 oldalankénti sorok és 64 karakter soronként. Hány oldalt van a könyvben: 160, 320, 540, 640, 1280?

5. A dokumentáció alkalmazottak tartsa 8 Mb. Mindegyikük tartalmaz 16 oldal (32 sor 64 karakter soronként). Hány fő: 256; 512; 1024; 2048?

Kapcsolódó cikkek