Was ist eine Variable?

Eine Variable ist ein Name für einen Ort im Speicher des Computers, an dem Sie einige Daten speichern.

Stellen Sie sich ein sehr großes Lager mit vielen Lagerplätzen, Tischen, Regalen, speziellen Räumen usw. vor. Dies sind alles Orte, an denen Sie etwas lagern können. Stellen wir uns vor, wir haben eine Kiste Bier im Lager. Wo genau liegt es??

Wir würden nicht sagen, dass es 31 '2 "von der Westwand und 27' 8" von der Nordwand gespeichert ist. In Bezug auf die Programmierung würden wir auch nicht sagen, dass mein in diesem Jahr gezahltes Gesamtgehalt in vier Bytes ab Position 123.476.542.732 im RAM gespeichert ist.

Daten in einem PC

Der Computer platziert Variablen bei jedem Start unseres Programms an verschiedenen Orten. Unser Programm weiß jedoch genau, wo sich die Daten befinden. Wir tun dies, indem wir eine Variable erstellen, die darauf verweist, und dann den Compiler alle unübersichtlichen Details dazu verarbeiten lassen, wo sie sich tatsächlich befindet. Es ist uns viel wichtiger zu wissen, welche Art von Daten wir an dem Ort speichern werden.

In unserem Lager befindet sich unsere Kiste möglicherweise in Abschnitt 5 von Regal 3 im Getränkebereich. Auf dem PC weiß das Programm genau, wo sich seine Variablen befinden.

Variablen sind temporär

Sie existieren nur so lange sie gebraucht werden und werden dann entsorgt. Eine andere Analogie ist, dass Variablen wie Zahlen in einem Taschenrechner sind. Sobald Sie die Lösch- oder Ausschalttaste drücken, gehen die Anzeigenummern verloren.

Wie groß ist eine Variable?

So groß wie nötig und nicht mehr. Die kleinste Variable kann ein Bit sein und die größte ist Millionen von Bytes. Aktuelle Prozessoren verarbeiten Daten in Blöcken von jeweils 4 oder 8 Byte (32- und 64-Bit-CPUs). Je größer die Variable, desto länger dauert das Lesen oder Schreiben. Die Größe der Variablen hängt vom Typ ab.

Was ist ein Variablentyp??

In modernen Programmiersprachen werden Variablen als vom Typ deklariert.

Abgesehen von Zahlen unterscheidet die CPU nicht zwischen den Daten in ihrem Speicher. Es behandelt es als eine Auflistung von Bytes. Moderne CPUs (mit Ausnahme von Mobiltelefonen) können in der Hardware normalerweise sowohl Ganzzahl- als auch Gleitkomma-Arithmetik verarbeiten. Der Compiler muss für jeden Typ unterschiedliche Maschinencodeanweisungen generieren, damit er den optimalen Code generieren kann, wenn er den Variablentyp kennt.

Welche Arten von Daten kann eine Variable enthalten??

Die Grundtypen sind diese vier.

  • Ganze Zahlen (sowohl mit als auch ohne Vorzeichen) 1,2,4 oder 8 Bytes groß. Wird normalerweise als ints bezeichnet.
  • Gleitkomma Zahlen bis zu 8 Bytes.
  • Bytes. Diese sind in 4s oder 8s (32 oder 64 Bit) organisiert und lesen die Register der CPU ein und aus.
  • Text Zeichenfolgen mit einer Größe von bis zu Milliarden von Bytes. CPUs verfügen über spezielle Anweisungen zum Durchsuchen großer Byteblöcke im Speicher. Dies ist sehr praktisch für Textoperationen.

Es gibt auch einen allgemeinen Variablentyp, der häufig in Skriptsprachen verwendet wird.

  • Variante - Dies kann für jeden Typ verwendet werden, ist jedoch langsamer.

Beispiel für Datentypen

  • Arrays von Typen - eindimensional wie Schubladen in einem Schrank, zweidimensional wie Post-Sortierkästen oder dreidimensional wie ein Stapel Bierkästen. Es kann eine beliebige Anzahl von Dimensionen geben, bis zu den Grenzen des Compilers.
  • Aufzählungen, die eine eingeschränkte Teilmenge von ganzen Zahlen sind. Lesen Sie, was eine Aufzählung ist.
  • Strukturen sind eine zusammengesetzte Variable, bei der mehrere Variablen zu einer großen Variablen zusammengefasst werden.
  • Streams bieten eine Möglichkeit zum Verwalten von Dateien. Sie sind eine Form einer Schnur.
  • Objekte sind wie Strukturen, haben jedoch eine viel ausgefeiltere Datenverarbeitung.

Wo werden Variablen gespeichert??

Im Gedächtnis, aber auf unterschiedliche Weise, je nachdem, wie sie verwendet werden.

  • Global. Alle Teile des Programms können auf den Wert zugreifen und ihn ändern. So handhabten ältere Sprachen wie Basic und Fortran Daten und dies wird nicht als gute Sache angesehen. Moderne Sprachen neigen dazu, die globale Speicherung zu behindern, obwohl dies immer noch möglich ist.
  • Auf dem Haufen. Dies ist der Name für den verwendeten Hauptbereich. In C und C ++ erfolgt der Zugriff darauf über Zeigervariablen.
  • Auf dem Stapel. Der Stack ist ein Speicherblock, in dem Parameter gespeichert werden, die an Funktionen übergeben werden, sowie Variablen, die lokal für Funktionen existieren.

Fazit

Variablen sind für die prozedurale Programmierung von wesentlicher Bedeutung. Es ist jedoch wichtig, dass Sie sich nicht zu sehr mit der zugrunde liegenden Implementierung abfinden, es sei denn, Sie programmieren Systeme oder schreiben Anwendungen, die in einem kleinen Arbeitsspeicher ausgeführt werden müssen.

Unsere Regeln bezüglich Variablen:

  1. Bleiben Sie lieber bei Ints als bei a, es sei denn, Sie sind eng mit dem RAM verbunden oder haben große Arrays Byte (8 Bit) oder kurz int (16 Bits). Insbesondere bei 32-Bit-CPUs ist der Zugriff auf weniger als 32 Bit mit einer zusätzlichen Verzögerung verbunden.
  2. Verwenden Sie Floats anstelle von Doubles, es sei denn, Sie benötigen die Präzision.
  3. Vermeiden Sie Varianten, es sei denn, dies ist wirklich notwendig. Sie sind langsamer.