Convertiți un număr zecimal în format binar IEEE 754

Autor: John Pratt
Data Creației: 15 Februarie 2021
Data Actualizării: 1 Iulie 2024
Anonim
Convertiți un număr zecimal în format binar IEEE 754 - Sfaturi
Convertiți un număr zecimal în format binar IEEE 754 - Sfaturi

Conţinut

Spre deosebire de oameni, computerele nu folosesc sistemul numeric zecimal. Ei folosesc un sistem de numere binare sau binare cu două cifre posibile, 0 și 1. Deci, numerele sunt scrise foarte diferit în IEEE 754 (un standard al IEEE pentru reprezentarea numerelor binare cu virgulă mobilă) decât în ​​sistemul zecimal tradițional pe care trebuie să-l a fi obisnuit. În acest articol veți învăța cum să scrieți un număr fie cu precizie simplă, fie dublă, conform IEEE 754. Pentru această metodă trebuie să știți cum să convertiți numerele în formă binară. Dacă nu știți cum să faceți acest lucru, puteți afla acest lucru studiind articolul Conversia binarului în zecimal.

A calca

  1. Alegeți o precizie simplă sau dublă. Când scrieți un număr cu o precizie simplă sau dublă, pașii pentru o conversie reușită vor fi aceiași pentru ambele. Singura schimbare are loc în conversia exponentului și a mantizei.
    • Mai întâi trebuie să înțelegem ce înseamnă o singură precizie. În reprezentarea în virgulă mobilă, orice număr (0 sau 1) este considerat un „bit”. Prin urmare, o singură precizie are un total de 32 de biți împărțiți în trei subiecte diferite. Acești subiecți constau dintr-un semn (1 bit), un exponent (8 biți) și o mantisă sau fracție (23 biți).
    • Dubla precizie, pe de altă parte, are aceeași configurare și aceleași trei părți ca o singură precizie - singura diferență este că va fi un număr mai mare și mai precis. În acest caz, semnul va avea 1 bit, exponentul 11 ​​biți și mantisa 52 biți.
    • În acest exemplu, vom converti numărul 85.125 la o singură precizie conform IEEE 754.
  2. Separați numărul înainte și după punctul zecimal. Luați numărul pe care doriți să îl convertiți și separați-l, astfel încât să rămâneți cu un număr întreg și un număr zecimal. În acest exemplu, presupunem numărul 85.125. Puteți separa acest lucru în numărul întreg 85 și zecimalul 0,125.
  3. Convertiți numărul întreg într-un număr binar. Acesta devine 85 din 85.125, care va deveni 1010101 când va fi transformat în binar.
  4. Convertiți partea zecimală într-un număr binar. Aceasta este 0,125 din 85,125, care devine 0,001 în format binar.
  5. Combinați cele două părți ale numărului care au fost convertite în numere binare. Numărul 85 este binar de exemplu 1010101 și partea zecimală 0.125 este binară 0.001. Dacă le combinați cu un punct zecimal, veți primi 1010101.001 ca răspuns final.
  6. Convertiți numărul binar în notație științifică binară. Puteți converti numărul în notație științifică binară mutând punctul zecimal spre stânga până când se află în dreapta primului bit. Aceste numere sunt normalizate, ceea ce înseamnă că bitul principal va fi întotdeauna 1. În ceea ce privește exponentul, de câte ori mutați zecimalul este exponentul în notație științifică binară.
    • Amintiți-vă, mutarea zecimalei la stânga produce un exponent pozitiv, în timp ce deplasarea zecimalei la dreapta produce un exponent negativ.
    • În exemplul nostru, trebuie să mutați zecimalul de șase ori pentru a ajunge la dreapta primului bit. Formatul rezultat devine apoi 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Determinați semnul numărului și afișați-l în format binar. Acum veți stabili dacă numărul original este pozitiv sau negativ. Dacă numărul este pozitiv, scrieți acel bit ca 0, iar dacă este negativ, ca 1. Deoarece numărul inițial este 85.125 pozitiv, scrieți acel bit ca 0. Acesta este acum primul bit din cei 32 de biți totali din precizia dvs. unică redare conform IEEE 754.
    • Determinați exponentul pe baza preciziei. Există o prejudecată fixă ​​atât pentru precizie simplă, cât și pentru dublă. Biasul exponentului pentru o singură precizie este 127, ceea ce înseamnă că trebuie să adăugăm exponentul binar găsit anterior. Deci exponentul pe care îl veți folosi este 127 + 6 = 133.
      • Precizia dublă, după cum sugerează și numele, este mai precisă și poate conține numere mai mari. Prin urmare, părtinirea exponentului 1023. Aceiași pași utilizați pentru o singură precizie se aplică aici, astfel încât exponentul pe care îl puteți folosi pentru a determina precizia dublă este 1029.
    • Convertiți exponentul în binar. După ce vă determinați exponentul final, trebuie să-l convertiți în binar, astfel încât să poată fi utilizat în conversia IEEE 754. În exemplu, puteți converti cele 133 găsite în ultimul pas la 10000101.
    • Determinați mantisa. Aspectul mantissa, sau a treia parte a conversiei IEEE 754, este restul numărului după zecimalul notației binare științifice. Omiteți doar 1 din față și copiați partea zecimală a numărului care este înmulțit cu două. Nu este necesară conversia binară! În exemplu, mantisa devine 010101001 din 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}În cele din urmă, combinați trei părți într-un singur număr.
      • În cele din urmă, combinați tot ceea ce am calculat până acum în conversia dvs. Numărul va începe mai întâi cu un 0 sau 1 pe care l-ați stabilit la pasul 7 pe baza semnului. În exemplu, începeți cu un 0.
      • Apoi ai exponentul pe care l-ai determinat la pasul 9. În exemplu, exponentul este 10000101.
      • Apoi vine mantisa, a treia și ultima parte a conversiei. Ați dedus acest lucru mai devreme când ați luat partea zecimală a conversiei binare. În exemplu, mantisa este 010101001.
      • În cele din urmă, combinați toate aceste numere între ele. Ordinea este semn-exponent-mantissa. După conectarea acestor trei numere binare, completați restul mantidei cu zerouri.
      • De exemplu, conversia 85.125 în formatul binar IEEE 754 este soluția 0 10000101 01010100100000000000000.