Kje se uporablja binarni decimalni sistem? Predstavitev števil v binarni kodi. Pretvarjanje števil: iz binarnih v decimalna

Dvojiški decimalni številski sistem. Decimalne števke od 0 do 9 so nadomeščene z binarnimi tetradami, ki jih predstavljajo: 0=0000, 1=0001, 2=0010, 3=0011, 4=0100, 5=0101, 6=0110, 7=0111, 8=1000 in 9 = 1001. Ta zapis se zelo pogosto uporablja kot vmesni korak pri pretvorbi števila iz decimalnega sistema v dvojiški ali obratno. Ker 10 ni natančna potenca števila 2, se ne uporablja vseh 16 tetrad, algoritmi za aritmetične operacije z večmestnimi števili pa so bolj zapleteni kot v osnovnih številskih sistemih. In vendar se binarni decimalni številski sistem uporablja celo na tej ravni v mnogih mikrokalkulatorjih in nekaterih računalnikih (zlasti Yamaha MSX).

Ker sta predstavitev in aritmetika v decimalnem številskem sistemu najbolj poznana človeku, binarna predstavitev in binarna aritmetika pa računalnikom, je bil uveden kompromisni sistem dvojiško-decimalnega zapisa števil. Ta sistem se najpogosteje uporablja tam, kjer je treba pogosto uporabljati decimalni vhodno/izhodni postopek. (elektronske ure, kalkulatorji, klicne številke itd.). V takih napravah zaradi majhne količine programskega pomnilnika ni vedno priporočljivo zagotoviti univerzalne mikrokode za pretvorbo binarnih števil v decimalna števila in obratno.

Načelo tega sistema je precej preprosto: vsaka decimalna številka se pretvori neposredno v svoj 4-bitni decimalni ekvivalent, na primer: 369110=0011 0110 1001 0001DEC:

Decimalno 3 6 9 1 BCD 0011 0110 1001 0001

Pretvorimo dvojiško decimalno število 1000 0000 0111 0010 v njegov decimalni ekvivalent. Vsaka skupina 4 bitov se pretvori v svoj decimalni ekvivalent. Dobimo 1000 0000 0111 0010DEC = 807210:

BCD 1000 0000 0111 0010 Decimalno 8 0 7 2

Mikroprocesorji uporabljajo čista binarna števila, razumejo pa tudi ukaze za pretvorbo BCD. Dobljena binarna decimalna števila zlahka predstavimo v decimalnem zapisu, ki je ljudem bolj razumljiv.

Pretvarjanje binarnih števil v BCD

Aritmetično-logična enota mikrokontrolerjev AVR (kot tudi drugih mikroprocesorjev) izvaja elementarne aritmetične in logične operacije nad števili, predstavljenimi v binarni kodi. Rezultati pretvorbe ADC se berejo v binarni kodi, primerna je obdelava rezultatov meritev v binarni kodi (v obliki celih števil ali števil s plavajočo vejico). Ko pa je na indikatorju prikazan končni rezultat, ga je treba pretvoriti v decimalno obliko, ki jo lahko bere človek.

Ta razdelek obravnava programe za pretvorbo binarnih števil v BCD.

1. Formati za predstavitev decimalnih števil

Trenutno obstajata dve pogosti obliki za predstavitev decimalnih števil v mikroprocesorjih - pakirana binarno kodirana decimalna koda (BCD-Binary-Coded Decimal) in nepakirana decimalna koda.

Pakirana koda BCD je predstavitev decimalne številke, kjer je vsaka decimalna cifra predstavljena s 4-bitno binarno pozicijsko kodo 8-4-2-1. V tem primeru bajt vsebuje dve decimalni števki. Najmanj pomembna decimalna cifra zavzema desno tetrado (biti 3:0), najpomembnejša decimalna cifra pa levo tetrado (biti 7:4). Večbitna števila BCD zasedajo več sosednjih bajtov. Če je število predznačeno, je najpomembnejša tetrada najpomembnejšega bajta dodeljena za predstavitev predznaka v formatu BCD. Za kodiranje znaka je mogoče uporabiti šest vzorcev binarne kode, ki se ne uporabljajo za predstavitev decimalnih števk. To so kode 1010-1111 (A-F v šestnajstiški obliki). Običajno se za kodiranje znaka plus uporablja koda 1100 (C), za znak minus pa 1101 (D).

