Slik konverterer et desimaltall til en fullpakket BCD

Slik konverterer et desimaltall til en fullpakket BCD


Datamaskiner operere på numeriske data ved hjelp av binære representasjoner av nummeret. En alternativ metode for å overføre tallene til prosessoren er å bruke Binary Coded Decimal (BCD). BCD koder for et nummer ved å oversette hvert enkelt siffer i nummeret til en egen byte. Denne fremgangsmåte har ingen øvre grense på størrelsen av nummeret overføres. På grunn av den ekstreme verdien for lagring i et datamaskinsystem, ved hjelp av BCD avfall øvre nibble (4-biter) i hver byte. Et system betegnet som pakket BCD løser dette problemet. I pakket BCD, hver bite av en byte inneholder ett siffer i nummeret kodet i binær notasjon.

Bruksanvisning

1 Bryt desimaltallet du ønsker å kode inn pakket BCD notasjon i enkelte sifre. Ikke bland opp rekkefølgen på tallene som som vil endre nummer. For eksempel, skriv 9341 i pakket BCD format. Bryt antallet ned i sine tall, beholder samme bestilling: 9, 3, 4 og 1.

2 Konverter det første sifferet fra høyre inn i binær kode. Sifrene fra 0 til 9 er representert ved binære tall 0000 til 1001. Det blir de første fire biter av byte. Fortsetter eksempel konvertere desimal 1 til binær, 00000001.

3 Konverter neste tall i rekken fra høyre inn i binær. Erstatte de fire første bits av byte, som alle er nuller, med den lengst til høyre fire bitene i den binære tall. Du har nå en enkelt byte som inneholder informasjon om et tosifret tall. En byte kodet som en pakket BCD kan representere desimaler fra 00 til 99. Fortsetter eksempel, er neste siffer 4. Omregnet til binær det er 00000100. Sett av de siste fire biter med de fire første bitene av byte som inneholder det første nummeret. Plasser 0100 til første byte i de fire lengst til venstre stillinger som resulterer i 01000001. Denne byte representerer 41 i pakket BCD format.

4 Gjenta omdannelsen av sifre og konstruksjon av byte på samme måte for de øvrige sifre i desimaltall. Resultatet blir en serie byte som representerer en hvilken som helst desimaltall. Fullfører eksempel, de to siste sifrene er 3 og 9. Deres binære ekvivalenter 00000011 og 00001001. sette disse sammen til en enkelt byte i riktig rekkefølge resultatene i 10010011. The pakket BCD for desimal 9341 er 10.010.011 01.000.001.