Reprezentare în virgulă mobilă pe 8 biți

Studiez despre reprezentarea numerelor fracționare ca valori în virgulă mobilă. Va fi o reprezentare pe 8 biți. Undeva în text, se spune că:

reprezentare în virgulă mobilă pe 8 biți

„Folosim primul bit pentru a reprezenta semnul (1 pentru negativ, 0 pentru pozitiv), următorii patru biți pentru suma de 7 și exponentul real (adăugăm 7 pentru a permite exponenții negativi) și ultimii trei biți pentru „partea fracțională” a mantisei

Acum întrebarea este: De ce trebuie adăugat „7” -și nu o altă valoare- la exponentul real?

Comentarii

  • Bine ați venit la CS.SE! Textul sugerează de ce, în paranteză. De altfel, dacă nu ' nu înțelegeți explicația dintr-un text, ' este de multe ori util să căutați o explicație diferită a subiectului . Există multe resurse în virgulă mobilă.
  • Deci, de ce ar trebui adăugat 7?
  • Dacă ' ați înțeles răspunsul la prima întrebare, vă încurajez să vă editați postarea pentru a arăta ceea ce înțelegeți.

Răspundeți

Cu 4 biți puteți reprezenta 16 valori diferite: 0,1, …, 15. Dacă doriți să permiteți exponenți negativi, este logic să luați (aproximativ) jumătate din valorile posibile pentru a însemna un exponent negativ. Adăugând 7 la exponent asociați valorile -7, -6, …, 0,1, …, 8 la intervalul reprezentabil. De asemenea, vă recomandăm să căutați două „complement .

Comentarii

  • Deci, adăugând 7, hărți -7, -6, …, – 1 la valorile lor pozitive corespunzătoare și adăugând o valoare mai mare de 7 rezultă o valoare în afara intervalului care este incorectă. Din același motiv, adăugând mai puțin de 7 către exponent ' nu remediază problema. Mulțumesc, am ' am primit ceea ce căutam.
  • Adăugarea diferitelor numere modifică ce exponenți negativi și ce exponenți pozitivi acceptați. Este ' o decizie de proiectare. Poate doar acceptarea -1 este suficientă pentru aplicația dvs.
  • Da , aveți dreptate. Aceasta este o decizie de proiectare pe care instructorul a implementat-o prin intermediul tutorialului și nu este ' o constrângere strictă.
  • Decizia de a utiliza un offset în loc de 2 ' complement IIRC a fost să păstreze inversul celei mai mici valori mai mic decât cel mai mare va lue, adică pentru a evita revărsările. A fost ales cu grijă, cu alte cuvinte.
  • @KWillets: Offsetul permite, de asemenea, ca zero să fie reprezentat ca zerouri și permite utilizarea unor comparații întregi pentru a compara numerele în virgulă mobilă (cu excepția bitului de semn)

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *