View Single Post
Old 29-05-2016, 16:32   #77
Vi7o
Member
 
Iscritto dal: Oct 2011
Messaggi: 147
Quote:
Originariamente inviato da GTKM Guarda i messaggi
Tra l'altro, a 'sto punto si dovrebbe dire pure che avresti ancora più efficienza se non dovessi passare attraverso il sistema operativo e caricare direttamente il programma in memoria. Anzi, meglio ancora se il programma fosse realizzato in hardware, pensa.
è quello che cerco di spiegare da un paio di giorni...

Quote:
Originariamente inviato da Bellaz89 Guarda i messaggi
Guarda. ti fo anche un esempio

supponiamo che si scrivano due programmi che fanno la stessa cosa. Uno in linguaggio macchina e uno in C

Il programma in C compilato ha un tempo di esecuzione di 2
Il programma in linguaggio macchina ha un tempo di esecuzione di 4

Supponiamo poi che il compilatore C impieghi tempo 4 a portare il sorgente C a rappresentazione binaria.

Allora secondo la tua definizione se eseguo i programmi e tengo conto del tempo di compilazione ho che

C = 2+4 = 6
Linguaggio macchina = 4

Quindi in questo caso il linguaggio macchina sarebbe piu' veloce, giusto?

Ora supponiamo di necessitare di usare lo stesso programma dieci volte. Allora:

C = 2*10 + 4 = 24
Linguaggio macchina = 4*10 = 40

Quindi se uso il programma dieci volte il programma C e' piu' veloce....

Ora non so te, ma una definizione di velocita' che dipende dal numero di volte che si usa un programma e' stupida e inutile e infatti non e' questa la definizione comunemente accettata
il discorso che farei io sarebbe questo
un programma tradotto da C ad esempio 1010
un programma pronto per la macchina 1010
eseguito 3 volte
1010
1010
1010
sono la stessa cosa in esecuzione?SI ma il codice in C l'ho compilato almeno una volta?SI

dal lato macchina, che ha fame, gli conviene ricevere subito la pappa(il binario) o attendere che la mamma gli prepari la compilazione?
Vi7o è offline   Rispondi citando il messaggio o parte di esso
 
1