Nepakirana decimalna koda je podnabor mednarodne tabele za kodiranje znakov ASCII (tabela 1). Vidimo lahko, da shranjevanje nepakiranih decimalnih števil zahteva dvakrat več pomnilnika, saj je vsaka številka predstavljena z 8-bitno kodo. Tabela 1: Kode ASCII za decimalna mesta

2. Pretvorite 16-bitna cela števila v BCD števila

www.atmel.com ponuja program "bin2bcd16" za pretvorbo 16-bitnih binarnih celih števil v pakirana BCD števila. Ta članek obravnava program "bin16bcd5" (glej dodatek, program 1), ki ga je napisal A.V. Tereshkin po algoritmu, opisanem v, in opravlja isto nalogo. Slednji program se je izkazal za učinkovitejšega od prvega glede hitrosti, dolžine kode in števila uporabljenih registrov.

Algoritem programa "bin16bcd5" je naslednji. Recimo, da imamo 16-bitno celo število brez predznaka (razpon od 0 do 65535). Očitno morate najti 5 decimalnih mest. Metoda pretvorbe je, da od prvotnega števila odštejemo 10.000 in najprej določimo decimalno številko desettisoč. Nato poiščemo tisočico z zaporednim odštevanjem števila 1000 itd. Odštevanje se izvaja vsakič, dokler s štetjem števila odštevanj ne dobimo negativne razlike. Pri prehodu na definicijo vsakega naslednjega decimalnega mesta v registrih prvotnega števila se obnovi zadnja pozitivna razlika. Ko je najdena decimalna števka desetic, bo decimalna števka enot ostala v izvirnih številskih registrih.

Program "bin16ASCII5" (glejte dodatek, program 2) pretvori 16-bitno binarno celo število v nepakirano decimalno število. Uporablja se isti algoritem.

3. Pretvarjanje binarnega ulomka v ulomek BCD

Dvojiški ulomek je po definiciji predstavljen z naslednjim izrazom:

0.A-1A-2 ... A-m = A-1*2-1 + A-2*2-2 + ... A-m*2-m

Iz te predstavitve sledi transformacijski algoritem (slika 2), ki vsebuje m korakov. Na vsakem koraku se dvojiško-decimalnemu rezultatu doda naslednja binarna cifra in celoten rezultat se deli z 2.

Prikazan je binarni register, ki vsebuje izvirni binarni ulomek in BCD zapakiran rezultat. Oba registra zaradi preglednosti prikazujeta tudi števko enot in položaj točke, ki v pomnilniku mikroprocesorja nista predstavljena na noben način, vendar je položaj vedno strogo določen. Število ciklov obravnavanega algoritma je enako številu bitov binarnega ulomka. Bitna velikost binarnega decimalnega registra je določena z zahtevano natančnostjo izračuna.

Dodajanje te števke številu BCD pomeni, da jo je treba umestiti v števko enot BCD številke, od koder se ob naknadnem deljenju z dve števka A-i premakne na najpomembnejšo števko najpomembnejše tetrade decimalnega ulomka. . Pri programiranju si lahko mesto decimalnih enot predstavljamo kot prenosni bit C.

Pri deljenju pakiranega binarnega števila z dve se tako kot pri deljenju binarnega števila premakne za eno mesto v desno. V tem primeru se vsaka tetrada, to je vsaka decimalna številka, deli z dva. Pri deljenju sode decimalne števke na ustreznem mestu se ponovno dobi decimalna števka in popravek ni potreben. Pri deljenju lihe decimalne številke z 2 je treba preostanek 5 prišteti spodnjemu decimalnemu mestu, vendar binarni premik v resnici doda številko 8 (težo najpomembnejše tetradne števke) spodnji tetradi. Zato je potrebna korekcija rezultata, ki je sestavljena iz odštevanja števila 3 od vsebine tistih zvezkov, ki imajo po premiku v desno nastavljene najpomembnejše števke.

4. Pretvorite števila s plavajočo vejico v števila BCD

Predstavitev števil s plavajočo vejico je naslednja:

kjer je M binarna mantisa števila, P je binarni vrstni red števila.

Ta predstavitev se pogosto uporablja v decimalnem številskem sistemu za predstavitev zelo velikih ali zelo majhnih števil. Mantisa in eksponent sta celi števili s predznakom. Znak mantise je znak celotnega števila. Vrstni red prikazuje pravi položaj točke namesto tistega, ki ga zavzema na sliki mantise. Binarno število s plavajočo vejico se razlikuje od decimalne, ki smo je vajeni, v tem, da je točka binarna, to pomeni, da vrstni red označuje število binarnih (in ne decimalnih) števk, za katere je treba to točko premakniti v levo ali desno.

Normalizirana predstavitev števila s plavajočo vejico je predstavitev, pri kateri je mantisa pravi ulomek in je njena prva števka različna od nič. Za binarno število pa zahteva, da je vodilna števka drugačna od nič, pomeni, da je ta števka enaka 1. Če je vodilna števka natančno znana, je ni treba shraniti v pomnilnik.

Koncept mešanega številskega sistema

Med številskimi sistemi obstaja razred ti mešani številski sistemi.

Definicija 1

Mešano temu se reče zapis, v katerem so števila, določena v določenem številskem sistemu z osnovo $P$, predstavljena s števkami drugega številskega sistema z osnovo $Q$, kjer je $Q

Poleg tega je v takem številskem sistemu, da bi se izognili neskladjem v predstavitvi vsake števke sistema z osnovo $P$, dodeljeno enako število števk sistema z osnovo $Q$, ki zadostuje za predstavitev katerega koli števko sistema z osnovo $P$.

Primer mešanega številskega sistema je dvojiško-decimalni sistem.

Praktična utemeljitev za uporabo dvojiškega decimalnega številskega sistema

Ker oseba v svoji praksi pogosto uporablja decimalni številski sistem, računalnik pa običajno deluje z binarnimi številkami in binarno aritmetiko, je bila v praksi uvedena kompromisna možnost - binarni decimalni zapisni sistem, ki se običajno uporablja tam, kjer je treba pogosto uporabljati decimalni vhodno-izhodni postopek (na primer elektronske ure, kalkulatorji itd.). V takih napravah ni vedno priporočljiva uporaba univerzalne mikrokode za pretvorbo binarnih števil v decimalna števila in obratno zaradi majhne količine programskega pomnilnika.

Opomba 1

V nekaterih vrstah računalnikov aritmetično logične enote (ALU) vsebujejo posebne decimalne aritmetične enote, ki izvajajo operacije s števili, predstavljenimi v dvojiški decimalni kodi. To v nekaterih primerih omogoča znatno povečanje zmogljivosti računalnika.

Na primer, avtomatiziran sistem za obdelavo podatkov uporablja veliko število številk, vendar ne izvaja veliko izračunov. V tem primeru bi operacije prenosa številk iz enega sistema v drugega bistveno presegle čas, potreben za izvedbo operacij obdelave informacij. Po drugi strani pa mikroprocesorji uporabljajo čista binarna števila, razumejo pa tudi ukaze za pretvorbo v binarni decimalni zapis. ALU mikrokrmilnika AVR (kot tudi drugih mikroprocesorjev) izvaja elementarne aritmetične in logične operacije nad števili, predstavljenimi v binarni kodi, in sicer:

    bere rezultate pretvorbe ADC;

    v celoštevilski ali plavajoči obliki obdeluje rezultate meritev.

Vendar pa je končni rezultat prikazan na indikatorju v decimalni obliki, ki je primerna za človeško zaznavanje.

Načela konstruiranja dvojiško-decimalnega številskega sistema

Pri konstruiranju dvojiško-decimalnega številskega sistema so $4$ binarne števke dodeljene za predstavitev vsake decimalne števke, saj je največja decimalna števka $9$ kodirana kot $10012$.

Na primer: $925_(10) = 1001 0010 0101_(2-10)$.

Slika 1.

V tem zapisu zaporedne četverice binarnih števk predstavljajo števke $9$, $2$ in $5$ decimalnega zapisa.

Če želite zapisati število v dvojiško-decimalnem številskem sistemu, ga morate najprej predstaviti v decimalnem sistemu, nato pa je treba vsako decimalno števko, vključeno v število, predstaviti v dvojiškem sistemu. Hkrati je za zapis različnih decimalnih mest v binarnem številskem sistemu potrebno različno število binarnih števk. Da bi se izognili uporabi kakršnih koli ločil, so pri predstavitvi decimalne števke v dvojiški obliki vedno zapisane 4 binarne števke. Skupina teh štirih števk se imenuje zvezek.

Čeprav zapis BCD uporablja le števki $0$ in $1$, se razlikuje od binarne predstavitve danega števila, ker je decimalni ekvivalent binarnega števila nekajkrat večji od decimalnega ekvivalenta števila BCD.

Na primer:

$1001 0010 0101_{(2)} = 2341_{(10)}$,

