Toni DTMF

« Older   Newer »
  Share  
view post Posted on 7/1/2020, 12:44
Avatar

Noioso

Group:
Professionisti
Posts:
403

Status:


in effetti, appena si inizia a lavorare con un MCU si ragiona così. poi passa :D :D
 
Top
view post Posted on 8/1/2020, 12:36
Avatar

Immane Rompiball

Group:
Administrator
Posts:
18,287
Location:
Orlo esterno della cintura di Orione stella 1957

Status:


No, non credo che "passi". Tutti i processori sono dispositivi seriali "fetch and execute". Meno ovviamente le grandi macchine parallele che o si sono estinte come i dinosauri o non basta un edificio per contenerli anche oggi.
Ci sono però, sistemi di programmazione, anche molto semplici, incredibilmente semplici, che possono far sembrare una macchina parallela a prezi assolutamente bassi. I PLC della serie 800 Allen Bradley costano pochissimo, fanno un sacco di cose, ovviamente non tutte insieme, ma è come se fosse così perchè i tempi di ritardo li vedi solo con un oscilloscopio e non si usa nè Pyton, nè Cobra, neppure Viper. Solo ad ogni cosa il suo... sistema di programmazione. Un pò come se per andare ogni giorno a lavoro usassimo uno Shuttle per far presto invece della bici o dei pattini a rotelle. Anche perchè ancora la legge sulle targhe per i pattini è ferma in parlamento. Non si decidono se ogni pattino deve averne una sua, se devono essere uguali o se la targa va apposta al deretano di chi li mette. Poi ci sarebbe l'assicurazione obbligatoria ed i massimali relativi. Quindi alla fine lo Shuttle sarebbe sempre più conveniente... ;)
 
Web  Top
view post Posted on 8/1/2020, 12:51
Avatar

Noioso

Group:
Professionisti
Posts:
403

Status:


concordo sullo shuttle :D

Per il parallelismo, il senso è appunto "quanto contemporaneo dev'essere, affinché sembri contemporaneo per l'uso che ne devi fare?"
fratello peraltro di "mi serve una CPU veloce!" - il senso è "veloce rispetto a che cosa devi fare"...

Sui PLC mi hai ricordato quando, agli albori della nostra ridente azienda (poi terminata quando laggente è invecchiata male...) , ci confrontavamo io da softwarista PC e un po' embedded (poco, allora) e il meccanico e l'elettricista da utenti di PLC. Io domandavo "quando vengono eseguite le righe del Ladder?" e loro rispondevano "sempre, in contemporanea!"
E io mi domandavo "come" fosse possibile... Poi, col tempo, ho colto il senso (peraltro scritto in qualche riga piccola delle specifiche dei PLC) ossia "il tempo di scansione globale" del diagramma ladder: 100mS forse nel 1992... poi ora magari 1mS ... ovviamente 100 bastava per farci delle macchine meccaniche o degli antifurti!
 
Top
view post Posted on 11/1/2020, 13:09
Avatar

Immane Rompiball

Group:
Administrator
Posts:
18,287
Location:
Orlo esterno della cintura di Orione stella 1957

Status:


Eh, caro mio, oggi anche i PLC sono stati deturpati. Una CPU contiene almeno dieci processori, uno per le comunicazioni, uno per ladder, uno per la gestione della macchina e dei processi, uno per lo sciacquone, uno per il controllo della temperatura ai poli, uno per portare il cane a fare i suoi bisogni, uno per fanculare la suocera... e così via. Poi alla fine c'è un qualcosa che insegue qualche bit in continuazione. Tutto questo per evitare di fare qualcosa di piccolo a prezzo abbordabile.
 
Web  Top
view post Posted on 11/1/2020, 13:12
Avatar

Noioso

Group:
Professionisti
Posts:
403

Status:


:D
tempo fa dissi

"ai tempi del 6502, INC X faceva quello, ossia incrementava il registro X. Tempo @1MHz: circa 2uS

Oggi
"l'interprete java (...) prima alloca qualche GB di RAM, poi fa il parsing del codice, trova INC X e si collega a qualche repository per sapere come si fa INC; poi la esegue e quindi fa una query su google per chiedergli "ehi, ma sei sicuro che il risultato sia davvero questo?" e poi forse prosegue con la prossima istruzione... Tempo @4GHz multicore: almeno un paio di secondi...
 
Top
view post Posted on 12/1/2020, 13:00
Avatar

Immane Rompiball

Group:
Administrator
Posts:
18,287
Location:
Orlo esterno della cintura di Orione stella 1957

Status:


Bello. Si, ma la cosa peggiore è che per eseguire una istruzione a livello macchina tipo load A, in 8080 o z80 è il semplice codide hex 3A. La metti in rom ed il processore fa quello in qualche decina di nanosecondi. "NANOSECONDI" e basta, senza avere compilatori, assemblatori collocatori, librerie e passaggi che ti portano via qualche ora a te qualche giga di ram, qualche giga di disco e alla fine tutto va in malora. La "malora" è la cosa peggiore di tutto il discorso. ;)
 
Web  Top
view post Posted on 12/1/2020, 17:43
Avatar

Rompiball

Group:
Appassionati
Posts:
2,612
Location:
briansa

Status:


CITAZIONE
Bello. Si, ma la cosa peggiore è che per eseguire una istruzione a livello macchina tipo load A, in 8080 o z80 è il semplice codide hex 3A. La metti in rom ed il processore fa quello in qualche decina di nanosecondi. "NANOSECONDI" e basta, senza avere compilatori, assemblatori collocatori, librerie e passaggi che ti portano via qualche ora a te qualche giga di ram, qualche giga di disco e alla fine tutto va in malora. La "malora" è la cosa peggiore di tutto il discorso. ;)

è un argomento complesso, e io da semplice operaio non posso capire molto, ma cerco a mio modo, giusto
per il piacere di conversare, di dire la mia:
Credo che sia errato vedere la nuove tecnologie come lente, macchinose, che per fare le cose che si facevano 30 anni fa
, ora si debba fare un giro pindarico infinito.
Non sono del ramo, ma penso che i processori, o i processi dove è richiesta velocità pura, siano ancora molto spartani,
che il tutto venga prevalentemente affidato alla parte hardware no?
Del resto quello che abbiamo oggi, non so, penso a grafiche di videogames paurose, non lo avevamo 10 anni fa.
Quindi penso che i frutti ci siano eccome.
Secondo me, è che in nuovi linguaggi, le nuove tecnologie, cercano di astrarre a un livello sempre più alto, sempre più vicino all'uomo. E tutto ciò ha un prezzo: molto più semplice, ma molto più lento.
Se vogliamo guardare, si è inventato l'assembly, per rendere più umano 1000111100 (binario), che però è
più lento, il C per ridurre i casini dell'assembly, il python, ruby ecc...per ridurre il C.
Tutto però apparentemente è più lento. Un programma Python può girare 20 o 30 volte più lento dell' equivalente C.
Un male ? Non sempre, si può ricorrere al C se serve, ma la la lentezza è ampiamente ripagata da uno sviluppo molto
più veloce , meno errori, meno sintassi, più tempo da dedicare alla logica piuttosto che alle grane del linguaggio,
meno righe di codice ecc...

In python (ma lo stesso vale c---->assembly), puoi fare strutture dati che in C vai alla neuro, in poco tempo.
è vero, nasconde molte cose, che sarebbe bene sapere (puntatori, malloc, free...ecc non saprai mai cosa sono)
Ma l'astrazione è talmente alta ed efficiente che a mio avviso merita il prezzo.
A pensarci bene l'uomo cerca di astrarre tutto: i numeri, noi li abbiamo immaginati così:1,2,3, è una nostra rappresentazione , ma chi ci dice che siano davvero così? Magari sono un qualcosa che noi non possiamo immaginare, e magari manipolati nella loro natura sconosciuta sarebbe più veloce fare i calcoli (stesso di 100001111 vs Assembly)
ma noi ce ne freghiamo: 'paghiamo un piccolo prezzo a patto della semplicità e chiarezza.
Bhò... forse vado fuori tema.... :D
 
Top
view post Posted on 12/1/2020, 18:06
Avatar

Noioso

Group:
Professionisti
Posts:
403

Status:


No no credo che tu stia dicendo una cosa giusta: ma forse il punto è "usare male" tecnologia che possono favorire "l'essere usate male".

