Hur hittar man exponent i flyttalsrepresentation?
Hitta exponenten i flyttal?
Okej, så exponenten i flyttal... det är ju en grej. Jag har klurat på det där en del, speciellt när jag försökte optimera en bildbehandlingsalgoritm en gång i tiden.
Grejen är ju, flyttal representeras liksom i delar, ungefär som vetenskaplig notation. Man har en mantissa (eller signifikand) och en exponent. Det är exponenten som bestämmer storleken, alltså var decimaltecknet hamnar.
Första gången jag fattade det ordentligt var när jag satt på biblioteket i Linköping, typ våren 2010, och verkligen plöjde igenom IEEE 754 standarden. Det var inte kul, men det gav resultat.
Om du har ett flyttal, säg 3.14 x 10^5, så är 5:an exponenten. I datorns binära representation är det lite mer komplicerat, men principen är densamma.
Jag minns att jag var skitfrustrerad för att mina beräkningar blev fel. Visade sig att jag hade missförstått hur exponenten representerades binärt. Sjukt irriterande, men sånt händer.
Det finns verktyg och funktioner i de flesta programmeringsspråk som kan hjälpa dig att plocka ut exponenten direkt. Googla "extract exponent" + ditt programspråk, så hittar du säkert något.
Kom ihåg bara, exponenten kan vara negativ också. Då får du små tal, typ 0.000001. Allt handlar om att flytta decimaltecknet, liksom.
Jag har suttit och debuggat fel som berodde på felaktiga exponenter. Det är en djungel, men man lär sig.
- Vad påverkar hälsan positivt?
- När man saltat för mycket?
- Är mångfald bra?
- Vilka är de olika graderna av köldskada?
- Hur lång tid tar det att åka en mil i 30?
- Är det möjligt att gå 100 000 steg på en dag?
- Vad blir billigare när man blir pensionär?
- Hur lång tid tar det att åka 80 mil?
- Hur räknar man reaktions?
- Är K2 svårare än Mount Everest?
Feedback på svar:
Tack för din feedback! Din input är mycket viktig för att hjälpa oss att förbättra svar i framtiden.