nasobeni realem v integerove aritmetice

PaPouch papouch
Středa Březen 17 11:51:41 CET 2004


Nejlepe je cislo 0.828 zobrazit ve formatu "0.16" (pouzivam oznaceni, co
znam z 16-ti bitovych DSP-pocet binarnich cislic pred a za desetinou
carkou), proste cislo 0 az 1 je zobrazeno jako 0-65536. V pripade 0.828 tedy
jako 0.828*65536 = 54264. Tim vynasobite 42865 (word *word) a dostanete 4
byte. Horni 2 byte jsou vysledek (vlastne je to deleni 65536, takze se
dostanete zpet) a dolni 2 byte zahodite (predstavuje necelociselnou cast).

Presne takhle je napsana procedura pro 8051 na kalibraci v nasich DRACICH...

S pozdravem
ing. Pavel Poucha

Navstivte prosim nase stranky: www.pap-el.cz

----- Původní zpráva -----
Od: <Serych@Panska.CZ>
Komu: Multiple recipients of list <hw-news@list.gin.cz>
Odesláno: 8. července 2000 16:08
Předmět: nasobeni realem v integerove aritmetice


> Dobry den,
> neznate prosim nekdo algoritmus, kterym lze vyjadrit cislo real, jako
zlomek
> s urcitou presnosti?
> Potrebuji v integerove aritmetice (x51) vynasobit integer nejakou real
> konstantou. Rekneme 42865 x 0,828. Predstavuji si, ze to udelam jako 42865
x
> 207 / 250 nebot 0,828 = 207 / 250. Zatim jde o pevne danou konstantu, tak
to
> delam tak, ze si ji napisu do bunky Excela a nastavim tomu format
"zlomky",
> ale chtel bych znat algoritmus, jak na to prijit s tuzkou a papirem. Je to
> nejaka banalni aritmeticka uloha ze zakladni skoly nebo je to neco
> slozitejsiho? Nakopnete prosim me mysleni spravnym smerem.
>
> Pekny den
>
>
> Jakub Serych
>
>
>
>
>







Další informace o konferenci Hw-list