-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!pwr.wroc.pl!news.wcss.wroc.pl!newsfeed.
pionier.net.pl!news-2.dfn.de!news.dfn.de!newsfeed.fsmpi.rwth-aachen.de!news2.ar
glkargh.de!news.mixmin.net!aioe.org!.POSTED!not-for-mail
From: "AK" <n...@n...com>
Newsgroups: pl.comp.programming
Subject: Re: Nowoczesne procesory - jak to z nimi jest?
Date: Mon, 25 Mar 2013 18:40:31 +0100
Organization: Aioe.org NNTP Server
Lines: 96
Message-ID: <kiq26c$aqp$1@speranza.aioe.org>
References: <5148d9db$0$26710$65785112@news.neostrada.pl>
<4...@g...com>
<1...@g...com>
<kihto6$q3f$1@mx1.internetia.pl>
<c...@g...com>
<3...@g...com>
<a...@g...com>
<e...@g...com>
<7...@g...com>
<kipkjv$uf$1@speranza.aioe.org>
<5...@g...com>
<kipm0j$5bi$1@speranza.aioe.org>
<5...@g...com>
<kipoe5$cfe$1@speranza.aioe.org>
<4...@g...com>
NNTP-Posting-Host: cZ1dTClifAdMpRRAcoWHvA.user.speranza.aioe.org
Mime-Version: 1.0
Content-Type: text/plain; format=flowed; charset="iso-8859-2"; reply-type=original
Content-Transfer-Encoding: 8bit
X-Complaints-To: a...@a...org
X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6002.18463
X-Notice: Filtered by postfilter v. 0.8.2
X-Newsreader: Microsoft Windows Mail 6.0.6002.18197
X-Priority: 3
X-MSMail-Priority: Normal
Xref: news-archive.icm.edu.pl pl.comp.programming:202287
[ ukryj nagłówki ]Użytkownik "M.M." <m...@g...com> napisał:
>> Kto Ci powiedzial ze fp C/C++ jest zapisane w postaci poteg dwojki ?
>> A moze sa pamietane decymalnie ? Albo siodemkowo ?
>
>Nikt mi nic takiego nie mówił, ani ja nic takiego nie mówię.
>
> Mówię tylko to, że jeśli jeden raz pow(3.0,2.0) równa się 9.0 na ostro, a
> drugi raz nie równa się, to ten pierwszy raz jest dokładniej.
Otoz nie.
Moze sie okazac, ze ten koproc/kompilator ktory akurat daje dokladnie
w tym przypadku pow(3.0,2.0), w wiekszosci innych przypadkow
sie "myli", natomiast ten gdy ten gorszy liczy "dobrze".
> Być może taka dokładność jest okupiona wolniejszym wykonaniem.
Byc moze, a byc moze nie (np inna reprezentacja wewnetrzna,
inna dlugoscia akumulatora itp).
Naprawde dyskusje o fp sa toczone na usenecie od zawsze (rowniez przeze
mnie wiec na stare lata sobie dam spokoj z nawracaniem kolejnego pokolenia
"mlodych gniewnych wiedzacych lepiej" bo mi szkoda resztek zycia.
Zalosc tylko bierze, ze na studiach tak podstawowej rzeczy nie ucza jak
traktowanie liczb fp w jezykach programowania jako ZAWSZE
obarczonych pewnym bledem.
Ta "niedokladnosc" nalezy traktowac nie jako neidoskonalosc
kompilatora/procesora ale jako NATURE tych liczb.
Owszem, ciagle w kompilatorach dazy sie do uleopszen w celu
molziwie najwiekszej dokladnosci/mozliwie najwiekszemu zneutralizowaniu
tej CECHY fp, ale absolutnie nie nalezy tego uwazac za
"zalatwienie" problemu. (Przyklad ostatnich ulepszen dla Pythona
na koncu).
Hint: szukaj chocby mych postow tyczacych fp
(Google: Adam Karpierz, liczby zmiennoprzecinkowe), a jak mi
nie wierzysz to spojrz do pierwszej ksiazki jaka przeczytalem po
postanowieniu nauczenia sie programowania:
prof Maciej Syslo "Algorytmy optymalizacji w jezyku Algol60"
a tam w pierwszym algorytmie - simplex - jak byk stoi cos w rodzaju
if abs(x - y) <= EPS then // czyli odpowiednik x == y
begin
comment Solution found;
...
end;
Pozdrawiam
AK
------------------
.
Conversions between floating-point numbers and strings are now correctly rounded on
most platforms.
These conversions occur in many different places: str() on floats and complex
numbers; the float and
complex constructors; numeric formatting; serializing and deserializing floats and
complex numbers
using the marshal, pickle and json modules; parsing of float and imaginary literals
in Python code;
and Decimal-to-float conversion.
Related to this, the repr() of a floating-point number x now returns a result based
on the shortest
decimal string that's guaranteed to round back to x under correct rounding (with
round-half-to-even
rounding mode). Previously it gave a string based on rounding x to 17 decimal digits.
The rounding library responsible for this improvement works on Windows and on Unix
platforms using
the gcc, icc, or suncc compilers. There may be a small number of platforms where
correct operation
of this code cannot be guaranteed, so the code is not used on such systems. You can
find out which
code is being used by checking sys.float_repr_style, which will be short if the new
code is in use
and legacy if it isn't.
Implemented by Eric Smith and Mark Dickinson, using David Gay's dtoa.c library; issue
7117.
.
Conversions from long integers and regular integers to floating point now round
differently,
returning the floating-point number closest to the number. This doesn't matter for
small integers
that can be converted exactly, but for large numbers that will unavoidably lose
precision, Python
2.7 now approximates more closely. For example, Python 2.6 computed the following:
>>>>>> n = 295147905179352891391
>>> float(n)
2.9514790517935283e+20
>>> n - long(float(n))
65535L
Python 2.7's floating-point result is larger, but much closer to the true value:
>>>>>> n = 295147905179352891391
>>> float(n)
2.9514790517935289e+20
>>> n - long(float(n))
-1L
(Implemented by Mark Dickinson; issue 3166.)
Integer division is also more accurate in its rounding behaviours. (Also implemented
by Mark
Dickinson; issue 1811.)
Następne wpisy z tego wątku
- 25.03.13 19:36 M.M.
- 26.03.13 10:21 darekm
- 26.03.13 12:25 M.M.
- 26.03.13 14:42 darekm
- 26.03.13 14:48 AK
- 26.03.13 14:57 firr kenobi
- 26.03.13 15:32 AK
- 26.03.13 15:41 M.M.
- 26.03.13 17:43 M.M.
- 26.03.13 19:02 Adam Klobukowski
- 26.03.13 19:10 M.M.
- 26.03.13 22:00 M.M.
- 26.03.13 22:01 Adam Klobukowski
- 26.03.13 22:11 Adam Klobukowski
- 26.03.13 22:29 M.M.
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- 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
Najnowsze wątki
- 2024-11-29 Dławik CM
- 2024-11-29 [OT] Lewe oprogramowanie
- 2024-11-29 Błonie => Sales Specialist <=
- 2024-11-29 Warszawa => IT Expert (Network Systems area) <=
- 2024-11-29 Warszawa => Ekspert IT (obszar systemów sieciowych) <=
- 2024-11-29 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-29 Białystok => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-11-29 Pómpy ciepła darmo rozdajoo
- 2024-11-29 Białystok => Application Security Engineer <=
- 2024-11-29 Białystok => Programista Full Stack (.Net Core) <=
- 2024-11-29 Gdańsk => Software .Net Developer <=
- 2024-11-29 Wrocław => Key Account Manager <=
- 2024-11-29 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-29 Chrzanów => Specjalista ds. public relations <=
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO