-
X-Received: by 10.49.27.168 with SMTP id u8mr10316qeg.11.1384419781470; Thu, 14 Nov
2013 01:03:01 -0800 (PST)
X-Received: by 10.49.27.168 with SMTP id u8mr10316qeg.11.1384419781470; Thu, 14 Nov
2013 01:03:01 -0800 (PST)
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
.pl!news.nask.org.pl!newsfeed.pionier.net.pl!news.glorb.com!o2no462812qas.0!new
s-out.google.com!9ni27393qaf.0!nntp.google.com!o2no462798qas.0!postnews.google.
com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Thu, 14 Nov 2013 01:03:01 -0800 (PST)
In-Reply-To: <7...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=31.61.131.198;
posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN
NNTP-Posting-Host: 31.61.131.198
References: <c...@g...com>
<528473d4$0$2284$65785112@news.neostrada.pl>
<3...@g...com>
<7...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <4...@g...com>
Subject: Re: ułamki (alternatywnie do floata)
From: firr <p...@g...com>
Injection-Date: Thu, 14 Nov 2013 09:03:01 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:204674
[ ukryj nagłówki ]W dniu czwartek, 14 listopada 2013 09:44:53 UTC+1 użytkownik firr napisał:
> W dniu czwartek, 14 listopada 2013 09:05:04 UTC+1 użytkownik firr napisał:
>
> > W dniu czwartek, 14 listopada 2013 07:55:16 UTC+1 użytkownik Tomasz Kaczanowski
napisał:
>
> >
>
> > > W dniu 2013-11-13 19:29, firr pisze:
>
> >
>
> > >
>
> >
>
> > > > juz pare razy sie zastanawialem cze gdyby
>
> >
>
> > > > zdefiniowac sobie liczbe jako pare integerow
>
> >
>
> > > > licznik i mianownik (najlepiej jako i64
>
> >
>
> > > > a nie i32 bo dla 32 bit chyba szybko mogloby
>
> >
>
> > > > dochodzic do przepelnienia) to czy takie
>
> >
>
> > > > rachunki nie mialyby szansy byc lepszymi
>
> >
>
> > > > od floata/double
>
> >
>
> > >
>
> >
>
> > > >
>
> >
>
> > >
>
> >
>
> > > > zalety sa np takie
>
> >
>
> > >
>
> >
>
> > > >
>
> >
>
> > >
>
> >
>
> > > > 1) jest to szybkie tj arytmetyka calkowita bez dzielenia w wiekszosci
operacji
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > > To, że jest to arytmetyka całkowita, wcale nie oznacza, że będzie
>
> >
>
> > > szybka, tym bardziej, że trzeba wykonywać dodatkowe operacje.
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > > > 2) byloby to (poki sie nie wywali z powodu
>
> >
>
> > > > przepelnienia0 scisłe, tj nie traci informacji
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > > Przepełnienie nastapi szybko przy dodawaniu liczb ułamkowych o różnych
>
> >
>
> > > mianownikach....
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > > > 3) pozwala opoznic dzielenie, floaty wykonuja
>
> >
>
> > > > dzielenia z kazdym znakiem / - taka liczba o wiele
>
> >
>
> > > > rzadziej np przy wydruku na ekran reprezentacji dziesietnej
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > > Dla optymalizacji zamiast dzielenia będzie szukanie najlepszego
>
> >
>
> > > mianownika przy dodawaniu.
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > > > wady - nie wiem czy to wogole by dzialalo tj
>
> >
>
> > > > boje sie ze szybko by sie przepelniało (ale moze
>
> >
>
> > > > dla i64 nie tak szybko?)
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > > Tak samo szybko.... (no ciut wolniej)
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > > > ktos moglby rozwinac jakos ten temat i powiedzic
>
> >
>
> > >
>
> >
>
> > > > cos na temat tej opcji?
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > > Tak swojego czasu bawiłem się, zabawa przednia, ale jeśli chodzi o
>
> >
>
> > >
>
> >
>
> > > szybkość działań i szybkość przepełnień, to po za miejscem, gdzie takich
>
> >
>
> > >
>
> >
>
> > > operacji potrzebujemy jest to duzo wolniejsze i dodatkowo szybko się
>
> >
>
> > >
>
> >
>
> > > przepełnia.
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> >
>
> >
>
> > fajnie by bylo wiedziec jednak nieco wiecej
>
> >
>
> > na ten temat, ciekawe na przyklad 1 czy nie ma jednak jakichs przypadkow gdy to
by sie
>
> >
>
> > jednak sprawdzalo 2 jak dzilalalo by np
>
> >
>
> > takie trywialne skracanie ze licznik i mianownik
>
> >
>
> > przesuwamy w prawo o ta sama ilosc bitów,
>
> >
>
> > czy niosloby to jakis wielki blad
>
> >
>
> > na przyklad mamy ulamek
>
> >
>
> >
>
> >
>
> > 10010101011101010100110010100101001001001010101001
>
> >
>
> > / 10010010010001001001010010111111010100001010
>
> >
>
> >
>
> >
>
> > czy po prostu obciacie licznika i mianownika np o 10 bitow nioslo by duzy blad
czy tez tego typu arytmetyka dzialalaby dla realnych zastosowan
>
> >
>
> > (tego typu skracanie jest technicznie o niebo szybsze niz algorytm do dzielenia -
widomo ze
>
> >
>
> > dzielenie jest akcelerowane ale sama istota
>
> >
>
> > tej prostoty tutaj wydaje mi sie ew ciekawa)
>
>
>
> mozna tez przemyslec wersje takich liczb z
>
> ruchomym przecinkiem tj mantysa-cecha, ale
>
> ten podstawowy przypadek jest prostszy do
>
> zastanawiania sie jakby to dzialalo,
>
>
>
> ogolnie zaleta wydaje mi sie jest taka ze
>
> np jakis dlugi ciag dodawan odejmowan mnozen
>
> i dzielen w takiej reprezentacji jest
>
> fizycznie o wiele prostszy nic na floacie
>
> typu mantysa cecha (jesli to drugie by symulowac
>
> softem to chybbylo by widac) a dzielenie jest
>
> wogole wykluczane, chyba dopiero do momentu
>
> gdy trzeba wypisac reprezentacje dziesietna
>
> na ekranie (?)
tj w sumie dodawanie ulamokow byloby bardziej
zlozone (tez w sumie nie wiem dokladnie jak
kosztowne sa dodawanie udejmowanie mnozenie
rozpisane softem na floatach bo moze nie
az tak - wartoby napisac sobie softowe
symulacje obu wersji) ale za to dodawania
takich rzeczy jak 1/3 + 1/7 bylyby scisle
- wydaje sie to jednak ciekawy pomysl
i szkoda ze nie mam czegos takiegio w typach prostych do popisania na tym i
posprawdzania jak to dziala
Następne wpisy z tego wątku
- 14.11.13 10:22 Robert Winkler
- 14.11.13 10:25 Borneq
- 14.11.13 10:26 g...@g...com
- 14.11.13 10:57 Piotr Chamera
- 14.11.13 11:10 Paweł Kierski
- 14.11.13 11:48 firr
- 14.11.13 16:34 A.L.
- 14.11.13 16:39 A.L.
- 14.11.13 16:47 firr
- 14.11.13 18:11 Ghost
- 14.11.13 19:37 bartekltg
- 14.11.13 19:47 Jordan Szubert
- 14.11.13 19:48 bartekltg
- 14.11.13 19:59 bartekltg
- 14.11.13 20:25 bartekltg
Najnowsze wątki z tej grupy
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
Najnowsze wątki
- 2024-11-08 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-08 Warszawa => Key Account Manager <=
- 2024-11-08 Szczecin => Key Account Manager (ERP) <=
- 2024-11-08 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2024-11-08 Wrocław => Senior PHP Symfony Developer <=
- 2024-11-08 Warszawa => QA Engineer <=
- 2024-11-08 Warszawa => QA Inżynier <=
- 2024-11-08 Warszawa => Key Account Manager <=
- 2024-11-08 Gdańsk => Software .Net Developer <=
- 2024-11-08 Akumulator Hyundai
- 2024-11-08 Warszawa => Manager/Specialist e-commerce (B2C) <=
- 2024-11-08 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-08 Gdańsk => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-11-08 znaj podstawe
- 2024-11-08 Chrzanów => Specjalista ds. public relations <=