La stessa tecnologia si applica anche ai linguaggi di programmazione.
Il C ha aperto la strada al C++ che è stato superato dal C#. Comunque,
è venuto il tempo di un completo cambio di paradigma nella
programmazione. Propongo una migrazione di fatto verso un linguaggio
relativamente recente ma promettente, conosciuto come assembly.
La maggior parte di voi non è probabilmente familiare con questo
linguaggio. Io stesso mi sono imbattuto per caso in questo linguaggio
completando il mio MCSE. Allora consentitemi di dirvi qualcosa di più
su questo linguaggio.
C++ e Java non consentono al programmatore di accedere direttamente
all'hardware. Invece, compilano un "bytecode" che viene poi
interpretato da una macchina virtuale. Anche se molto portabili,
questo limita la velocità dei programmi C++ e Java.
L'Assembly, comunque, è stato progettato per consentire al
programmatore *l'accesso diretto* all'hardware! Questo consente
programmi *molto* più veloci.
Inoltre, l'assembly è lo stesso linguaggio "parlato" dai computers.
Per questo motivo, potreste vedere l'assembly riferito come "codice
macchina".
Temo che senza il supporto di una grande società (come Microsoft ha
spinto Java, o come Sun ha supportato C#) l'assembly rimarrà un
linguaggio di nicchia, come molti altri interessanti linguaggi (penso
a Python).
Perciò spero di iniziare un movimento di base per supportare
l'assembly. Mi piacerebbe vedere la FSF rilasciare un compilatore
assembly basato su GNU (anche se possono risparmiarsi i bugs che hanno
infestato la release 3.0 di gcc costringendo molti utenti a passare a
Visual Studio per la loro programmazione Linux).
Mi piacerebbe esporvi la superiorità dell'assembly sul C++/Java ma
sono in ritardo per la mia classe "Introduzione al TCP/IP". Quelli di
voi familiari con l'assembly, per favore educate i tanti utenti
ignoranti C/C++/Java sulla gloria di questo superiore linguaggio.
??
??
Sono del tuo stesso parere per quanto hai detto sull'assembly,
è forse il "piu' bel linguaggio" ,come tu affermi.
ma il punto, secondo me, è che è troppo a basso livello per essere
utilizzabile e produttivo;
basti persare quanto tempo ci vorrebbe per scrivere una applicazione lato
server che deve monitorare una
rete e gestirla...ma anche semplicemente prova a pensare quanto tempo ci
vorrebbe a scrivere e soprattutto a
pensare un algoritmo in assembly per un applicazione office o gestionale.
Io penso che sia assurdo scrivere un programma di 100000 righe,
quando con un linguaggio ad alto livello, come java o C++ ...ma anche
l'ostico C, se ne possono scrivere
solamente un quarto o anche di meno.
Chi ci sta a tornare a utilizzare le schede perforate??? ;)
Stefano.
ROTFL!!!!
Sono dei messaggi palesemente provocatori!
Stanno girando da qualche tempo nei NG. Addirittura uno asseriva che il C è
derviato dal C++!!!
Martino.
>Mi piacerebbe vedere la FSF rilasciare un compilatore
> assembly basato su GNU
as o gas, se non ricordo male.
> L'Assembly, comunque, è stato progettato per consentire al
> programmatore *l'accesso diretto* all'hardware!
L'assembly è stato progettato perché non c'era nient'altro di più semplice x
programmare, poi è nato c, e così via. L'evoluzione, finora, è stata verso
un'astrazione dalla macchina, non viceversa.
>(come Microsoft ha
> spinto Java, o come Sun ha supportato C#)
Gulp?!?
> (anche se possono risparmiarsi i bugs che hanno
> infestato la release 3.0 di gcc costringendo molti utenti a passare a
> Visual Studio per la loro programmazione Linux).
Davvero? Questa cosa mi stupisce tantissimo.
> Mi piacerebbe esporvi la superiorità dell'assembly sul C++/Java ma
> sono in ritardo per la mia classe "Introduzione al TCP/IP".
Superiorità in fatto di prestazioni, non c'è bisogno che ce le racconti...
Per il resto è tutto da vedere.
> voi familiari con l'assembly, per favore educate i tanti utenti
> ignoranti C/C++/Java sulla gloria di questo superiore linguaggio.
Educaci tu.
Io direi.. ma che programmiamo a fare a oggetti, bypassiamo l'assembly e
torniamo direttamente alla microprogrammazione a suon di bit sul silicio.
Ciao!
Luigi
> Il C ha aperto la strada al C++ che è stato superato dal C#.
> C++ e Java non consentono al programmatore di accedere direttamente
> all'hardware. Invece, compilano un "bytecode" che viene poi
> interpretato da una macchina virtuale. Anche se molto portabili,
> questo limita la velocità dei programmi C++ e Java.
> Temo che senza il supporto di una grande società (come Microsoft ha
> spinto Java, o come Sun ha supportato C#)
> costringendo molti utenti a passare a
> Visual Studio per la loro programmazione Linux).
> per favore educate i tanti utenti
> ignoranti C/C++/Java sulla gloria di questo superiore linguaggio.
non ascoltate il troll...
si commenta da solo
*plonk*
~~
artemis.alpeia
Salutoni
Cieli Sereni
P.S.
Sappiate che chi ha il nick Cielo Sereno non sono
io ;-).
"Stefano Pizzamiglio" <ste....@libero.it> ha scritto nel messaggio
news:SYV_8.17053$GV2.4...@twister2.libero.it...
Ma la finiamo di scrivere cazzate???
Non abbiamo altro da fare ehh?
Quindi siate anke voi un pò + riflessivi prima di etichettare ki solleva
questioni così importanti.... forse sbagliando ahimè anke la sede di tale
discussione!!
Grandaal <gran...@libero.it> wrote in message 3D3C7C0B...@libero.it...
Già perché adesso i giochi su playstation 2 li fanno in assembly...
Non credere che per ottimizzare un programma servi a qualcosa portarlo da C
all'assembly. Se invece il tuo programma è scritto male, sarà lento anche se
lo stampi su un circuito.
Io direi dal CD-RW.
> Il modem acustico eventualmente è stato sostituito dal modem DSL.
Hai fatto bene a mettere "eventualmente"!
> Unix è stato superato da Windows XP. E così via.
Più che superato direi affiancato.
Sono due s.o. ben diversi, ognuno con punti di forza e punti deboli.
> La stessa tecnologia si applica anche ai linguaggi di programmazione.
> Il C ha aperto la strada al C++ che è stato superato dal C#.
Uh???
> Comunque, è venuto il tempo di un completo cambio di paradigma nella
> programmazione. Propongo una migrazione di fatto verso un linguaggio
> relativamente recente ma promettente, conosciuto come assembly.
Oh cacchio, ho capito troppo tardi che è uno scherzo :-p
> La maggior parte di voi non è probabilmente familiare con questo
> linguaggio. Io stesso mi sono imbattuto per caso in questo linguaggio
> completando il mio MCSE. Allora consentitemi di dirvi qualcosa di più
> su questo linguaggio.
> C++ e Java non consentono al programmatore di accedere direttamente
> all'hardware. Invece, compilano un "bytecode" che viene poi interpretato
da una macchina virtuale.
Anche il C++???
Non mi sembra proprio.
> Anche se molto portabili,
> questo limita la velocità dei programmi C++ e Java.
>
> L'Assembly, comunque, è stato progettato per consentire al
> programmatore *l'accesso diretto* all'hardware! Questo consente
> programmi *molto* più veloci.
> Inoltre, l'assembly è lo stesso linguaggio "parlato" dai computers.
No, i computer "parlano" direttamente in binario.
> Per questo motivo, potreste vedere l'assembly riferito come "codice
> macchina".
>
> Temo che senza il supporto di una grande società (come Microsoft ha
> spinto Java, o come Sun ha supportato C#)
:-)
> l'assembly rimarrà un linguaggio di nicchia, come molti altri interessanti
linguaggi (penso
> a Python).
> Perciò spero di iniziare un movimento di base per supportare
> l'assembly. Mi piacerebbe vedere la FSF rilasciare un compilatore
> assembly
In questo caso "compilatore" mi pare inappropriato.
> basato su GNU (anche se possono risparmiarsi i bugs che hanno
> infestato la release 3.0 di gcc costringendo molti utenti a passare a
> Visual Studio per la loro programmazione Linux).
>
> Mi piacerebbe esporvi la superiorità dell'assembly sul C++/Java ma
> sono in ritardo per la mia classe "Introduzione al TCP/IP". Quelli di
> voi familiari con l'assembly, per favore educate i tanti utenti
> ignoranti C/C++/Java sulla gloria di questo superiore linguaggio.
Io conosco solo l'ASM68k, va bene lo stesso? :-)
Credo che in questo discorso entrino in gioco molte più cose che il
linguaggio di programmazione.... magari anche le tecniche di
programmazione e la velocità di sviluppo... cose che poi hanno un
grosso impatto nelle performance.
Quindi non credo che se si "tornasse" alla programmazione in Assembler
si riesca ad avere miglioramenti... la velocità non è tutto, magari
pensare alla robustezza, manutenibilità del codice, debug veloce,
facilità di adattare stesse soluzioni a più problemi ....
>
> Quindi siate anke voi un pò + riflessivi prima di etichettare ki solleva
> questioni così importanti.... forse sbagliando ahimè anke la sede di tale
> discussione!!
>
Ma francamente sembrava che non avesse mai sentito parlare
dell'Assembler (magari ho frainteso) e che quindi non conoscesse molto
l'argomento....
Dire che l'Assembly sarà il futuro è come dire "i piedi saranno il
futuro delle automobili"... magari ha ragione e forse sarebbe anche
tutto migliore ma non credo che sia una affermazione corretta.
e qui mi sono fermato...no comment....
raffaele
>> paura il giochino 3D va a scatti e invece lo stesso gioco su 1 console
>
>Già perché adesso i giochi su playstation 2 li fanno in assembly...
OT (e ovviamente fermo restando che il posting originale
era una vaccata)... comunque... Esatto !!! :)
Fonti bene informate (un mio ex-collega che ora si guadagna
il sushi con coding PS2) mi dicono che parti non trascurabili
dei giochi PS2 sono proprio scritte in assembly (e se non
ho capito male su due colonne ! ;) )
La percentuale di assembler usata su PS2 e' decisamente piu'
alta di quella per la PS1 ... i motivi sono legati a come e'
strutturato l'hardware della PS2 dove e' possibile sfruttare
parallelismo in punti importanti (a patto di avere un controllo
totale di quali istruzioni macchina vengono eseguite).
>Non credere che per ottimizzare un programma servi a qualcosa portarlo da C
>all'assembly. Se invece il tuo programma è scritto male, sarà lento anche se
>lo stampi su un circuito.
E se lo scrivi bene in C++ allora scrivendolo bene in
assembler puoi guadagnare ancora qualcosa. Se si tratta
di parti dove viene speso gran parte del tempo di
elaborazione e' un passaggio che puo' valer la pena
fare. YMMV, ovviamente.
Anche su PC, quando mi occupavo di grafica realtime,
sono riuscito a spremere un po' di FPS in piu' grazie
alla scrittura di qualche migliaio di righe assembler;
il discorso PC e' pero' piu' complesso (non esiste "il"
PC, ma una infinita' di PC diversi e ottimizzare per
uno puo' significare peggiorare per un altro).
Sebbene io condivida che l'ottimizzazione precoce sia
qualcosa da evitare, io sono anche convinto che scrivere
codice inefficiente senza preoccuparsi e puntando
solo ad arrivare in fondo non sia la perfezione e
anche che sperare che qualcun altro (es. il compilatore)
faccia sempre ed esattamente quello che serve a me
nel modo migliore possibile e' utopistico.
Se non serve avere il massimo allora forse non vale la
pena sbattersi tanto... ma se serve ...
Considera anche che quando scrivi un gioco per PS2 non
puoi sperare che nel giro di qualche mese la velocita'
della PS2 raddoppi :DD
Andrea
ti faccio notare che l'assembler non e' "stato inventato", e' solo una
traduzione (o poco piu') delle istruzioni binarie della macchina.
Ti faccio notare anche che l'ottimizzazione che puo' fare un buon
compilatore in un paio di ore di calcoli, tu, per farla in asm ci
metteresti dei mesi.
hai mai provato a programmare in assembler? hai mai fatto confronti col
lavoro fatto ad alto livello (C++ per esempio)? con questo intendo dire
qualcosa piu' di "hello world"... scrivere programmi di grosse dimensioni
in assembler sara' pure efficiente in fase di esecuzione (pure questo e'
tutto da dimostrare, secondo me un buon compilatore gestisce molto meglio
la situazione...), ma richiede una mole infinita di lavoro. e poi se cambio
processore? che faccio? riscrivo tutto da capo?
torna a giocare coi soldatini, e' meglio...
>L'informatica è un campo in rapida evoluzione.
Vero!!!
> Quello che ieri era all'avanguardia oggi è completamente obsoleto.
vero!!!
>Tecnologie sempre più efficienti vengono sviluppate.
Ottimo! sembra l'inizio di un tema che feci al liceo un paio d'anni fa! (non presi più di 6/6,5)
> Unix è stato superato da Windows XP. E così via.
???
> Propongo una migrazione di fatto verso un linguaggio relativamente recente ma promettente, conosciuto come assembly.
a me, ignorante programmatore java sembra che l'assembly non sia un liguaggio cosi tanto recente,
anzi!
>La maggior parte di voi non è probabilmente familiare con questo
>linguaggio. Io stesso mi sono imbattuto per caso in questo linguaggio
>completando il mio MCSE.
ti sei imbattuto per caso nell'assembly! e dai dell'ignorante a me che conoscevo la sua esistenza
(anche senza saperlo usare) da quando avevo 14 anni!
>C++ e Java non consentono al programmatore di accedere direttamente
>all'hardware. Invece, compilano un "bytecode" che viene poi
>interpretato da una macchina virtuale. Anche se molto portabili,
>questo limita la velocità dei programmi C++ e Java.
ha.... anche il c++ è un linguaggio interpretato?
sempre ignorantemente parlando non mi risulta
>Inoltre, l'assembly è lo stesso linguaggio "parlato" dai computers.
>Per questo motivo, potreste vedere l'assembly riferito come "codice
>macchina".
no ciccio, il computer parla + o - così 1011001001110 (si chiama codice binario)
>Temo che senza il supporto di una grande società (come Microsoft ha
>spinto Java, o come Sun ha supportato C#)
o caspita! mandategli un'ambulanza!
>Mi piacerebbe esporvi la superiorità dell'assembly sul C++/Java ma
>sono in ritardo per la mia classe "Introduzione al TCP/IP". Quelli di
>voi familiari con l'assembly, per favore educate i tanti utenti
>ignoranti C/C++/Java sulla gloria di questo superiore linguaggio.
bella conclusione per uno splendido post...
va be! il modo è bello perchè è vario, ma forse è vero che sta scherzando...
scusa, ti dispiacerebbe mandarci una conferma o una smentita(del fatto che tu stia scherzando)?
Carlo
-----------------------------------------------------
Ci sono cose che non si possono interrompere.
La consapevolezza che i sogni della gente sopravviveranno al passaggio da un'epoca all'altra
è qualcosa che durerà per sempre finchè la gente avrà sete di libertà.
-Il re dei pirati Gold Roger-
-----------------------------------------------------
togli NOSPAM per rispondere via e-mail
Ma perdonami ... Assembly ... xchè sostituirà C++ e Java ? Ma che
c'entra ? Che razza si subject è ?????????
In article <br9ojug1puljkb640...@4ax.com>, b...@boh.com
says...
Il modem
> Unix è stato
> superato da Windows XP. E così via.
Già qui secondo me .. l'oppio che ti sei fumato inizia a farti effetto ?
Non voglio aprire dibatti su Windows Vs Linux o Unix o Mac o quello che
vuoi .. ma come fai ad affermare na cosa di questo genere =
> La stessa tecnologia si applica anche ai linguaggi di programmazione.
> Il C ha aperto la strada al C++ che è stato superato dal C#. Comunque,
> è venuto il tempo di un completo cambio di paradigma nella
> programmazione. Propongo una migrazione di fatto verso un linguaggio
> relativamente recente ma promettente, conosciuto come assembly.
Mea culpa .. non ho ancora mai aperto .net ... caccio .. come sono
obsoleto !
Giuro che ci son rimasto male quando ho scoperto che C# ha superato C++!
Ma .... come è successo ?
E poi.... L'ASSEMBLY E' RECENTEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE???
Eccoci ... quell'unico neurone che fin qui ti aveva sequito in questa
inutile avventura se ne è andato ! In bocca al lupo figliolo, ora
prosegui da solo !
> L'Assembly, comunque, è stato progettato per consentire al
> programmatore *l'accesso diretto* all'hardware! Questo consente
> programmi *molto* più veloci.
> Inoltre, l'assembly è lo stesso linguaggio "parlato" dai computers.
> Per questo motivo, potreste vedere l'assembly riferito come "codice
> macchina".
Infatti ! Hai proprio ragione ! Da domani scriveremo tutto in assembly!
Masssiiiii! Ma che ce frega ! Il gestionalino che sto scrivendo ora .. a
cosa serve ??????? Da domani ASSEMBLY! File di Testo sequenziale!
Terminale a caratteri .... ed il meno numero possibile di controlli !
DB relazionale ??? BLEAHHHHH! Che roba è ? OBSOLETO! E' scritto in C!
FILE DI TESTO SEQUENZIALE !
Ma vuoi mettere come lo scrivo in fretta un bel file di testo avendo
l'accesso diretto al disco?
> Temo che senza il supporto di una grande società (come Microsoft ha
> spinto Java, o come Sun ha supportato C#) l'assembly rimarrà un
> linguaggio di nicchia, come molti altri interessanti linguaggi (penso
> a Python).
In effetti si ! Python <-> Assembly .. beh si ! Il confronto regge!
Siamo li !
> Perciò spero di iniziare un movimento di base per supportare
> l'assembly. Mi piacerebbe vedere la FSF rilasciare un compilatore
> assembly basato su GNU (anche se possono risparmiarsi i bugs che hanno
> infestato la release 3.0 di gcc costringendo molti utenti a passare a
> Visual Studio per la loro programmazione Linux).
Mi sono perso ! Spettate un attimo ! Han fatto visual studio per Linux ?
Cacchio! Ma son proprio obsoleto ! Ora vado avanti a leggere .. magari
scopro che c'è Microsoft Linux 8.2 completamente bug free!
> Mi piacerebbe esporvi la superiorità dell'assembly sul C++/Java ma
> sono in ritardo per la mia classe "Introduzione al TCP/IP". Quelli di
> voi familiari con l'assembly, per favore educate i tanti utenti
> ignoranti C/C++/Java sulla gloria di questo superiore linguaggio.
ehehehehheheh :) Il finale mi piace ! Sembra un pò .. non so il finale
del signore degli anelli !
Sapete quelli che lasciano il discorso in sospeso perchè ci sarà
sicuramente un continuo ???
Fantastico !
DIFFONDETE IL VERBO! ASSEMBLY E' IL NOSTRO SIGNORE !
PER FAVOREEEEEE DILLO CHE STAI SCHERZANDO! LIBERACI DA QUESTO PESO!
PER FAVORE!
Non è che ti chiami Luca Panerai vero ?
> Credo che in questo discorso entrino in gioco molte più cose che il
> linguaggio di programmazione.... magari anche le tecniche di
> programmazione e la velocità di sviluppo... cose che poi hanno un
> grosso impatto nelle performance.
[Domanda ingenua]
Ma, tolte tutte le difficolta' e problematiche dell'assembler, un *ottimo*
programma scritto in C o C++ va veloce come un *ottimo* programma scritto
in Assembler?
--
La speranza e' l'ultima a morire. Ma muore.
Albè
<b...@boh.com> ha scritto nel messaggio
news:br9ojug1puljkb640...@4ax.com...
> Sembra un pò .. non so il finale del signore degli anelli !
> Sapete quelli che lasciano il discorso in sospeso perchè ci sarà
> sicuramente un continuo ???
Il Signore degli Anelli ha un finale. Muoiono tutti, tranne coloro che si
imbarcano per le Terre Imperiture, con tanto di date. Non direi che lascia
molte cose in sospeso, anzi.
Ciao,
Stefano
----------
"X WindowSSS, teSSSoro mio... lo odieremo per SSSempre"
Bill Gollum
----------