Cioè, è bella l'astrazione ed è lecito pagare un costo in termini di prestazioni pur di lavorare più facilmente e "astraendosi": ma certe cose che si vedono in giro sono ORRIBILI, ossia sprecone, malfatte ecc
 
Top
view post Posted on 12/1/2020, 18:14
Avatar

Rompiball

Group:
Appassionati
Posts:
2,612
Location:
briansa

Status:


CITAZIONE
Cioè, è bella l'astrazione ed è lecito pagare un costo in termini di prestazioni pur di lavorare più facilmente e "astraendosi": ma certe cose che si vedono in giro sono ORRIBILI, ossia sprecone, malfatte ecc

Essendo voi (tu, Robo,Law ecc...) dentro a queste cose, posso solo credervi, e immagino.
Forse anni addietro c'era più rigore e anche passione per l'elettronica\informatica.
Non so si vedono laureandi su certi forum, che non ne vengono fuori da printf() ...bho.
Io credo che per fare certi lavori, oltre che esserci tagliato, ti devono appassionare, se no, lascia perdere.
Chi ha il pane non ha i denti e viceversa...potessi io avere lavori del genere mannaggia!!!!
 
Top
view post Posted on 12/1/2020, 18:23
Avatar

Noioso

Group:
Professionisti
Posts:
403

Status:


:) Sicuramente anche il discorso "passione" conta, conta sempre, in ogni settore. E, come si sa, l'informatica ti permette di lavorare "a costi zero" (un PC e via) e così i "cialtroni" si moltiplicano...

Cmq io di esempi molto concreti ne avrei tanti: da Mozilla Thunderbird (client di posta) che negli ultimi anni occupa sempre più memoria e ogni 3-4 giorni devo chiuderlo e riaprirlo (ho il PC della domotica sempre acceso e così...) a Firefox (ma credo pure Chrome) che NON SONO multitasking e se apri più Tab o Finestre e una va piano... si rallenta tutto... (peggio che con Windows 3 :) ) ... e poi ancora...
 
Top
view post Posted on 12/1/2020, 20:31
Avatar

Rompiball

Group:
Appassionati
Posts:
2,612
Location:
briansa

Status:


Se proprio vogliamo dirla tutta, a mio modo di vedere, i nuovi linguaggi, essendo più semplici, invogliano ancora di più
i cialtroni.
Con poche pagine di manuale, fai quello che magari in assembler dovevi romperti la testa, facendoti credere (erroneamente) di esser un buon programmatore...cosa più lontana dal vero.
Siamo ampiamente OT sui toni dtmf...va bhè pazienza.
Come dicevo, i linguaggi ad alto livello, paradossalmente sono ancora più insidiosi. Faccio un esempio.
tempo fa scrivevo il crivello di Eratostene o il problema di Giuseppe Flavio (non ricordo) in python.
ebbene, con 2 righe, avendo a disposizione oggetti precostituiti molto potenti, ho risolto.
Risultato ? Un programma da schifo!!!
Avendo un piccolo bagaglio amatoriale In C, ho riscritto adottando un'altra logica e allontanandomi dalle lusinghe di pochi sforzi del Python, ed è migliorato di parecchi fattori.
Tutto questo per dire, che la cialtroneria potrebbe addirittura aumentare, in virtù appunto delle facili promesse di alcuni linguaggi. Poi ovvio a certi livelli penso che ti facciano "il culo a strisce" se solo usi una variabile non necessaria, non facciamo tutto di un erba un fascio dai...
 
Top
view post Posted on 12/1/2020, 20:45
Avatar

Noioso

Group:
Professionisti
Posts:
403

Status:


Esatto, siamo d'accordo. Ma... il culo a strisce su un programma che non libera la memoria allocata (anzi!) credo che lo farebbero il primo giorno di lavoro!!! E' per quello che io sono scandalizzato
 
Top
view post Posted on 15/1/2020, 20:01
Avatar

Immane Rompiball

Group:
Administrator
Posts:
18,287
Location:
Orlo esterno della cintura di Orione stella 1957

Status:


... le "palline rimbalzanti" per esempio...
Grande delucidazione del Pomodore 64... :o:
 
Web  Top
102 replies since 29/4/2018, 08:38   907 views
  Share