Konvertéiert eng Dezimalzuel an de binäre IEEE 754 Format

Auteur: John Pratt
Denlaod Vun Der Kreatioun: 15 Februar 2021
Update Datum: 1 Juli 2024
Anonim
Konvertéiert eng Dezimalzuel an de binäre IEEE 754 Format - Relooking
Konvertéiert eng Dezimalzuel an de binäre IEEE 754 Format - Relooking

Inhalt

Am Géigesaz zu de Mënsche benotze Computeren net de Dezimalzuelesystem. Si benotzen en Duebelstäresystem oder Duebelstäresystem mat zwou méiglech Zifferen, 0 an 1. Also Zuele gi ganz anescht an IEEE 754 geschriwwen (e Standard vum IEEE fir Duebelstäreszuelen mat engem Floating Point duerzestellen) wéi am traditionellen Dezimalsystem dat mir benotzt ginn fir. An dësem Artikel léiert Dir wéi Dir eng Nummer an enger eenzeger oder duebeler Präzisioun schreift no dem IEEE 754. Fir dës Method musst Dir wësse wéi Dir Zuelen a Binär Form konvertéiert. Wann Dir net wësst wéi Dir dëst maacht, kënnt Dir dëst léieren andeems Dir den Artikel studéiert Converting Binary to Decimal.

