Page 107 of 110

Re: Curiosità ferroviarie

PostPosted: Thu 02 May 2019; 19:54
by Carrelli1928
Da un regolamento ferroviario svizzero, a proposito di un dispositivo simile al nostro BCA:

SBB CFF FFS wrote:Zugvorbereitung - 4.7.4 - Um das ungewollte Freimelden von Streckenabschnitten durch das Ruckstellen der Achszahler auf Null und dadurch Zugsgefahrdungen zu vermeiden, darf die effektive Gesamtachszahl eines Zuges nicht 256 Achsen betragen.


Ossia: per evitare accidentali liberazioni delle sezioni di blocco causate da un azzeramento del numero di assi contati, i treni non possono avere 256 assi.

A qualcuno ricorda qualcosa questo numero? Image

Re: Curiosità ferroviarie

PostPosted: Fri 03 May 2019; 10:58
by Lucio Chiappetti
FF

Re: Curiosità ferroviarie

PostPosted: Fri 03 May 2019; 11:39
by Carrelli1928
Proprio così! Image

Re: Curiosità ferroviarie

PostPosted: Fri 03 May 2019; 14:21
by fra74
Non per fare il pignolo ma FF = 255 :P

Re: Curiosità ferroviarie

PostPosted: Fri 03 May 2019; 14:29
by Carrelli1928
Già. E 256 = 00

Re: Curiosità ferroviarie

PostPosted: Sun 05 May 2019; 19:31
by skeggia65
In linguaggio commestibile?

Re: Curiosità ferroviarie

PostPosted: Sun 05 May 2019; 20:00
by Carrelli1928
La memoria dei computer è come se fosse fatta di tante torte, ciascuna composta da 8 fette.
Ogni fetta, però, ha un peso diverso: la prima fetta pesa appena 1 grammo, la seconda 2 grammi, la terza 4, la quarta 8 e così via. In pratica, ogni fetta pesa 2^n grammi (dove n identifica la fetta e va da 0 a 7, perché le fette sono 8 e si conta a partire dallo 0).
Ciascuna torta pesa quindi 2^0 + 2^1 + ... + 2^6 + 2^7 grammi, per un totale di 255 g.
Se voglio, che so, 100 grammi di torta, metto nel piatto una fetta da 2^6 g, una da 2^5 g, una da 2^2 g (ossia la settima, la sesta e la terza fetta - ricorda, la prima fetta vale 2^0).

Se vuoi più di 255 grammi di torta, un piatto non basta. C'è una buona notizia: in ciascun piatto, le fette pesano 2^8 volte quelle del piatto precedente, per cui possiamo ottenere fino a 2^0 + ... + 2^7 + 2^(0+8) + ... + 2^(7+8) = 65535 grammi di torta in totale con due piatti (il peso massimo vale 2^(p*8) - 1, dove p è il numero di piatti).
Dunque, se volessimo 256 grammi di torta, ossia 2^8 g, ci basterebbe avere il primo piatto vuoto ed il secondo piatto con la prima fetta.

