Beschrijving en voorbeelden van variabelen

Een variabele is een naam voor een plaats in het geheugen van de computer waar u bepaalde gegevens opslaat.

Stel je een heel groot magazijn voor met veel opbergvakken, tafels, planken, speciale ruimtes etc. Dit zijn allemaal plekken waar je iets kunt opbergen. Stel je voor dat we een krat bier in het magazijn hebben. Waar bevindt het zich precies?

We zouden niet zeggen dat het 31 '2 "van de westmuur en 27' 8" van de noordmuur is opgeslagen. In programmeren termen zouden we ook niet willen zeggen dat mijn totale salaris dat ik dit jaar heb betaald, is opgeslagen in vier bytes, beginnend op locatie 123.476.542.732 in RAM.

Gegevens op een pc

Elke keer dat ons programma wordt uitgevoerd, plaatst de computer variabelen op verschillende locaties. Ons programma weet echter precies waar de gegevens zich bevinden. We doen dit door een variabele te maken om ernaar te verwijzen en de compiler vervolgens alle rommelige details te laten afhandelen over waar deze zich feitelijk bevindt. Het is veel belangrijker voor ons om te weten wat voor soort gegevens we op de locatie gaan opslaan.

instagram viewer

In ons magazijn staat onze kist misschien in sectie 5 van plank 3 in de drankenruimte. Op de pc weet het programma precies waar de variabelen zich bevinden.

Variabelen zijn tijdelijk

Ze bestaan ​​net zo lang als ze nodig zijn en worden dan afgevoerd. Een andere analogie is dat variabelen zijn als getallen in een rekenmachine. Zodra u op de wis- of uitschakelknoppen drukt, gaan de displaynummers verloren.

Hoe groot is een variabele

Zo groot als nodig is en niet meer. De kleinste variabele kan één bit zijn en de grootste is miljoenen bytes. Huidige processors verwerken gegevens in brokken van 4 of 8 bytes tegelijk (32- en 64-bits CPU's), dus hoe groter de variabele, hoe langer het duurt om deze te lezen of te schrijven. De grootte van de variabele is afhankelijk van het type.

Wat is een variabel type?

In het moderne programmeertalenworden variabelen van een type verklaard.

Afgezien van cijfers maakt de CPU geen enkel onderscheid tussen de gegevens in zijn geheugen. Het behandelt het als een verzameling bytes. Moderne CPU's (afgezien van die in mobiele telefoons) kunnen gewoonlijk zowel integer- als drijvende-kommaberekeningen in hardware verwerken. De compiler moet voor elk type verschillende machinecode-instructies genereren, dus als u weet wat het type variabele is, kan het optimale code genereren.

Welke soorten gegevens kan een variabele bevatten?

De fundamentele typen zijn deze vier.

  • Gehele getallen (zowel ondertekend als ongetekend) 1,2,4 of 8 bytes groot. Meestal aangeduid als ints.
  • Drijvend punt Getallen tot 8 bytes groot.
  • Bytes. Deze zijn georganiseerd in 4s of 8s (32 of 64 bits) en gelezen in en uit de registers van de CPU.
  • Tekst strings, tot miljarden bytes groot. CPU's hebben speciale instructies om door grote blokken bytes in het geheugen te zoeken. Dit is erg handig voor tekstbewerkingen.

Er is ook een algemeen type variabele, vaak gebruikt in scripttalen.

  • Variant - Dit kan elk type bevatten, maar is langzamer in gebruik.

Voorbeeld van gegevenstypen

  • Arrays van soorten - enkele dimensie zoals laden in een kast, tweedimensionaal zoals postkantoor sorteerdozen of driedimensionaal als een stapel bierkratten. Er kunnen een onbeperkt aantal afmetingen zijn, tot aan de limieten van de compiler.
  • Enums die een beperkte subset van gehele getallen zijn. Lees over wat een opsomming is.
  • Structs zijn een samengestelde variabele waarbij verschillende variabelen worden samengevoegd in één grote variabele.
  • Streams bieden een manier om bestanden te beheren. Ze zijn een vorm van een draad.
  • Voorwerpen, zijn als structs, maar met veel geavanceerdere gegevensverwerking.

Waar worden variabelen opgeslagen?

In het geheugen, maar op verschillende manieren, afhankelijk van hoe ze worden gebruikt.

  • Wereldwijd. Alle delen van het programma hebben toegang tot en kunnen de waarde wijzigen. Dit is hoe oudere talen zoals Basic en Fortran vroeger met gegevens omgingen en het wordt niet als een goede zaak beschouwd. Moderne talen ontmoedigen de wereldwijde opslag, hoewel het nog steeds mogelijk is.
  • Op de hoop. Dit is de naam voor het belangrijkste gebied dat wordt gebruikt. In C en C ++ is toegang hiertoe via wijzer variabelen.
  • Op de Stack. De stapel is een geheugenblok dat wordt gebruikt om op te slaan parameters doorgegeven aan functies en variabelen die lokaal bestaan ​​voor functies.

Conclusie

Variabelen zijn essentieel voor procedurele programmering, maar het is belangrijk om niet te veel op te hangen aan het onderliggende implementatie tenzij u bezig bent met het programmeren van systemen of het schrijven van applicaties die in een kleine hoeveelheid moeten worden uitgevoerd RAM.

Onze regels met betrekking tot variabelen:

  1. Tenzij je krap zit of hebt grote arrays, blijf bij ints liever dan een byte (8 bits) of korte int (16 bits). Vooral op 32-bits CPU's is er een extra vertragingstraf bij toegang tot minder dan 32-bits.
  2. Gebruik drijft in plaats van verdubbelt tenzij je de precisie nodig hebt.
  3. Vermijd varianten tenzij het echt nodig is. Ze zijn langzamer.