Es klingt selbstverständlich, aber manche entkommen den feinen Unterschied zwischen Konstanten und Variablen in einer Programmiersprache. Die Konstanten, aus dem Namen, ändern Sie nicht ihren Wert im Laufe eines Programms, während Variablen dagegen tun können! Oft aber geschehen, um Variablen anstelle von Konstanten, ohne es zu benutzen, auch, weil diese nicht beeinflussen wird, die Logik einer Applikation. Trotzdem entsteht der Unterschied zwischen Konstanten und Variablen, und es gibt alle zum Zeitpunkt der Kompilierung, wobei die Konstante spielt eine ruole definitiv stärker.
Aus Richtung C oder Assembler-Programmierung kennt den Unterschied zwischen Konstanten und Variablen, vor allem, weil sowohl in Assembler und C, Konstanten eine Rolle spielen, indem MACRO. Für MACRO indendo ein "Stück Code", die beschriftet und befindet sich im Code ersetzt bei der Kompilierung. Der Compiler, kurz gesagt, führt eine Art zu finden .. ersetzen (und ist sostituitsci) in den Code jedes Mal, wenn es auf einen konstant.
Stellen Sie sich in der folgenden einfachen C-Code-Fragment zu schreiben:
1 2 3 4 | 5 ; int a = 5; 3 ; int b = 3; int c; b ; c = a + b; |
sono indicate come variabili in questo caso. Sowohl a diesem b werden als Variablen in diesem Fall angegeben. In C, in der Tat werden die Konstanten mit dem Schlüsselwort definiert #define . sono state definite come int . Wir bemerken sofort, dass a dem b als definiert wurde int . Bereits hier können Sie eine erste Optimierung. Wenn wir wissen, dass unsere Variable a nie einen bestimmten Wert überschreiten, sollten Sie es richtig erklären und verwenden Sie keine Datentypen nach dem Zufallsprinzip. Einige Entwickler nicht die Mühe, die richtigen Typen zu deklarieren, denken, dass dies keinen Einfluss auf die Performace! Falsch! Alternativ ist es akzeptabel, dass der erste Entwurf des Kodex nicht um diesen Grad an Detail. Doch eine gute Regel, während des Entwicklungsprozesses, überprüfen Sie den Code und überprüfen Sie die Datentypen.
Wie dem auch sei, in einer Versammlung der Familie von Motorola, zum Beispiel, wie der mythische 68000, würde unser Code kompiliert (ohne Optimierungen) in einer Art zu ergreifen:
1 2 3 4 | , d0 ; int a bewegt sich die Nr. 5, d0; Int. , d1 ; int b bewegt. die # 3, d1, int b d2 ; int c - foo bewegt sich die D1, D2, int c -. foo l d0 , d2 ; risultato in d2 ovvero c hinzuzufügen. die D0, D2, D2, oder das Ergebnis in c |
oder:
1 2 3 | , d0 ; int a bewegt sich die Nr. 5, d0; Int. , d1 ; int b bewegt. die # 3, d1, int b d1 ; risultato in d1... bewegt sich. die d0, d1, d1 Suchergebnis in ... |
Der Compiler ist jedoch klug, Anstrengung in Optimierungen, dann schreiben Sie den Code mit dem richtigen Schlüsselwort kann nur dazu beitragen, die kompilierte Ausgabe zu verbessern. In unserem Fall, wenn der Wert 5 ist eine Konstante ist nicht bequem, um eine Integer-Variable zu verwenden, da der Compiler, mit Recht, wenn man die Variable variable, präzise, predisponde eine ganze Zahl, um den einfachen Wert von 5 enthalten; dass in binär ist 101, dh erstreckt sich über drei einfachen Bits (wenn überhaupt, ist int ein 32bit oder 53bit Schlimmste, was ein Doppel-precision floating point!). Hätten wir den Code wie folgt geschrieben:
1 2 3 4 5 | # Definieren MIA_COSTANTE 5 3 ; int b = 3; int c; b ; c = MIA_COSTANTE + b; |
Der Compiler würde von vornherein wissen, dass MIA_COSTANTE , konstant ist, der Wert wird sich nicht ändern, damit ich weniger Platz reservieren können, um es zu behandeln. In der Praxis der Versammlung diverebbe Code:
1 2 3 | d0 ; la "q" indica una istruzione "quick", cioè che tratta valori compresi tra -128 e +127 moveq # 3, D0, und das "Q" zeigt eine Anweisung "Quick", also Werte zwischen -128 und +127 ; Ein Bildungssystem, "schnell" dauert weniger CPU-Zeit (4 Taktzyklen in diesem Fall) d0 ; anche qui uso una istruzione "quick" ADDQ Nr. 5, d0; hier eine Anleitung, Handbuch "Quick" |
Dieser Code ist extrem schnell und benötigt weniger Bytes. Was müssen wir im Hinterkopf behalten, dass, wenn Sie eine Variable deklarieren Umgebung ist bereit, es als solches zu behandeln, auch wenn die heutigen Compilern Wunder tun kann, um eine Reihe von Schritten in den Code vor dem Kompilieren (Einige Compiler, sogar führen Sie eine Art Simulation Programm, um das Kompilieren in Maschinencode zu optimieren).
Eine gute Regel ist es daher, die richtige Art für unsere Variablen zu deklarieren, obwohl diese sind. Alternativ verwenden Sie die Konstanten, besonders wenn die Programmiersprache verwenden wir das erwartet (wie im Fall des neuen Flash CS3).










Es sind keine Kommentare für diesen Beitrag
Hinterlasse einen Kommentar