-
11. Data: 2014-02-27 17:22:11
Temat: Re: jak policzy
Od: "tusk, donald tusk" <N...@g...pl>
tak źle napisałem, we wzorze podstawia się liczby ułamkowe, a ja to będę
wyliczał na 8 bitowym procku... no i nie chcę sie namęczyć... binarne liczby
ułamkowe, może to by i przeszło... ale może Ktoś ma jakiś patent żeby zrobić
to na zwykłych bajtach...
można jeszcze przemnożyć te 34 np. x65536 i tak liczyć, ale może jest
prostszy sposób?
-
12. Data: 2014-02-27 17:22:56
Temat: Re: jak policzy
Od: bartekltg <b...@g...com>
W dniu 2014-02-27 17:22, tusk, donald tusk pisze:
> tak źle napisałem, we wzorze podstawia się liczby ułamkowe,
To nadal nie jest w pełni komunikatywne. Nie ma czegoś
takiego jak liczby ułamkowe. Domyślam się, żę
chodzi o stały przecinek realizowany na jakiś intach.
> a ja to będę
> wyliczał na 8 bitowym procku... no i nie chcę sie namęczyć... binarne
> liczby ułamkowe, może to by i przeszło... ale może Ktoś ma jakiś patent
> żeby zrobić to na zwykłych bajtach...
>
> można jeszcze przemnożyć te 34 np. x65536 i tak liczyć, ale może jest
> prostszy sposób?
Obejrzyj pdfa z pierwszego posta.
pzdr
bartekltg
-
13. Data: 2014-02-28 09:20:59
Temat: Re: jak policzy
Od: firr <p...@g...com>
W dniu środa, 26 lutego 2014 23:46:00 UTC+1 użytkownik bartekltg napisał:
> W dniu 2014-02-26 20:28, tusk, donald tusk pisze:
>
> > jest taki wzór:
>
> >
>
> > N=(CK*2^32)/125
>
>
>
> Już myślałem, że szukasz tego,
>
> http://cas.ee.ic.ac.uk/people/gac1/pubs/TheoISCAS12.
pdf
>
> kiedyś była tu o tym dłuższa dyskusjai chyba
>
> lepsze linki. Ale...
>
>
>
>
>
> > CK i N mogą być ułamkowe, nawet takie: 0,000001
>
>
>
> Jeśli są to zmienne zmiennoprzecinkowe, to gdzie problem?
>
>
>
> liczysz stałą c = 34359738.368;
>
> wpisujesz w kod i masz jedno mnożenie,
>
> czy jedno fmul, skoro asm.
>
>
>
> > jak to okiełznać, najlepiej bez dzielenia, tylko mnożenie i przesuwanie,
>
> > bez ułamków...
>
>
>
> Nie ma przesuwania zmiennych zmiennoprzecinkowych.
>
> Jest operator FSCALE, który liczy y*2^floor(x), ale tu będzie
>
> niepotrzebny, bo to stałe. Hmm, niby scalbn w c++ powinno to robić,
>
> ale gcc nie rozwija do fscale, ale robi gdzieśtam call.
>
>
>
> > proszę o gotowe zwory...
>
>
>
> -ffast-math
>
>
>
> N = ck * 34359738.368;
>
>
>
a ja ostatnio chyba mniejsza uwage przyladam do
kwesti optymalizacji, to czym uwazam powinienem
sie zajmowac to "zrozumienie fundamentów grafiki
i interakcji"
-
14. Data: 2014-04-12 01:24:32
Temat: Re: jak policzy
Od: "Pszemol" <P...@P...com>
"tusk, donald tusk" <N...@g...pl> wrote in message
news:lenonl$8d1$1@node2.news.atman.pl...
> tak źle napisałem, we wzorze podstawia się liczby ułamkowe,
> a ja to będę wyliczał na 8 bitowym procku...
> no i nie chcę sie namęczyć...
> binarne liczby ułamkowe, może to by i przeszło... ale może
> Ktoś ma jakiś patent żeby zrobić to na zwykłych bajtach...
>
> można jeszcze przemnożyć te 34 np. x65536 i tak liczyć,
> ale może jest prostszy sposób?
Czy masz określony jakiś sensowny zakres liczb wejściowych?
Chodzi o to, czy np. Twoje liczby "ułamkowe" będą ZAWSZE
z zakresu np. minimalnie 0.0001-0.0010?
Ciężko sobie wyobrazić praktyczną konwersję float => int
jeśli nie masz żadnego ograniczenia na wartość tych liczb float
w programie i raz może to być 1*10^-13 a innym razem 287123.