Hvad er vægtet og ikke-vægtet kodning?

Abstrakt binær kode baggrund

Vægtet kodning hjælper med binære konverteringer.

Billedkredit: leszekglasner/iStock/Getty Images

Det digitale kredsløb, du ser inde i computere og andre elektroniske enheder, kan kun kommunikere via to koncepter: tændt og slukket. Disse begreber er repræsenteret for os i form af binær nummerering, hvor 0 er slået fra og 1 er tændt. For virkelig at kommunikere med en computer er yderligere konverteringer nødvendige for at bringe computersproget til et mere menneskeligt format. Det første trin i konverteringsprocessen er at konvertere binær kodning til et mere læsbart decimalsystem. Vægtet og ikke-vægtet kodning refererer til den metode, hvor binære tal konverteres til decimal. Med vægtet kodning tildeles hvert ciffer i et tal en vægtet værdi før konverteringen. Ikke-vægtede kodningsmetoder bruger lidt varierede formler, men udfører konverteringerne uden vægtværdien.

Før du forstår vægtet kodning, skal du først forstå nummersystemer og positionsnotation.

Dagens video

Nummersystemer

Nummersystemer er angivet med en base, som er det højeste tal, du kan tælle til, før du skal tilføje endnu et ciffer. For eksempel kaldes det nummersystem, vi alle lærer som børn, base 10, fordi de første ti tal i rækkefølgen, 0 til 9, kan tælles ved hjælp af enkeltcifre. Når du kommer til 10, skal du flytte alt over og tælle i to-cifrede tal, indtil du kommer til 100, og så tæller du i tre-cifrede tal. Dette base 10-system kaldes også decimalsystemet.

Positionsnotation

Positionel notation opstår, når du tildeler en positionsværdi til hvert ciffer i et reelt tal, fra højre mod venstre. For tallet 4782, for eksempel, startende med 2 og tæller fra højre mod venstre, er positionerne 0, 1, 2, 3 som i følgende:

4782 = antal 3210 = positionsværdier

Vægtet kodning

I eksemplet ovenfor kan positionstildelingerne 0 til 3 være de vægtede værdier af deres tildelte cifre. Så vægten af ​​4'eren er 3 og vægten af ​​7'eren er 2. Vægten af ​​et tal spiller ind, når man konverterer fra et hvilket som helst basisnummersystem til decimaltalsystemet (grundlag 10). En formel til at konvertere et vægtet tal er at gange hvert ciffer med dets grundtal til potensen af ​​dets position og derefter tilføje alle de resulterende cifre. I eksemplet nedenfor er 100101, som er et binært grundtal 2, konverteret til et decimaltal (grundlag 10).

100101 = Binært (grundtal 2) tal 543210 = positionsvægte (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 37base10 = decimalkonvertering

Andre vægtede metoder omfatter BCD og 2421, som hver bruger en lignende formel til at tildele vægte og konvertere til decimal.

Ikke-vægtet kodning

Grå kode er en ikke-vægtet kodningsmetode, der kun ændrer én bit i et binært tal, når man flytter fra et decimaltal til det næste. I normal binær kodning vil cifrene 10 repræsentere decimaltallet 2. Når du bruger grå kode, ændres en bit af det binære tal, så decimaltallet 2 er repræsenteret af de binære cifre 0011. Sekventielt konverteres decimaltallet 3, som normalt ville være repræsenteret af de binære cifre 0011, nu til 0010, fordi kun den ene bit kan ændre sig.

Excess-3 er en anden ikke-vægtet kodningsmetode og blev engang brugt i ældre computere og tilføjelsesmaskiner. Med overskydende 3 tilføjer du 3 til et decimaltal, før du konverterer det til binært. Så decimaltallet 2, for eksempel, ville først stige med 3, hvilket gør det til 5. Den binære konvertering af 2 ved brug af Excess-3-metoden ville være 0101 i stedet for dens normale binære værdi på 0010.