Pretvorite decimalno število v binarno obliko IEEE 754

Avtor: John Pratt
Datum Ustvarjanja: 15 Februarjem 2021
Datum Posodobitve: 1 Julij. 2024
Anonim
Pretvorite decimalno število v binarno obliko IEEE 754 - Nasveti
Pretvorite decimalno število v binarno obliko IEEE 754 - Nasveti

Vsebina

Za razliko od ljudi računalniki ne uporabljajo decimalnega številskega sistema. Uporabljajo binarni ali binarni številski sistem z dvema možnima števkama, 0 in 1. Torej so številke v IEEE 754 (standard IEEE za predstavljanje binarnih števil s plavajočo vejico) zelo drugače kot v tradicionalnem decimalnem sistemu, ki ga se uporabljajo za. V tem članku boste izvedeli, kako napisati številko z eno ali dvojno natančnostjo v skladu z IEEE 754. Za to metodo morate vedeti, kako pretvoriti številke v binarno obliko. Če tega ne veste, se tega lahko naučite s preučevanjem članka Pretvarjanje binarnega v decimalno.

Stopati

  1. Izberite enojno ali dvojno natančnost. Ko pišete številko z eno ali dvojno natančnostjo, bodo koraki do uspešne pretvorbe enaki za oba. Edina sprememba se zgodi pri pretvorbi eksponenta in mantise.
    • Najprej moramo razumeti, kaj pomeni ena sama natančnost. V predstavitvi s plavajočo vejico se katero koli število (0 ali 1) šteje za "bit". Zato ima ena natančnost skupaj 32 bitov, razdeljenih na tri različne predmete. Ti predmeti so sestavljeni iz znaka (1 bit), eksponenta (8 bitov) in mantise ali frakcije (23 bitov).
    • Po drugi strani ima dvojna natančnost enako nastavitev in enake tri dele kot ena natančnost - razlika je le v tem, da bo večje in natančnejše število. V tem primeru bo imel znak 1 bit, eksponent 11 bitov in mantisa 52 bitov.
    • V tem primeru bomo pretvorili število 85,125 v eno natančnost v skladu z IEEE 754.
  2. Število ločite pred decimalno vejico in za njo. Vzemite številko, ki jo želite pretvoriti, in jo ločite, tako da vam ostane celo število in decimalno število. V tem primeru predpostavljamo število 85.125. To lahko ločite na celo število 85 in decimalno 0,125.
  3. Pretvori celo število v binarno število. To postane 85 od 85.125, ki bo pri pretvorbi v binarno postalo 1010101.
  4. Pretvori decimalni del v binarno število. To je 0,125 od 85,125, kar v binarni obliki postane 0,001.
  5. Združite dva dela števila, ki sta bila pretvorjena v binarna števila. Število 85 je binarno, na primer 1010101, decimalni del 0,125 pa binarni 0,001. Če jih združite z decimalno vejico, dobite 1010101.001 kot končni odgovor.
  6. Pretvorite binarno število v binarni znanstveni zapis. Število lahko pretvorite v binarni znanstveni zapis tako, da decimalno vejico premaknete v levo, dokler ni desno od prvega bita. Te številke so normalizirane, kar pomeni, da bo vodilni bit vedno 1. Kar zadeva eksponent, je število, kako premaknete decimalno mesto, eksponent v binarnem znanstvenem zapisu.
    • Ne pozabite, da premikanje decimalke v levo povzroči pozitiven eksponent, medtem ko premikanje decimalnega mesta v desno povzroči negativni eksponent.
    • V našem primeru morate decimalko šestkrat premakniti, da jo postavite desno od prvega bita. Nastala oblika nato postane 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Določite znak številke in jo prikažite v binarni obliki. Zdaj boste ugotovili, ali je izvirno število pozitivno ali negativno. Če je število pozitivno, zapišite ta bit kot 0, če je negativen, pa kot 1. Ker je prvotno število 85.125 pozitivno, zapišite ta bit kot 0. To je zdaj prvi bit od 32 skupnih bitov v vaši posamezni natančnosti upodabljanje po IEEE 754.
    • Določite eksponent na podlagi natančnosti. Obstaja fiksna pristranskost za enojno in dvojno natančnost. Eksponentna pristranskost za posamezno natančnost je 127, kar pomeni, da moramo dodati prej najdeni binarni eksponent. Torej je eksponent, ki ga boste uporabili, 127 + 6 = 133.
      • Kot že ime pove, je dvojna natančnost natančnejša in lahko vsebuje večje številke. Zato pristranskost eksponenta 1023. Tu veljajo isti koraki, uporabljeni za posamezno natančnost, zato je eksponent, s katerim lahko določite dvojno natančnost, 1029.
    • Pretvorite eksponent v binarno. Ko določite končni eksponent, ga morate pretvoriti v binarni, da ga lahko uporabite pri pretvorbi IEEE 754. V primeru lahko pretvorite 133, ki ste jih našli v zadnjem koraku, v 10000101.
    • Določite mantiso. Mantisin vidik ali tretji del pretvorbe IEEE 754 je ostanek števila po decimalni številki znanstvenega binarnega zapisa. Preprosto izpustite 1 spredaj in kopirate decimalni del števila, ki se pomnoži z dvema. Binarna pretvorba ni potrebna! V primeru mantisa postane 010101001 od 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Na koncu tri dele združite v eno številko.
      • Na koncu v konverziji združite vse, kar smo doslej izračunali. Število se bo najprej začelo z 0 ali 1, ki ste ga določili v koraku 7 na podlagi znaka. V primeru začnete z 0.
      • Nato imate eksponent, ki ste ga določili v koraku 9. V primeru je eksponent 10000101.
      • Nato pride mantisa, tretji in zadnji del spreobrnitve. To ste ugotovili prej, ko ste vzeli decimalni del binarne pretvorbe. V primeru je mantisa 010101001.
      • Na koncu združite vse te številke med seboj. Vrstni red je znak-eksponent-mantissa. Potem ko povežete ta tri binarna števila, preostali del mantisse napolnite z ničlami.
      • Rešitev je na primer pretvorba 85.125 v binarni format IEEE 754 0 10000101 01010100100000000000000.