Float en DWord beiden 32bits??

Er zijn legio redenen.

Mijn reden was het loggen van hoog frequente FFT data.
Een ander voorbeeld is bijvoorbeeld grafische representatie op het scherm d.m.v. bitmap fonts.
Mijn routine is hier super snel in omdat het gedeelte van de ascii conversie totaal kan worden overgeslagen omdat alle digits als 32 bit integers worden berekend.
Handig voor toepassingen als spellen en muziek programma's.

Dan mijn vraag, waarom niet gebruik maken van de mogelijkheden die er zijn.

Ik moet wel toegeven dat ik een beetje een autistische nerd ben en altijd op zoek om de snelste algoritmes te bedenken.

Dit is niet eens de snelste versie, de AVX variant is nog sneller omdat alle 8 digits ( 7 + de decimale punt ) in 1 keer worden berekend.
Maar deze versie werkt vanaf de pentium4 vandaar.

Dat loggen kun je toch veel beter als digitale data doen en evt uit die logging iets omzetten naar leesbare tekst? Een FFT opslaan als ascii tekst klinkt mij als een nogal onelegante oplossing (maar misschien mis ik je punt).

@hieronder: ok, duidelijk. No offense.

"We cannot solve our problems with the same thinking we used when we created them" - Albert Einstein

Je hebt helemaal gelijk hoor, maar aangezien het ontvangende station een hele slome cpu en floating point unit heeft hebben we hier voor gekozen. Anders was het in realtime niet te doen.
Nu hoeven er alleen aaneengesloten blokken van 12 byte per getal te worden ontvangen. Dus geen extra kosten. ( dit was de voornaamste reden )

Eigenlijk was dit voorbeeld alleen maar om te laten zien hoe het 32 bit floating point format kan worden gedecodeerd zonder de FPU te gebruiken, dacht dat dit wel interessant was in kader van dit topic.

Op 30 maart 2019 13:04:51 schreef Siekmanski:
Dan mijn vraag, waarom niet gebruik maken van de mogelijkheden die er zijn.

Uiteraard, "Omdat het kan" is altijd een goed antwoord op de vraag waarom je iets doet (bij dit soort technische nerd dingen althans..)

Maar TS kwam hier met een vraag over floats op PIC's, dus ik denk niet dat ie heel snel ftoa() wil doen :-).

Wel leuk dat het kan, en dat iemand het gedaaan heeft. Zelf ben ik 100 jaar geleden ook ooit assembly begonnen met 16 bits integers in ascii omzetten op een 8088... Gelukkig kan ik nu meestal wegkomen met C :-)

Op 30 maart 2019 17:46:02 schreef blurp
Maar TS kwam hier met een vraag over floats op PIC's, dus ik denk niet dat ie heel snel ftoa() wil doen :-).

OK sorry, dacht dat het vooral om het floating point format ging. :o

Wel leuk dat het kan, en dat iemand het gedaaan heeft. Zelf ben ik 100 jaar geleden ook ooit assembly begonnen met 16 bits integers in ascii omzetten op een 8088... Gelukkig kan ik nu meestal wegkomen met C :-)

Ik ben zelf ook ongeveer 100 jaar geleden begonnen met assembly en er nooit mee gestopt. :-)

240diesel

Golden Member

Hahaha, mooi werk, ik begrijp net zoveel van je code als van het Chinese schrift......dat neemt echter niet weg dat ik het wel interessant en vooral heel knap vind.

Ik ben zelf heel blij met alles wat ik van Frits z'n picbasic cursussen heb geleerd (en nog steeds leer) , wel eens gedacht om andere programmeertaal te leren maar ben bang dat ik dan helemaal alles door elkaar ga halen. Daar komt nog bij dat ik recent ook aan het AUTOCAD-en ben geslagen dus hersentraining heb ik zat.

Los daarvan heb ik allang begrepen dat de ideale programmeertaal tóch niet bestaat net zomin als de beste auto etc.

Dank je.

Op 30 maart 2019 22:10:58 schreef 240diesel:
Los daarvan heb ik allang begrepen dat de ideale programmeertaal tóch niet bestaat net zomin als de beste auto etc.

Hahaha, daar zijn de meningen over verdeeld, uiteindelijk is het maar net waar je je prettig bij voelt en wat je doelen zijn. ;-)
Succes met je projecten.

Update!
Heb de Scientific_sz lookup table aangepast. ( per ongeluk de verkeerde test versie ingevoegd )
01+e, 02+e en 03+e in de onderste 3 regels van de tabel moesten zijn: 01-e, 02-e en 03-e
Source code aangepast in de download link hieronder. ( sorry voor het ongemak )

http://members.home.nl/siekmanski/Real4_2_ASCII.zip

Inderdaad,

De ideale programmeertaal bestaat wel degelijk, maar is wel afhankelijk van veel factoren, onder andere je persoonlijke voorkeur. ;)

Voor mij is het C++, vooral omdat ik daar in thuis ben en omdat het breed ondersteund word op een groot aantal processors.