Ze trëppelen

  1. Wielt eenzel oder duebel Präzisioun. Wann Dir eng Nummer an enger eenzeger oder duebeler Präzisioun schreift, sinn d'Schrëtt zu enger erfollegräicher Konversioun déiselwecht fir béid. Déi eenzeg Ännerung fënnt an der Konvertéierung vum Exponent an der Mantissa statt.
    • Als éischt musse mir verstoen wat eenzeg Präzisioun bedeit. An der Floating Point Representatioun gëtt all Zuel (0 oder 1) als "Bit" ugesinn. Dofir huet eng eenzeg Präzisioun insgesamt 32 Bits ënnerdeelt an dräi verschidde Sujeten. Dës Sujete bestinn aus engem Zeechen (1 Bit), engem Exponent (8 Bits) an enger Mantissa oder Fraktioun (23 Bits).
    • Duebel Präzisioun, op der anerer Säit, huet dee selwechte Setup an déiselwecht dräi Deeler wéi eenzeg Präzisioun - deen eenzegen Ënnerscheed ass datt et eng méi grouss a méi genau Zuel wäert sinn. An dësem Fall wäert d'Zeechen 1 Bit hunn, den Exponent 11 Bits an d'Mantissa 52 Bits.
    • An dësem Beispill wäerte mir d'Nummer 85.125 an eng eenzeg Präzisioun konvertéieren no der IEEE 754.
  2. Trennt d'Zuel virum an nom Dezimalpunkt. Huelt d'Nummer déi Dir wëllt konvertéieren an trennt se sou datt Dir mat enger ganzer Zuel an enger Dezimalzuel bleift. An dësem Beispill huele mir d'Zuel 85,125 un. Dir kënnt dëst an d'ganz Zuel 85 an den Dezimalzuel 0,125 trennen.
  3. Konvertéiert déi ganz Zuel op eng binär Zuel. Dëst gëtt den 85 vum 85,125, deen 1010101 gëtt wann en op Binär ëmgewandelt gëtt.
  4. Konvertéiert den Dezimaldeel op eng binär Zuel. Dëst ass 0,125 vu 85,125, dat gëtt 0,001 am Duebelformat.
  5. Kombinéiert déi zwee Deeler vun der Zuel déi a binär Zuelen ëmgewandelt goufen. D'Nummer 85 ass binär zum Beispill 1010101 an den Dezimaldeel 0,125 ass binär 0,001. Wann Dir se mat engem Dezimalpunkt kombinéiert, kritt Dir 1010101.001 als lescht Äntwert.
  6. Konvertéiert d'binär Zuel op d'binär wëssenschaftlech Notatioun. Dir kënnt d'Nummer an d'binär wëssenschaftlech Notatioun konvertéieren andeems Dir den Dezimalpunkt no lénks beweegt bis se riets vum éischte Bit ass. Dës Zuelen sinn normaliséiert, dat heescht datt de féierende Bit ëmmer 1 wäert sinn. Wat den Exponent ugeet, d'Zuel vun de Kéieren, wou Dir den Dezimalzuch beweegt, ass den Exponent an der binärer wëssenschaftlecher Notatioun.
    • Denkt drun, d'Dezimal no lénks ze bewegen produzéiert e positiven Exponent, wärend d'Dezimal no riets beweegt en negativen Exponent.
    • An eisem Beispill musst Dir d'Dezimal sechs Mol réckelen fir se op de Recht vum éischte Bit ze kréien. Dat resultéierend Format gëtt dann 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Bestëmmt d'Zeeche vun der Zuel an affichéiert se am Duebelformat. Dir wäert elo feststellen ob d'original Zuel positiv oder negativ ass. Wann d'Zuel positiv ass, schreift dat bëssen als 0, a wann et negativ ass, wéi 1. Well d'original Zuel 85,125 positiv ass, schreift dat bëssen als 0. Dëst ass elo deen éischte Bit vun den 32 Total Bits an Ärer eenzeger Präzisioun Rendering nom IEEE 754.
    • Bestëmmt den Exponent baséiert op der Präzisioun. Et gëtt fixe Viraussiicht fir béid eenzeg an duebel Präzisioun. D'Exponent Viraussetzung fir eenzeg Präzisioun ass 127, dat heescht datt mir de virdru fonnt binäre Exponent bäifügen. Also den Exponent deen Dir benotzt wäert ass 127 + 6 = 133.
      • Duebel Präzisioun, wéi den Numm et scho seet, ass méi korrekt a ka méi grouss Zuelen hunn. Dofir de Viruerteel vum Exponent 1023. Déi selwecht Schrëtt fir eng eenzeg Präzisioun benotzt gëllen hei, sou datt den Exponent deen Dir benotzt fir duebel Präzisioun ze bestëmmen ass 1029.
    • Konvertéiert den Exponent a Binär. Nodeems Dir Äre leschten Exponent bestëmmt hutt, musst Dir en op Binär konvertéieren, sou datt et an der IEEE 754 Konversioun benotzt ka ginn. Am Beispill kënnt Dir den 133 konvertéieren deen Dir am leschte Schrëtt fonnt hutt op 10000101.
    • Bestëmmt d'Mantissa. De Mantissa Aspekt, oder den drëtten Deel vun der IEEE 754 Konversioun, ass de Rescht vun der Zuel nom Dezimal vun der wëssenschaftlecher binärer Notatioun. Dir léisst just den 1 vir a kopéiert den Dezimaldeel vun der Zuel déi mat zwee multiplizéiert gëtt. Kee binäre Konversioun ass erfuerderlech! Am Beispill gëtt d'Mantissa 010101001 vun 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Endlech kombinéiert dräi Deeler an eng Nummer.
      • Schlussendlech kombinéiert Dir alles wat mir bis elo an Ärer Konversioun berechent hunn. D'Zuel fänkt als éischt mat engem 0 oder 1 un, deen Dir am Schrëtt 7 op Basis vum Zeeche bestëmmt hutt. Am Beispill fänkt Dir mat engem 0 un.
      • Dann hutt Dir den Exponent deen Dir am Schrëtt 9 bestëmmt hutt. Am Beispill ass den Exponent 10000101.
      • Da kënnt d'Mantissa, den drëtten a leschten Deel vun der Konversioun. Dir hutt dat virdrun ofgeleet wéi Dir den Dezimaldeel vun der Duebelkonversioun geholl hutt. Am Beispill ass d'Mantissa 010101001.
      • Schlussendlech kombinéiert Dir all dës Zuelen mateneen. D'Uerdnung ass Zeechen-Exponent-Mantissa. Nodeems Dir dës dräi binär Zuelen ugeschloss hutt, fëllt de Rescht vun der Mantissa mat Nullen aus.
      • Zum Beispill, Konvertéieren 85.125 an de binäre IEEE 754 Format ass d'Léisung 0 10000101 01010100100000000000000.