Pipedija - tautosaka, gandai, kliedesiai ir jokios tiesos! Durniausia wiki enciklopedija durnapedija!


Kontrolinis bitas

Iš Pipedijos - durniausios enciklopedijos.
Jump to navigation Jump to search

Kontrolinis bitas - pats mažiausias ir paprasčiausias kontrolinės sumos atvejis, susivedantis į vieną bitą. Kaip ir kitos kontrolinės sumos, taip ir kontrolinis bitas naudojamas tam, kad būtų galima atsekti, ar kartais kaip nors netyčia nepasikeitė perduodami duomenys. Kontrolinis bitas - tai tiesiog papildomas bitas, kuris pridėtas prie kitų bitų sekos ir leidžiantis patikrinti, ar ta seka nepasikeitė.

Pačiu įprasčiausiu atveju kontrolinis bitas naudojamas elementariai: perduodamame duomenų pakete yra suskaičiuojama, kiek bitų yra 1, o kiek bitų yra 0 ir jei bitų skaičius yra nelyginis, tai kontrolinis bitas yra statomas į 1, o jei nulinis arba lyginis - tai į 0. Paskui, gavus duomenis, galima patikrinti, ar išties kontrolinis bitas atitinka tuos persiųstus duomenis. Jei atitinka - tai viskas gerai, bet jei neatitinka - tai reiškia, kad buvo perdavimo klaida ir duomenų persiuntimą reikia pakartoti.

Nors paskiras kontrolinis bitas yra labai menko patikimumo, bet duomenys dažniausiai būna siunčiami gana dideliais kiekiais, taigi, jei kiekvienam baitui bus pridedamas vienas kontrolinis bitas, tai netgi nedidelį tekstą siunčiant, kontrolinių bitų gausis visa krūva, tad jei transmisija vyks prastai, klaidingų bitų bus visa krūva ir blogas persiuntimas lengvai pasimatys. Jei papildomi kontroliniai bitai dar bus pridedami ir iš baitų grupių sudarytiems duomenų paketams, tai jau gausis labai neblogai sukontroliuoti, ar kažkur įvyko klaida, ar neįvyko.

Kaip pvz., polioktetiniame kodavime kontrolinis bitas gali būti pridedamas kiekvienam baitui, paskui kiekvienai sekai iš 8 baitų, o paskui kiekvienoms 8 tokioms aštuonbaitėms sekoms, o paskui dar kiekvienoms 8 dar didesnėms sekoms, sudarytoms iš 64 baitų, t.y., 512 baitų grupėms. Taigi, gaunasi sąlyginai nedidelis bendro persiunčiamo duomenų kiekio padidėjimas (papildomi (512+64+8)/8=73 baitai pusei kilobaito duomenų), tačiau pažeisti paskirą bitą ir išlaikyti tą pažeidimą nepastebėtu būna praktiškai neįmanoma. Taigi, praktiškai bet koks duomenų modifikavimas ar triukšminis pažeidimas tampa atsekamu ir netgi gana geru patikimumu nustatoma to pažeidimo vieta.

Taigi, jei duomenų sutrikimas yra pastebėtas, jį nesunkiai galima pataisyti, persiunčiant duomenis ar paskui juos lyginant. Taip galima gauti gana patikimą duomenų persiuntimą netgi kai duomenų kanalas turi labai aukštą triukšmo lygį.

Žodžiu, kad ir paprastas, bet kontrolinis bitas yra labai neblogas būdas patikrinti duomenų vientisumui.