$1001 0010 0101_{(2)} = 925_{(2-10)}$.

Ta zapis se pogosto uporablja kot vmesni korak pri pretvorbi števila iz decimalnega sistema v dvojiški in obratno. Ker število $10$ ni natančna potenca števila $2$, se ne uporabljajo vse tetrade $16$ (tetrade, ki predstavljajo števila od $A$ do $F$, se zavržejo, ker se ta števila štejejo za prepovedana), ampak algoritmi za aritmetiko operacije na večmestnih številih v tem primeru bolj zapletene kot v osnovnih številskih sistemih. Pa vendar se binarni decimalni številski sistem uporablja celo na tej ravni v mnogih mikrokalkulatorjih in nekaterih računalnikih.

Za popravljanje rezultatov aritmetičnih operacij nad števili, predstavljenimi v dvojiški decimalni kodi, mikroprocesorska tehnologija uporablja ukaze, ki pretvorijo rezultate operacij v dvojiški decimalni številski sistem. Uporablja se naslednje pravilo: ko se kot rezultat operacije (seštevanja ali odštevanja) v tetradi dobi število, večje od $9$, se tej tetradi doda število $6$.

Na primer: $75+18=$93.

$10001101\(8D)$

V spodnjem zvezku se je pojavila prepovedana številka $D$. Dodajte $6$ nizki tetradi in dobite:

$10010011 \ (93)$

Kot lahko vidite, kljub dejstvu, da je bilo seštevanje izvedeno v binarnem številskem sistemu, je bil rezultat operacije dobljen v dvojiško-decimalnem številskem sistemu.

Opomba 2

Bitno uravnoteženje se pogosto izvaja na podlagi binarni decimalni številski sistem. Najprimernejša je uporaba binarnih in binarno-decimalnih številskih sistemov, saj je v tem primeru število izravnalnih ciklov najmanjše med drugimi številskimi sistemi. Upoštevajte, da nam uporaba binarne kode omogoča zmanjšanje časa obdelave kompenzacijske napetosti za približno $20\%$ v primerjavi z binarno-decimalno kodo.

Prednosti uporabe dvojiškega decimalnega številskega sistema

Pretvorba števil iz decimalnega sistema v dvojiško-decimalni številski sistem ne vključuje izračunov in je enostavna za izvedbo z uporabo preprostih elektronskih vezij, saj se pretvori majhno število (4) binarnih števk. Povratna pretvorba se samodejno izvede v računalniku s posebnim programom za prevajanje.

Uporaba binarno-decimalnega številskega sistema v povezavi z enim od glavnih številskih sistemov (binarni) omogoča razvoj in ustvarjanje visoko zmogljivih računalnikov, saj uporaba decimalnega aritmetičnega bloka v ALU odpravlja potrebo po programirani pretvorbi števil iz enega številskega sistema v drugega pri reševanju nalog.

Ker dve binarni decimalni števki sestavljata $1$ bajt, ki se lahko uporablja za predstavitev vrednosti števil od $0$ do $99$ in ne od $0$ do $255$, kot pri $8$-bitnem binarnem številu, potem z uporabo $1$ bajta za S pretvorbo vsaki dve decimalni števki lahko sestavite BCD števila s poljubnim številom decimalnih mest.

Primer mešanega številskega sistema je binarni decimalni sistem . V številskem sistemu BCD so vsaki decimalni številki dodeljene 4 binarne števke, saj je največja decimalna števka 9 kodirana kot 1001 2. na primer

925 10 = 1001 0010 0101 2-10 .

Tukaj zaporedni četverčki (tetradi) binarnih števk predstavljajo števke 9, 2 in 5 decimalnega zapisa.

Čeprav zapis BCD uporablja samo števki 0 in 1, se zapis BCD razlikuje od dvojiške predstavitve danega števila. Na primer, binarna koda 1001 0010 0101 ustreza decimalnemu številu 2341 in ne 925.

Če je P=Q l (l je pozitivno celo število), predstavitev katerega koli števila v mešanem številskem sistemu identično sovpada s podobo tega števila v številskem sistemu z osnovo Q. Primeri takšnega mešanega številskega sistema so dvojiški- osmiško in binarno-šestnajstiško.

na primer

A2 16 = 1010 0010 2 = 1010 0010 2-16

PREDSTAVITEV NEGATIVNIH ŠTEVIL V FORMATU S FIKSNO VEKICO (PIKA).

