techniky k prevodu s plávajúcou desatinnou čiarkou na fixxedpoint

F

fireblade

Guest
Aké sú postupy pre prevod desatinných čísel s pevnou desatinnou čiarkou.
 
Záleží na tom, či môžete alebo nemôžete používať v pohyblivej rádovej čiarke. Ak môžete urobiť jednoducho násobiť s plávajúcou desatinnou čiarkou hodnotu 2 ^ (number_of_fractional_bits) a prevod výsledku na celé číslo. V jazyku C existuje libm funkcie ldexp () , ak si spomínam, ktorý poskytuje rýchle násobenie čísel s pohyblivou desatinnou čiarkou sily dva. Funguje tak, že manipuluje číslo je exponent hodnotu priamo. Ak si chcete urobiť, bez toho by si hrať s plávajúcou desatinnou čiarkou, stačí rozbaliť mantisa, dal '1 'bit vľavo, posun číslo doľava alebo doprava podľa toho je exponent, a nakoniec vynásobte ju 1 alebo -1 v závislosti na znamenie bit. Presnejšie povedané, ak váš dĺžka je mantisa M bitov, tj 23 pre jednoduchú presnosťou IEEE desatinné čísla (24 bitov sa "skrytú 1", pre dvojité presnosti - opýtajte sa Google a máte F nepatrné kúsky v zozname pevné miesto čísel Potom je potrebné posunúť mantisa (s '1 'ako MSB vrátane) (M - F), bitov vpravo, ak je (MF) je záporná, potom je potrebné posunúť ju doľava.
 

Welcome to EDABoard.com

Sponsor

Back
Top