hilpers


  hilpers > comp.lang.* > comp.lang.pascal

 #1  
19.11.2008, 19:53
c
una domanda
dato questi frammenti
i:integer
max:integer
....
....
i:=1;
while i < max do
begin
i:=i+1:
end;
oppure
while i < max do
begin
inc(i);
end;

quale dei due è migliore?
saluti e
grazie
Claudio
 #2  
19.11.2008, 20:11
Il Razziatore
c ha scritto:
> una domanda
> i:=i+1:
> oppure
> inc(i);
> quale dei due è migliore?


Sul freepascal non so, ma sul turbo pascal è meglio la seconda inc( i );

E' più ottimizzata visto che viene tradotta in questo modo:

INC WORD PTR [ PROGRAM.I ] { FF06XXXX = 4 byte }

mentre i := i + 1 viene tradotto come:

MOV AX, [ PROGRAM.I ] { A1XXXX = 3 byte }
INC AX { 40 = 1 byte }
MOV [ PROGRAM.I ], AX { A3XXXX = 3 byte, per un totale di 7 byte }

ripeto che non so come "compila" il FreePascal :)
Discussioni simili
Delphi vs. FreePascal

Immaginiamo che io andassi a comprarmi un manuale su Delphi. Quanto di quello che imparo mi torna buono su FreePascal?[0] Uno di questi manuali? Posso anche farmi venire il...

Freepascal e web

Salve avrei necessita' di utilizzare alcune funzioni web all'interno di un programma FP. In particolare vorrei da codice riuscire ad accedere al codice html di una pagina...

Freepascal and databases

Ciao a tutti, c'e' nessuno che usa freepascal con Debian? Ho dei problemini con le unit.databases. Mi da sempre errore durante il linking, non trova le librerie,...

IDE del freepascal

Ciao a tutti!! Ho iniziato da poco a programmare in Pascal, me la cavo piuttosto bene vista l'esperienza sul Qbasic, Vbasic e (un pochino) C... Ancora da meno tempo uso linux...


Tutti gli orari sono GMT. Attualmente sono le 23:36. | Privacy Policy