Da bi poenostavili aritmetične operacije, računalniki uporabljajo posebne binarne kode za predstavitev negativnih števil: recipročnih in komplementnih. Z uporabo teh kod je poenostavljeno določiti predznak rezultata operacije med algebrskim seštevanjem. Operacija odštevanja (ali algebraičnega seštevanja) je zmanjšana na aritmetično seštevanje operandov, zaradi česar je lažje razviti znake prelivanja bitne mreže. Posledično so računalniške naprave, ki izvajajo aritmetične operacije, poenostavljene.

Znano je, da je eden od načinov za izvedbo operacije odštevanja zamenjava predznaka odštevanca z nasprotnim znakom in dodajanje minuendu:

A - B = A + (- B)

To nadomešča operacijo aritmetičnega odštevanja z operacijo algebraičnega seštevanja, ki se lahko izvede z uporabo binarnih seštevalnikov.

Za strojno predstavitev negativnih števil se uporabljajo kode neposredno, dodatno, vzvratno. Poenostavljeno definicijo teh kod lahko podamo na naslednji način. Če je število A v navadni binarni kodi neposredno binarna koda, prikazana kot

[A] pr = 0.an an-1 an-2.....a1 a0,

potem je število -A v isti kodi predstavljeno kot

[-A]pr = 1.an an-1 an-2.....a1 a0,

in v vzvratno(inverzna) koda bo ta številka videti takole:

[-A]rev = 1.an an-1 an-2.....a1 a0,

ai = 1, če je ai = 0,

ai = 0, če je ai = 1,

a i - številka jaz- ta številka binarnega števila. Posledično se pri prehodu iz neposredne kode v obratno kodo vse števke Matissevih števil obrnejo.

Potem številka -A in dodatno koda je predstavljena kot

[-A]add = [-A]rev + 1

Če želite torej dobiti komplementarno kodo negativnih števil, morate najprej obrniti digitalni del prvotnega števila, kar ima za posledico njegovo obratno kodo, nato pa dodati eno najmanj pomembni številki digitalnega dela števila.

Komplementarno kodo določene številke dobimo tako, da jo nadomestimo z novo številko, komplementarno na število, ki je enako teži števke, ki sledi najpomembnejši števki bitne mreže, ki se uporablja za predstavitev mantise števila v formatu s fiksno vejico. Zato se taka številčna koda imenuje dodatna.

Predstavljajmo si, da imamo samo dve števki za predstavitev števil v decimalnem številskem sistemu. Potem bo največje število, ki ga lahko upodobimo, 99, teža tretje neobstoječe najvišje števke pa 10 2, tj. 100. V tem primeru bo za število 20 komplementarno število 80, ki dopolnjuje 20 s 100 (100 - 20 = 80). Zato po definiciji odštevanje

se lahko nadomesti z dodatkom:

Tukaj najvišja enota presega dodeljeno bitno mrežo, v kateri ostane le številka 30, tj. Rezultat odštevanja števila 20 od 50.

Zdaj pa si poglejmo podoben primer za števila, predstavljena v 4-bitni binarni kodi. Poiščimo dodatno številko za 0010 2 = 210. Od 0000 moramo odšteti 0010, dobimo 1110, kar je dodatna koda 2. Številka, prikazana v oglatih oklepajih, dejansko ne obstaja. Ker pa imamo 4-bitno mrežo, je takšno odštevanje načeloma nemogoče izvesti, še več, poskušamo se odštevanja znebiti. Zato dodatno številčno kodo pridobimo na prej opisan način, tj. najprej dobijo obratno kodo števila, nato pa ji dodajo 1. Ko vse to naredimo z našim številom (2), ni težko videti, da bomo dobili podoben odgovor.

Naj to poudarimo Komplement dvojke in kode komplementa dvojke se uporabljajo samo za predstavitev negativnih binarnih števil v obliki s fiksno vejico. Pozitivna števila v teh kodah ne spremenijo svoje podobe in so predstavljena kot v neposredni kodi.

Tako so digitalne števke negativnega števila v neposredna koda ostanejo nespremenjeni, ena pa je zapisana v delu znaka.

Poglejmo preproste primere.

Sedem v neposredni kodi je predstavljeno na naslednji način:

pr = 0,0001112

Število -7 v neposredni kodi:

[-7]pr = 1,0001112,

in v obratni kodi bo videti tako

[-7]rev = 1,1110002,