Per cui, quando si hanno esattamente 256 assi, il sistema tenta di assegnare un piatto vuoto per il primo piatto e la prima fetta di torta al secondo piatto.
Il problema è che i circuiti usati nel BCA svizzero assegnano un solo piatto a ciascuna sezione di blocco.
Il risultato è quindi che il sistema è convinto di aver correttamente registrato il numero di assi come 2^(0+8) (ricorda che lo 0 è la prima fetta e l'otto moltiplicato per 1 indica il secondo piatto), ma in realtà, alla fine, si ha soltanto un piatto vuoto, essendo il piatto numero due inesistente.
Il che corrisponde a zero assi.
Abbiamo un binario ferroviario fisicamente occupato ma registrato come libero.

Per inciso, i piatti si chiamano byte, ciascuna fetta si chiama bit.


Forse le torte appesantiscono la spiegazione, fammi sapere se ti ho solo confuso che cerco di essere più tecnico.

Re: Curiosità ferroviarie

PostPosted: Mon 06 May 2019; 0:28
by skeggia65
Abbastanza chiaro.
I computer sono stupidi.
Sanno contare solo fino a 255.

Re: Curiosità ferroviarie

PostPosted: Mon 06 May 2019; 6:49
by Carrelli1928
Ecco, diciamo che è come se io ti dicessi di contare dandoti solo 8 cifre a disposizione.

Re: Curiosità ferroviarie

PostPosted: Mon 06 May 2019; 14:16
by skeggia65
Ma anche con otto cifre a disposizione puoi contare fino a infinito.

Re: Curiosità ferroviarie

PostPosted: Mon 06 May 2019; 15:04
by Lucio Chiappetti
Uh ? C'era giusto un bel tutorial ieri sera su Rai Scuola verso le 22:30...

Con 8 posizioni decimali (le cifre decimali sono sempre 0123456789) posso contare da 0 (per essere precisi 00000000) a 99999999, cioe' 10^8-1
Con 8 posizioni binarie (con due cifre 0 e 1) posso contare da 0 a 2^8-1, ossia appunto 255
(con 2 posizioni esadecimali (cioe' le cifre 0123456789ABCDEF) posso pure contare da 0 a FF che e' appunto 255)

La distinzione tra numeri interi e reali e' fondamentale, non solo quella "matematica", ma quella "operativa" (infatti dovrei dire tra integer e floating point). Con 16 bit potrei contare solo da 0 a 65535 ... di fatto siccome di solito si usano solo 15 bit e uno per il segno, da -32767 a 32768), con 32 bit segnati a 2147483648. Se gli stessi 32 bit si usano per un floating point (aka REAL*4), alcuni bit sono riservati per l'esponente e altri per la mantissa, per cui si puo' coprire un range da qualche 10^-39 a qualche 10^39 ma con sole 6-7 cifre significative (ed infatti la DOUBLE PRECISION, aka double, usa 64 bit, ma non e' una precisione infinita). Diciamo che se uno deve risolvere il vecchio problema del bramino inventore degli scacchi che aveva chiesto in premio un chicco di riso sulla prima casella della scacchiera, due sulla seconda, quattro sulla terza e via raddoppiando ... e vuole risolverlo con tutte le cifre significative (non solo l'ordine di grandezza) non puo' farlo con i normali numeri interi della maggior parte dei linguaggi di programmazione, ma deve costruirsi un algoritmo euristico che sostanzialmente emula l'addizione in colonna col riporto ... uno dei primi esercizi che avevo fatto al corso di macchine calcolatrici negli anni '70 (con le schede perforate su un Univac 1106 ... che era pur una macchina a 36 bit !!)

Re: Curiosità ferroviarie

PostPosted: Mon 06 May 2019; 16:09
by Carrelli1928
@skeggia: no; i computer, de facto, operano soltanto con numeri naturali.
Tant’è che le CPU non sanno nemmeno cosa sia una sottrazione.

Esistono poi dei “giochetti” matematici con cui si può operare sui numeri interi anche negativi (complemento a 2) e persino sui decimali (numeri a virgola mobile). Ma con un byte esistono sempre e solo 256 combinazioni possibili, così come con tre cifre decimali ne esistono sempre e solo 1000.

Re: Curiosità ferroviarie

PostPosted: Mon 06 May 2019; 17:36
by fra74

Re: Curiosità ferroviarie

PostPosted: Mon 06 May 2019; 17:42
by Carrelli1928
Quando i numeri vengono "messi assieme", mi risulta si faccia una somma.
Non è così che funziona il complemento a 2?

Re: Curiosità ferroviarie

PostPosted: Mon 06 May 2019; 17:46
by fra74
Certo ma da lì a dire che le CPU non sappiano cosa sia una sottrazione quando la sottrazione è presente nel set di istruzioni dell'8086 (progettato nel 1978) è piuttosto bizzarro...
E per altro se vogliamo fare i pignoli fino in fondo a livello elettronico non esiste neppure la somma, tutto si riduce ad opportune combinazioni di porte logiche

Un half adder non è altro che una combinazione di una porta AND e una XOR, con due half adder si riesce a gestire la somma di due bit con tanto di gestione del riporto di una somma precedente e restitiyuzione del nuovo riporto... una serie in cascata di full adder permette di gestire in cascata somme tra interi a più bit

https://it.wikipedia.org/wiki/Half-adder

P.S: quanto fa per un computer con numeri reali in virgola mobile 1 - (0,1+0,1+0,1+0,1+0,1+0,1+0,1+0,1+0,1+0,1)? :P

Comunque stiamo andando paurosamente OT