Násobení float a fixed point čísla – Mikrokontroléry – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Násobení float a fixed point čísla – Mikrokontroléry – Fórum – Programujte.comNásobení float a fixed point čísla – Mikrokontroléry – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené — příspěvek s řešením.
yaqwsx+9
Posthunter
26. 11. 2011   #1
-
0
-

V mé aplikaci na AVR bych potřeboval vynásobit float a 16-bit číslo s pevnou čárkou ve tvaru 1.15. Moje úvaha byla následující: Pevně čísla vynásobím, tak jak jsou a poté ve výsledném floatu snížím exponent o 15. Snížení exponentu jsem chtěl provést pomocí dělení mocninou 2 - předpokládál jsem, že tato operace je optimalizována na pouhé snížení exponentu - není. Provádí se kompletní dělení, které trvá zbytečně dlouho.

Je nějaký "košer" způsob jak efektivně snížit exponent u float? Nebo musím jít do interní struktury, exponent vyčíst a zase nastavit? Popř. je nějaký jiný způsob jak výše zmíněná čísla vynásobit?

Nahlásit jako SPAM
IP: 85.160.109.–
Life is too short to remove USB mass storage safely...
Správný drsňák udělá z konzole cokoliv
Řešení
yaqwsx+9
Posthunter
26. 11. 2011   #2
-
0
-
Vyřešeno Nejlepší odpověď

Probém jsem vyřešil - v knihovně math.h existuje funkce ldexp, která násobí float n-tou mocninou dvou.

Nahlásit jako SPAM
IP: 85.160.109.–
Life is too short to remove USB mass storage safely...
Správný drsňák udělá z konzole cokoliv
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 4 hosté

Podobná vlákna

Fixed — založil BoBy

Fixed — založil BoBy

Position fixed — založil BigBear

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý