Warning: mkdir(): No space left on device in /var/www/tgoop/post.php on line 37

Warning: file_put_contents(aCache/aDaily/post/linuxpeople_feed/--): Failed to open stream: No such file or directory in /var/www/tgoop/post.php on line 50
feed linuxpeople@linuxpeople_feed P.2225
LINUXPEOPLE_FEED Telegram 2225
💣 #LoSapeviChe
0,1 + 0,2 NON FA 0,3 😱 ??
Non per i nostri PC almeno 😂

I calcolatori non comprendono nativamente il concetto di "numeri con virgola", di conseguenza si è dovuto pensare ad un metodo per rappresentarli-
Il metodo che è stato studiato si chiama IEEE 754, del quale vi lascio la pagina wikipedia qui.

In poche parole: il numero è rappresentato in memoria come la successione di 3 numeri interi:
- il segno (che può essere 1 o 0)
- l'esponente, che nella variante 32 bit ha 8 bit dedicati (valori da 0 fino a 255 o da -127 a 127)
- la mantissa, che nella variante 32 bit ha 23 bit dedicati, da decifrare in base ad altri parametri.

Normalmente il calcolo si effettua così :
(-1)ˢ × 2ᵉ × M
Dove la s vale 0 o 1 in base al segno, la e rappresenta l'esponente mentre la M la mantissa, il quale primo bit in genere si ignora (è chiamato anche hidden bit).

Tuttavia esistono una serie di casi limite in cui il calcolo si effettua in maniere diverse, ad esempio con esponente che vale 255 e per qualunque valore non nullo della mantissa si ha un "NaN" (not a number). Ma non farò qui una lezione sui numeri in virgola mobile 😂.

Quello che è più interessante, dopo questa piccola panoramica, è che con questi sistema purtroppo non si possono rappresentare tutti i numeri con la virgola, né tutte le operazioni.
Il caso più celebre è quello di 0.1 + 0.2 che non risulta 0.3, ma 0.30000000000000004 ! In verità non è nemmeno esatto, infatti continuando a calcolare altre cifre si scoprirebbe che dopo quel 4 ci son altre cifre, ma non è tanto questo il punto.

Il punto è che spesso si da la colpa a linguaggi o framework per quella che semplicemente è l'ignoranza di aspetti teorici e limiti del linguaggio e della rappresentazione. Questo purtroppo è il vero motivo per cui tutti possono essere programmatori oggi e scrivere codici su codici seguendo semplicemente una banale documentazione. Ma non tutti possono costruire un prodotto informatico che sia mediamente affidabile e duraturo nel tempo-

Per saperne di più su come gestiscono i floating point i vari linguaggi, esiste un bellissimo sito che raccoglie una serie di esempi:

https://0.30000000000000004.com

Ci si può trovare per alcuni anche come gestire i calcoli in tutta sicurezza.



tgoop.com/linuxpeople_feed/2225
Create:
Last Update:

💣 #LoSapeviChe
0,1 + 0,2 NON FA 0,3 😱 ??
Non per i nostri PC almeno 😂

I calcolatori non comprendono nativamente il concetto di "numeri con virgola", di conseguenza si è dovuto pensare ad un metodo per rappresentarli-
Il metodo che è stato studiato si chiama IEEE 754, del quale vi lascio la pagina wikipedia qui.

In poche parole: il numero è rappresentato in memoria come la successione di 3 numeri interi:
- il segno (che può essere 1 o 0)
- l'esponente, che nella variante 32 bit ha 8 bit dedicati (valori da 0 fino a 255 o da -127 a 127)
- la mantissa, che nella variante 32 bit ha 23 bit dedicati, da decifrare in base ad altri parametri.

Normalmente il calcolo si effettua così :
(-1)ˢ × 2ᵉ × M
Dove la s vale 0 o 1 in base al segno, la e rappresenta l'esponente mentre la M la mantissa, il quale primo bit in genere si ignora (è chiamato anche hidden bit).

Tuttavia esistono una serie di casi limite in cui il calcolo si effettua in maniere diverse, ad esempio con esponente che vale 255 e per qualunque valore non nullo della mantissa si ha un "NaN" (not a number). Ma non farò qui una lezione sui numeri in virgola mobile 😂.

Quello che è più interessante, dopo questa piccola panoramica, è che con questi sistema purtroppo non si possono rappresentare tutti i numeri con la virgola, né tutte le operazioni.
Il caso più celebre è quello di 0.1 + 0.2 che non risulta 0.3, ma 0.30000000000000004 ! In verità non è nemmeno esatto, infatti continuando a calcolare altre cifre si scoprirebbe che dopo quel 4 ci son altre cifre, ma non è tanto questo il punto.

Il punto è che spesso si da la colpa a linguaggi o framework per quella che semplicemente è l'ignoranza di aspetti teorici e limiti del linguaggio e della rappresentazione. Questo purtroppo è il vero motivo per cui tutti possono essere programmatori oggi e scrivere codici su codici seguendo semplicemente una banale documentazione. Ma non tutti possono costruire un prodotto informatico che sia mediamente affidabile e duraturo nel tempo-

Per saperne di più su come gestiscono i floating point i vari linguaggi, esiste un bellissimo sito che raccoglie una serie di esempi:

https://0.30000000000000004.com

Ci si può trovare per alcuni anche come gestire i calcoli in tutta sicurezza.

BY feed linuxpeople


Share with your friend now:
tgoop.com/linuxpeople_feed/2225

View MORE
Open in Telegram


Telegram News

Date: |

The initiatives announced by Perekopsky include monitoring the content in groups. According to the executive, posts identified as lacking context or as containing false information will be flagged as a potential source of disinformation. The content is then forwarded to Telegram's fact-checking channels for analysis and subsequent publication of verified information. There have been several contributions to the group with members posting voice notes of screaming, yelling, groaning, and wailing in different rhythms and pitches. Calling out the “degenerate” community or the crypto obsessives that engage in high-risk trading, Co-founder of NFT renting protocol Rentable World emiliano.eth shared this group on his Twitter. He wrote: “hey degen, are you stressed? Just let it out all out. Voice only tg channel for screaming”. How to create a business channel on Telegram? (Tutorial) How to Create a Private or Public Channel on Telegram? With the “Bear Market Screaming Therapy Group,” we’ve now transcended language.
from us


Telegram feed linuxpeople
FROM American