En informàtica, un nombre de precisió simple és un format numèric de computador que ocupa una posició de memòria en un computador, definit bàsicament per la longitud de bits del registre d'operacions del processador i per tant calculat en una operació simple (d'un cicle de processador), Per tant ha variat segons l'arquitectura del Maquinari en funció dels processadors de 8, 16, 32 i 64 bits). Un nombre de precisió simple, molts cops simplificat a simple, pot ser definit com a enter, de punt fix, o amb punt flotant.
Aquest article tenia importants deficiències de traducció i ha estat traslladat a l'espai d'usuari. Podeu millorar-lo i traslladar-lo altra vegada a l'espai principal quan s'hagin resolt aquestes mancances. Col·laboreu-hi! |
Un dels primers llenguatges de programació que van incloure els nombres de simple i doble precisió va ser el Fortran (1957). Abans de la generalització feta a l'estandard IEEE 754-1985, la representació i propietats d'aquests nombres depenia del fabricant i el model del computador. Els nombres de precisió simple s'anomenen "floats" en C, C++, C#, Java i Haskell, i "single" en el Pascal i el MATLAB. Tot i això, els floats (en Python) i els singles (en versions d'Octave anteriors a la versió 3.2) es refereixen a nombres de precisió doble.
Els computadors moderns amb una paraula de 32 bits (precisió simple) proporcionen precisió doble de 64 bits. Punt flotant de precisió simple és un estàndard IEEE 754 per codificar nombres decimals o binaris en punt flotant en 4 bytes.
Format binari de coma flotant de precisió simple
- Bit de signe: 1 bit
- Exponent mida: 8 bits
- Significant precisió: 23 (24 implícit) bits
El format és escrit amb el primer bit significatiu amb valor 1, a menys que l'exponent sigui tot zeros. Així doncs, només 23 bits de la fracció de la mantissa apareixen en el format però la precisió total és de 24 bits (millor que 7 dígits decimals, ).
Codificació de l'exponent
L'exponent de precisió simple amb coma flotant es codificat usant la representació ajust binari, a on el zero es ajustat al valor 127 binari; també conegut coma Ajust d'exponent (Exponent bias) a l'estandar IEEE754.
- Emin (0x01) = -126
- Emax (0xfe) = 127
- Exponent bias (0x7f) = 127
El verdader exponent = exponent escrit - exponent bias
- 0x00 i 0xff estan reservats a exponents:
- 0x00 és utilitzat per representar el zero i denormals
- 0xff és utilitzat per representar l'infinit i NaNs
Tots els patrons de codificació de bits són vàlids.
Exemples de precisió simple en hexadecimal
3f80 0000 = 1
c000 0000 = -2
7f7f ffff ~ 3.4028234 x 1038 (Màx Simple)
3eaa aaab ~ 1/3
Per defecte, 1/3 rounds up instead of down like double precision, because of the even number of bits in the significant.
So the bits beyond the rounding point are 1010...
which is more than 1/2 of a unit in the last place.
0000 0000 = 0 8000 0000 = -0
7f80 0000 = Infinit ff80 0000 = -Infinit
Convertint un binari de precisió simple a format inteligible pels humans
Començarem amb la representació hexadecimal de nombre, 41c80000, en aquest exemple, i el convertim a binari
41c8 000016 = 0100 0001 1100 1000 0000 0000 0000 00002
Després el descompondrem en tes parts; bit de signe, exponent i mantissa.
Bit de signe: 0 Exponent: 1000 00112 = 8316 = 131 Mantissa: 100 1000 0000 0000 0000 00002 = 48000016
Afegirem el 24é bit implícit a la mantissa
Mantissa: 1100 1000 0000 0000 0000 00002 = C8000016
i calculem el valor de l'exponent tot restant 127
Raw exponent: 8316 = 131 Exponent decodificat: 131 - 127 = 4
Per cada un dels 24 bits de la mantissa, des del bit 23 al bit 0, representem el valor, començant per 1 i dividint per dos l'anterior, com es mostra
bit 23 = 1 bit 22 = 0.5 bit 21 = 0.25 bit 20 = 0.125 bit 19 = 0.0625 . .
La mantissa en aquest exemple té tres bits a 1, bit 23, bit 22 i bit 19. Ara ja podem decodificar la mantissa tot sumant els valors dels respectius valors d'aquests bits.
Mantissa: 1 + 0.5 + 0.0625 = 1.5625
Després hem de multiplicar el resultat per 2 elevat a la potència de l'exponent per obtenir el resultat final
1.5625 * 24 = 25
Aleshores
41c8 0000 = 25
Vegeu també
- mitja precisió – precisió simple – precisió doble – precisió quadruple
- punt flotant
- Numerical stability
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.