-
21. Data: 2023-02-27 19:13:40
Temat: Re: Programowanie MCU - największa liczba
Od: Marek <f...@f...com>
On Mon, 27 Feb 2023 12:48:06 +0100, Adam
Górski<gorskiamalpawpkropkapl@xx> wrote:
> Jeżeli mijam się z prawdą lub jak to się kiedyś mówiło - kłamię ,
> proszę
> o korektę.
Nie potrzeba aż takich wartości:
$ cat a.c
#include <stdio.h>
#include <string.h>
int main()
{
int i;
double a;
a=9007199254740990;
for(i=0;i<5;i++)printf("%f\r\n", a++);
}
$ gcc a.c && ./a.out
90071992547409900.000000
90071992547409901.000000
90071992547409902.000000
90071992547409902.000000
90071992547409902.000000
--
Marek
-
22. Data: 2023-02-28 08:36:05
Temat: Re: Programowanie MCU - największa liczba
Od: Janusz <j...@o...pl>
W dniu 2023-02-26 o 01:35, Stachu Chebel pisze:
> Używam Kinetis Design Studio. MCU: Arm Cortex-M4. Dokładnie jest to
> MK22FN512VLH12. Definiuję zmienną globalną : double a; .
Ja bym dał
unsigned long long
jest liczbą całkowitą.
--
Janusz
-
23. Data: 2023-03-04 13:19:33
Temat: Re: Programowanie MCU - największa liczba
Od: Piotr Wyderski <b...@p...com>
Stachu Chebel wrote:
> Używam Kinetis Design Studio. MCU: Arm Cortex-M4. Dokładnie jest to
> MK22FN512VLH12. Definiuję zmienną globalną : double a; .
> W przerwaniu zmienna jest inkrementowana: a=a+Byle_Co;
> Program działa poprawnie, ale do pewnego momentu czasowego.
Tak działa reprezentacja zmiennoprzecinkowa, czego się spodziewałeś?
x+y == x dla x dużo większych od y. Ogranicza Cię pojemnośc mantysy,
a nie zakres wykładnika, więc pytanie postawione tak, jak to zrobiłeś,
jest "not even wrong".
Pozdrawiam, Piotr
-
24. Data: 2023-03-04 13:26:44
Temat: Re: Programowanie MCU - największa liczba
Od: Piotr Wyderski <b...@p...com>
Dawid Rutkowski wrote:
> W sumie też nie wiem ile to będzie MAX_DOUBLE+1.
Zależy od tego 1. MAX_DOUBLE albo +inf.
> A nie skomentujecie pomysłu robienia sobie licznika z double?
Jak się rozumie, co się robi, to licznik na double jest całkowicie
dopuszczalny. W IEEE754 zachowuje się jak 53-bitowy integer. A potem
przestaje. :-) Obsesyjnie pilnujesz zakresu, albo się dziwisz.
> I założenia, że "zmiennoprzecinkowa"nkażdą wartość przyjmie?
> W Bajtku był taki cykl "programować może każdy".
> Może i prawda, ale "zaprogramować" już niekoniecznie...
Nie ma się co znęcać nad Kolegą, każdy czegoś nie wie. Choć tutaj te
braki są dość fundamentalne.
Pozdrawiam, Piotr


do góry
2035 rok coraz mniej realny? Europa traci tempo w wyścigu o elektromobilność