tiste. enice zamenjamo z ničlami, ničle pa z enicami. Enako število v komplementu dveh bi bilo:

[-7]dodaj = 1,1110012.

Razmislimo še enkrat, kako se postopek odštevanja z uporabo predstavitve odštevanca v kodi komplementa dveh reducira na postopek seštevanja. Odštejte število 7 od 10: 10 - 7 = 3. Če sta oba operanda predstavljena v neposredni kodi, se postopek odštevanja izvede na naslednji način:

-1.000111

In če je subtrahendable, tj. -7, predstavljeno v kodi komplementa dveh, se postopek odštevanja zmanjša na postopek dodajanja:

+ 1.111001

1 0.000011 = 310.

Dandanes računalniki običajno uporabljajo kodo komplementa dveh za predstavitev negativnih števil v obliki s fiksno vejico.

Oblika predstavitve števil v digitalnih strojih je niz pravil, ki omogočajo vzpostavitev medsebojne korespondence med zapisom števila in njegovim kvantitativnim ekvivalentom.

Strojna (avtomatska) slika števila tam je predstavitev števila v bitni mreži digitalnega stroja. Simbol za strojno sliko števila, na primer A, bo predstavljen kot [A].

Zaradi omejene dolžine strojnih besed je nabor števil, ki jih je mogoče predstaviti v stroju, končen. Primerjave med različnimi oblikami predstavitve števil v računalnikih običajno potekajo na podlagi ocene obseg in natančnost predstavitve števila.

V vsakdanji praksi je najpogostejša oblika predstavljanja števil kot zaporedje števk, ločenih z vejico na cela in ulomka. Števila, predstavljena v tej obliki, se imenujejo števila z naravno vejico ali števili v naravni obliki. V naravni obliki je število zapisano v naravni obliki, na primer 12560 je celo število, 0,003572 je pravi ulomek, 4,89760 je nepravi ulomek.

Pri predstavljanju števil v tej obliki je potrebno, da vsako število navede položaj svoje vejice v bitni mreži, dodeljeni za predstavitev števila v stroju, kar zahteva dodatne strojne stroške v razmeroma velikem znesku. Zato sta se v računalnikih razširili dve drugi obliki predstavitve: s fiksno in plavajočo vejico (pika).

Položaja vejice ni treba navesti, če je mesto vejice v bitni mreži stroja enkrat za vselej vnaprej določeno. Ta oblika predstavljanja števil se imenuje predstavitev s fiksna vejica (pika).

Ker so števila lahko pozitivna in negativna, je format (bitna mreža) strojne slike razdeljen na ikonični del in številsko polje. Številsko polje vsebuje sliko same številke, ki jo bomo običajno imenovali mantisaštevilke. Za kodiranje predznaka števila se uporabi najpomembnejša cifra bitne mreže, ki je rezervirana za sliko binarnega števila, preostale števke pa se dodelijo za mantiso števila. Položaj vejice v bitni mreži je strogo fiksen, običajno bodisi desno od najnižje številke mantise ali levo od najvišje. V prvem primeru je število predstavljeno kot celo število, v drugem - kot pravi ulomek. Danes velika večina računalnikov predstavlja cela števila v obliki s fiksno vejico.

Predznakovni del vsebuje podatke o predznaku števila. Sprejeto je, da znak pozitivno število "+" ki ga predstavlja simbol 0, in predznak je negativno število "-" ki ga predstavlja simbol 1.

Na primer, v binarni kodi z uporabo 6-bitne mreže lahko številko 7 v obliki s fiksno vejico predstavimo kot:

kjer je števka levo od pike znak števila, pet števk desno od pike pa je mantisa števila v neposredni kodi. Tukaj je mišljeno to vejica je določena desno od najmanj pomembne števke, točka na sliki števila pa v tem primeru preprosto loči bit predznaka od mantise števila.

V prihodnosti se bo ta vrsta predstavitve števila v strojni obliki pogosto uporabljala v primerih. Uporabite lahko drugo obliko predstavitve števila v strojni obliki:

kjer je bit predznaka ločen z oglatimi oklepaji.

Število števk v bitni mreži, dodeljenih za predstavitev mantise števila, določa obseg in natančnost predstavitve števila s fiksno vejico. Največje binarno število v absolutni vrednosti predstavljajo enice v vseh cifrah, razen predznaka ena, tj. za celo število

|A|max = (2 (n -1) - 1),

Kje n- skupna dolžina bitne mreže. V primeru 16-bitne mreže

|A| največ = (2 (16-1) - 1) = 32767 10,

tiste. Razpon celih predstavitev bo v tem primeru od +3276710 do -3276710.

Za primer, ko je vejica fiksirana desno od nižje številke mantise, tj. za cela števila števila, katerih modul je večji od

(2(n-1) - 1) in manj kot ena niso predstavljeni v obliki fiksne točke. Števila, katerih absolutna vrednost je manjša od ene od najmanj pomembnih števk bitne mreže, se v tem primeru imenujejo strojna ničla. Negativna ničla je prepovedana.

V nekaterih primerih, ko je mogoče delovati samo z moduli števil, je celotna bitna mreža, vključno z najpomembnejšim bitom, dodeljena predstavitvi števila, kar vam omogoča razširitev obsega predstavitve števil.

Dvojiški decimalni številski sistem

Dvojiški decimalni številski sistem je postal zelo razširjen v sodobnih računalnikih zaradi enostavnosti pretvorbe v decimalni sistem in obratno. Uporablja se tam, kjer glavna pozornost ni namenjena preprostosti tehnične konstrukcije stroja, temveč udobju uporabnika. V tem številskem sistemu so vse decimalne števke ločeno kodirane s štirimi binarnimi števkami in so v tej obliki zapisane zaporedno ena za drugo.

Dvojiški decimalni sistem ni ekonomičen z vidika izvedbe tehnične konstrukcije stroja (potrebna oprema se poveča za približno 20%), je pa zelo priročen pri pripravi nalog in programiranju. V binarnem decimalnem številskem sistemu je osnova številskega sistema število 10, vendar je vsaka decimalna cifra (0, 1, ..., 9) predstavljena, torej kodirana, z binarnimi števkami. Štiri binarne števke se uporabljajo za predstavitev ene decimalne števke. Tukaj je seveda odveč, saj 4 binarne števke (ali binarna tetrada) lahko predstavljajo ne 10, ampak 16 števil, vendar je to že proizvodni strošek zaradi udobja programiranja. Obstaja več binarno kodiranih decimalnih sistemov za predstavitev števil, za katere je značilno, da so določenim kombinacijam ničel in enic znotraj ene tetrade dodeljene določene vrednosti decimalnih števk.
Objavljeno na ref.rf
V najpogosteje uporabljenem naravnem binarno kodiranem decimalnem številskem sistemu so uteži binarnih števk znotraj tetrade naravne, to je 8, 4, 2, 1 (tabela 6).

Tabela 6

Dvojiški decimalni zapis

Na primer, decimalno število 5673 v zapisu BCD je 01010110011100011.

Pretvarjanje števil iz enega številskega sistema v drugega je pomemben del strojne aritmetike. Razmislimo o osnovnih pravilih prevajanja.

1. Za pretvorbo binarnega števila v decimalno število je potrebno ᴇᴦο zapisati kot polinom, sestavljen iz zmnožkov števk števila in ustrezne potence 2, ter izračunati po pravilih decimalne aritmetike˸

Pri prevajanju je priročno uporabiti tabelo potenc dveh˸

Tabela 7.

Moči števila 2

n (stopnja)

Primer. Pretvori število v decimalni številski sistem.

2. Za pretvorbo osmiškega števila v decimalno število je potrebno ᴇᴦο zapisati kot polinom, sestavljen iz zmnožkov števk števila in ustrezne potence števila 8, ter izračunati po pravilih decimalne aritmetike˸

Pri prevajanju je priročno uporabiti tabelo potenc osem˸

Tabela 8.

Moči števila 8

n (stopnja)
8n

Dvojiški decimalni številski sistem – pojem in vrste. Razvrstitev in značilnosti kategorije "Dvojiško-decimalni številski sistem" 2015, 2017-2018.

Ta sistem ima osnovo S = 10, vendar je vsaka cifra predstavljena s štiribitnim binarnim številom, imenovanim tetrad. Običajno se ta sistem številk uporablja v računalnikih pri vnosu in izpisu informacij. Vendar pa v nekaterih vrstah računalnikov ALU vsebuje posebne decimalne aritmetične bloke, ki izvajajo operacije s števili v binarni decimalni kodi. To v nekaterih primerih omogoča znatno povečanje zmogljivosti računalnika.

Na primer, v avtomatiziranem sistemu za obdelavo podatkov je veliko številk, a malo izračunov. V tem primeru bi operacije, povezane s prenosom številk iz enega sistema v drugega, znatno presegle čas, potreben za izvajanje operacij obdelave informacij.

