Tizedesjegy szám konvertálása bináris IEEE 754 formátumra

Szerző: John Pratt
A Teremtés Dátuma: 15 Február 2021
Frissítés Dátuma: 1 Július 2024
Anonim
Tizedesjegy szám konvertálása bináris IEEE 754 formátumra - Tanácsok
Tizedesjegy szám konvertálása bináris IEEE 754 formátumra - Tanácsok

Tartalom

Az emberektől eltérően a számítógépek nem használják a tizedes számrendszert. Bináris vagy bináris számrendszert használnak, két lehetséges számjeggyel, 0 és 1. Tehát a számokat az IEEE 754-ben (az IEEE szabványa a bináris számok lebegőpontos ábrázolására vonatkozó szabvány szerint) nagyon eltérően írják, hozzá van szokva valamihez. Ebben a cikkben megtudhatja, hogyan írhat egy számot egyszeres vagy kettős pontossággal az IEEE 754 szerint. Ehhez a módszerhez tudnia kell, hogyan lehet számokat bináris formává alakítani. Ha nem tudja, hogyan kell ezt megtenni, akkor ezt megtanulhatja a Bináris konvertálása tizedessé című cikk tanulmányozásával.

Lépni

  1. Válasszon egy vagy kettős pontosságot. Ha egyszeres vagy kettős pontossággal ír egy számot, a sikeres konvertálás lépései mindkettőnél megegyeznek. Az egyetlen változás az exponens és a mantissa konvertálásában megy végbe.
    • Először meg kell értenünk, hogy mit jelent az egyetlen pontosság. A lebegőpontos ábrázolásban bármely szám (0 vagy 1) "bitnek" tekinthető. Ezért egyetlen pontosság összesen 32 bitet tartalmaz, három különböző témára osztva. Ezek az alanyok egy előjelből (1 bit), egy kitevőből (8 bit) és egy mantisszából vagy egy frakcióból (23 bit) állnak.
    • A kettős pontossággal viszont ugyanaz az elrendezés és ugyanaz a három rész van, mint az egy pontossággal - az egyetlen különbség az, hogy nagyobb és pontosabb szám lesz. Ebben az esetben a jelnek 1 bitje lesz, a kitevõ 11 bit és a mantissza 52 bit.
    • Ebben a példában a 85.125 számot egyetlen pontossá alakítjuk át az IEEE 754 szerint.
  2. Válassza szét a tizedesjegy előtti és utáni számot. Vegyük az átalakítani kívánt számot, és különítsük el úgy, hogy maradjon egy egész szám és egy tizedes szám. Ebben a példában feltételezzük a 85125 számot. Ezt szétválaszthatja a 85 egész számra és a 0,125 tizedesre.
  3. Konvertálja az egész számot bináris számgá. Ez lesz a 85.125 85-ös értéke, amely binárisra konvertálva 1010101 lesz.
  4. Konvertálja a tizedes részt bináris számgá. Ez 0,125 / 85,125, ami 0,001 lesz bináris formátumban.
  5. Kombinálja a szám két részét, amelyet bináris számokká alakítottak át. A 85-ös szám bináris, például 1010101, a 0,125 tizedes része pedig bináris 0,001. Ha tizedesvesszővel kombinálja őket, akkor a végső válasz 1010101.001.
  6. Konvertálja a bináris számot bináris tudományos jelöléssé. A számot bináris tudományos jelöléssé konvertálhatja, ha a tizedespontot balra tolja, amíg az az első bittől jobbra nem lesz. Ezek a számok normalizáltak, ami azt jelenti, hogy a vezető bit mindig 1 lesz. Ami a kitevőt illeti, a bináris tudományos jelölésekben a tizedesjegy mozgatásának száma a kitevő.
    • Ne feledje, hogy a tizedes balra mozgatása pozitív kitevőt eredményez, míg a tizedes jobbra mozgatása negatív kitevőt eredményez.
    • Példánkban hatszor kell elmozdítania a tizedest, hogy az első bit jobbra kerüljön. A kapott formátum ekkor válik 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Határozza meg a szám előjelét és jelenítse meg bináris formátumban. Most meghatározza, hogy az eredeti szám pozitív vagy negatív. Ha a szám pozitív, írd azt a bitet 0-ra, és ha negatív, mint 1. Mivel az eredeti szám 85.125 pozitív, írd ezt a bitet 0. Ez most az első bit a 32 teljes bitből egyetlen pontosságoddal renderelés az IEEE 754 szerint.
    • Határozza meg a kitevőt a pontosság alapján. Rögzített elfogultság van mind az egy-, mind a kettős pontosság érdekében. Az egy pontosságra vonatkozó kitevő torzítás az 127, ami azt jelenti, hogy hozzá kell adnunk a korábban talált bináris kitevőt. Tehát az a kitevő, amelyet használni fog 127 + 6 = 133.
      • A kettős pontosság, amint a neve is mutatja, pontosabb és nagyobb számokat képes befogadni. Ezért a kitevõ elfogultsága 1023. Az egy pontosságra használt lépések itt is érvényesek, tehát a kettős pontosság meghatározásához használható kitevő 1029.
    • Konvertálja a kitevőt binárisra. Miután meghatározta a végső kitevőt, át kell alakítania binárisra, hogy felhasználható legyen az IEEE 754 konverzióban. A példában az utolsó lépésben talált 133-at átalakíthatja 10000101-re.
    • Határozza meg a mantissza. A mantissa-aspektus vagy az IEEE 754 konverzió harmadik része a tudományos bináris jelölés tizedesjegye utáni szám fennmaradó része. Csak kihagyja az 1-et elöl és lemásolja a szám tizedes részét, amelyet megszoroznak kettővel. Nincs szükség bináris konverzióra! A példában a mantissa 010101001 lesz 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Végül egyesítsen három részt egy számba.
      • Végül összevonja mindazt, amit eddig számítottunk konverziójában. A szám először egy 0-val vagy 1-vel kezdődik, amelyet a jel alapján a 7. lépésben határozott meg. A példában 0-val kezdjük.
      • Ezután megvan az a kitevő, amelyet a 9. lépésben meghatároztál. A példában a kitevő 10000101.
      • Ezután jön a mantissa, a megtérés harmadik és utolsó része. Ezt már korábban levonta, amikor a bináris konverzió tizedes részét vette. A példában a mantissza 010101001.
      • Végül összesíti ezeket a számokat egymással. A sorrend jel-kitevő-mantissa. Miután összekapcsolta ezt a három bináris számot, töltse ki nullával a mantissa többi részét.
      • Például a 85.125 konvertálása bináris IEEE 754 formátumra a megoldás 0 10000101 01010100100000000000000.