Kas ir svērtā un nesvērtā kodēšana?

Abstrakts binārā koda fons

Svērtā kodēšana palīdz bināros reklāmguvumus.

Attēla kredīts: leszekglasner/iStock/Getty Images

Digitālās shēmas, kuras redzat datoros un citās elektroniskās ierīcēs, var sazināties tikai ar diviem jēdzieniem: ieslēgtu un izslēgtu. Šie jēdzieni mums tiek attēloti binārās numerācijas veidā, kur 0 ir izslēgts un 1 ir ieslēgts. Lai patiesi sazinātos ar datoru, ir nepieciešami turpmāki pārveidojumi, lai datora valoda kļūtu cilvēciskāka. Pirmais solis konvertēšanas procesā ir binārās kodēšanas pārveidošana par lasāmāku decimālo sistēmu. Svērtā un nesvērtā kodēšana attiecas uz metodi, kurā binārie skaitļi tiek pārvērsti decimāldaļās. Izmantojot svērto kodēšanu, katram skaitļa ciparam pirms konvertēšanas tiek piešķirta svērtā vērtība. Nesvērtās kodēšanas metodes izmanto nedaudz dažādas formulas, bet veic konvertēšanu bez svara vērtības.

Pirms izprast svērto kodēšanu, vispirms ir jāsaprot numerācijas sistēmas un pozīcijas apzīmējumi.

Dienas video

Numerācijas sistēmas

Numerācijas sistēmas ir apzīmētas ar bāzi, kas ir lielākais skaitlis, līdz kuram var saskaitīt, pirms jāpievieno vēl viens cipars. Piemēram, numerācijas sistēmu, kuru mēs visi mācāmies bērnībā, sauc par 10. bāzi, jo pirmos desmit skaitļus secībā no 0 līdz 9 var saskaitīt, izmantojot vienu ciparu. Kad esat sasniedzis 10, jums viss ir jāpārbīda un jāskaita ar divciparu skaitļiem, līdz iegūstat 100, un pēc tam skaitiet ar trīsciparu skaitļiem. Šo 10. bāzes sistēmu sauc arī par decimālo sistēmu.

Pozīcijas apzīmējums

Pozicionālais apzīmējums notiek, kad katram reālā skaitļa ciparam piešķirat pozīcijas vērtību no labās uz kreiso pusi. Piemēram, skaitlim 4782, sākot ar 2 un skaitot no labās uz kreiso pusi, pozīcijas ir 0, 1, 2, 3, kā norādīts tālāk:

4782 = skaitlis 3210 = pozīcijas vērtības

Svērtā kodēšana

Iepriekš minētajā piemērā pozīcijas piešķīrumi no 0 līdz 3 var būt tiem piešķirto ciparu svērtās vērtības. Tātad 4 svars ir 3 un 7 svars ir 2. Skaitļa svars tiek izmantots, konvertējot no jebkuras bāzes numerācijas sistēmas uz decimālo (10. bāzes) numerācijas sistēmu. Viena formula svērtā skaitļa konvertēšanai ir reizināt katru ciparu ar tā bāzi ar pozīcijas pakāpi un pēc tam pievienot visus iegūtos ciparus. Tālāk esošajā piemērā 100101, kas ir 2. bāzes binārs skaitlis, tiek pārveidots par decimālo (10. bāzes) skaitli.

100101 = binārs (2. bāze) skaitlis 543210 = pozicionālie svari (1 x 2^5) + (0 x 2^4) + (0 x 2^3) + (1 x 2^2) + (0 x 2^1) ) + (1 x 2^0) = 32 + 0 + 0 + 4 + 0 + 1 = 37 37 bāze10 = decimālā konversija

Citas svērtās metodes ietver BCD un 2421, no kurām katra izmanto līdzīgu formulu, lai piešķirtu svaru un konvertētu decimāldaļās.

Nesvērtā kodēšana

Pelēks kods ir nesvērta kodēšanas metode, kas maina tikai vienu bitu binārā skaitļā, pārejot no viena decimālskaitļa uz nākamo. Parastā binārajā kodēšanā cipari 10 apzīmē decimālo skaitli 2. Izmantojot pelēko kodu, viens šī binārā skaitļa bits mainās, tāpēc decimālais skaitlis 2 tiek attēlots ar binārajiem cipariem 0011. Secīgi decimālskaitlis 3, ko parasti attēlo bināri cipari 0011, tagad tiek pārveidots par 0010, jo var mainīties tikai viens bits.

Excess-3 ir vēl viena nesvērtā kodēšanas metode, un tā savulaik tika izmantota vecos datoros un pievienošanas mašīnās. Izmantojot over-3, jūs pievienojat 3 decimālskaitļam, pirms to pārveidojat par bināro skaitli. Tātad, piemēram, decimālskaitlis 2 vispirms palielināsies par 3, padarot to par 5. Binārais 2 pārveidojums, izmantojot Excess-3 metodi, būtu 0101 tā parastās binārās vērtības 0010 vietā.