Pretvarjanje števil iz decimalnega sistema v BCD je zelo preprosto in vključuje zamenjavo vsake števke z binarno tetrado.

Primer.

Zapiši decimalno število 572,38 (10) v dvojiškem decimalnem številskem sistemu.

Tudi obratni prevod je preprost: binarno-decimalno število morate razdeliti na tetrade od točke na levo (za celo število) in na desno (za delni del), dodati zahtevano število nepomembnih ničel in nato vsako tetrado zapišite kot decimalno števko.

Primer.

Zapišite dvojiško decimalno število 10010,010101 (2-10) v decimalnem številskem sistemu.

Pretvorba števil iz BCD v binarni sistem poteka po zgoraj opisanih splošnih pravilih.

2.3. Osmiški številski sistem

V osmiškem številskem sistemu se uporablja samo osem števk, tj. ta številski sistem ima osnovo S = 8. Na splošno je oktalno število videti takole:

Kje
.

Osmiškega številskega sistema računalnik ne potrebuje, za razliko od binarnega sistema. Priročna je kot kompaktna oblika zapisovanja števil in jo uporabljajo programerji (na primer v programskih besedilih za bolj jedrnat in priročen način zapisovanja binarnih kod ukazov, naslovov in operandov). V oktalnem številskem sistemu je teža vsake števke večkratnik osmih ali ene osmine, zato osembitno binarno število omogoča izražanje decimalnih vrednosti v območju 0-255, osmiško število pa pokriva območje 0 -99999999 (za binarno je to 27 števk).

Ker je 8=2 3, lahko vsak osmiški znak predstavimo kot tribitno binarno število. Če želite pretvoriti število iz binarnega številskega sistema v osmiški številski sistem, morate to število razdeliti levo (za celo število) in desno (za ulomek) od točke (vejice) v skupine po tri števke (triade) in predstavljajo vsako skupino s številko v osmiškem številskem sistemu. Skrajne nepopolne triade so dopolnjene z zahtevanim številom nepomembnih ničel.

Primer.

Dvojiško število 10101011111101 (2) zapišite v osmiškem številskem sistemu.

Primer.

Dvojiško število 1011,0101 (2) zapišite v osmiškem številskem sistemu.

Pretvorba iz osmiškega v binarno se izvede tako, da se vsako števko osmiškega števila predstavi kot trimestno binarno število (triada).

2.4. Šestnajstiški številski sistem

Ta številski sistem ima osnovo S = 16. Na splošno je šestnajstiško število videti takole:

Kje
.

Šestnajstiški številski sistem omogoča še krajši zapis večbitnih binarnih števil in poleg tega skrajšanje zapisa 4-bitnega binarnega števila, t.j. grizljati, saj je 16=2 4 . Šestnajstiški sistem se uporablja tudi v programskih besedilih za bolj strnjeno in priročno zapisovanje binarnih števil.

Če želite število iz binarnega številskega sistema pretvoriti v šestnajstiško, morate to število levo in desno od točke razdeliti na tetrade in vsako tetrado predstaviti s števko v šestnajstiškem številskem sistemu.

Primer.

Dvojiško število 10101011111101 (2) zapišite v šestnajstiški obliki.

Primer.

Dvojiško število 11101,01111 (2) zapišite v šestnajstiški obliki.

Za pretvorbo številke iz šestnajstiškega številskega sistema v binarni številski sistem je treba, nasprotno, vsako števko tega števila zamenjati s tetrado.

Na koncu je treba opozoriti, da se lahko prenos poljubnih števil iz enega številskega sistema v drugega izvede v skladu s splošnimi pravili, opisanimi v razdelku »Binarni številski sistem«. Vendar pa se v praksi pretvorbe števil iz decimalnega sistema v obravnavane številske sisteme in obratno izvajajo prek binarnega številskega sistema.

Ne pozabite tudi, da so šestnajstiška in osmiška števila le način za predstavitev velikih binarnih števil, s katerimi procesor dejansko deluje. V tem primeru je zaželen šestnajstiški sistem, saj v sodobnih računalnikih procesorji manipulirajo z besedami dolžine 4, 8, 16, 32 ali 64 bitov, tj. dolžina besed je večkratnik 4. V osmiškem številskem sistemu imajo prednost besede, ki so večkratniki 3 bitov, na primer besede z dolžino 12 bitov (kot v PDP-8 iz DEC).