Une variable est le nom d'un endroit dans la mémoire de l'ordinateur où vous stockez des données.
Imaginez un très grand entrepôt avec beaucoup de baies de rangement, tables, étagères, pièces spéciales, etc. Ce sont tous des endroits où vous pouvez stocker quelque chose. Imaginons que nous ayons une caisse de bière dans l'entrepôt. Où est-il situé exactement?
Nous ne dirions pas qu'il est stocké à 31 '2 "du mur ouest et à 27' 8" du mur nord. Dans programmation termes, nous ne dirions pas non plus que mon salaire total payé cette année est stocké dans quatre octets à partir de l'emplacement 123 476 542 732 dans la RAM.
Données sur un PC
L'ordinateur placera des variables à différents endroits à chaque exécution de notre programme. Cependant, notre programme sait exactement où se trouvent les données. Pour ce faire, nous créons une variable pour y faire référence, puis nous laissons le compilateur gérer tous les détails désordonnés sur son emplacement réel. Il est beaucoup plus important pour nous de savoir quel type de données nous stockons dans l'emplacement.
Dans notre entrepôt, notre caisse pourrait se trouver dans la section 5 de l'étagère 3 dans la zone des boissons. Sur le PC, le programme saura exactement où se trouvent ses variables.
Les variables sont temporaires
Ils existent aussi longtemps qu'ils sont nécessaires et sont ensuite éliminés. Une autre analogie est que les variables sont comme des nombres dans une calculatrice. Dès que vous appuyez sur les boutons d'effacement ou de mise hors tension, les numéros d'affichage sont perdus.
Quelle est la taille d'une variable
Aussi grand que nécessaire et pas plus. La plus petite variable peut être un bit et la plus grande est des millions d'octets. Les processeurs actuels traitent les données en blocs de 4 ou 8 octets à la fois (processeurs 32 et 64 bits), donc plus la variable est grande, plus il faudra de temps pour la lire ou l'écrire. La taille de la variable dépend de son type.
Qu'est-ce qu'un type de variable?
Dans moderne langages de programmation, les variables sont déclarées d'un type.
Mis à part les nombres, le CPU ne fait aucune distinction entre les données dans sa mémoire. Il le traite comme une collection d'octets. Les processeurs modernes (à l'exception de ceux des téléphones mobiles) peuvent généralement gérer à la fois l'arithmétique entière et à virgule flottante dans le matériel. le compilateur doit générer différentes instructions de code machine pour chaque type, donc savoir ce que le type de variable l'aide à générer du code optimal.
Quels types de données une variable peut-elle contenir?
Les types fondamentaux sont les quatre.
- Entiers (à la fois signé et non signé) 1,2,4 ou 8 octets. Habituellement appelé ints.
- Point flottant Numéros jusqu'à 8 octets.
- Octets. Celles-ci sont organisées en 4 ou 8 (32 ou 64 bits) et lues dans et hors des registres du CPU.
- Texte chaînes, jusqu'à des milliards d'octets. Les CPU ont des instructions spéciales pour rechercher dans de grands blocs d'octets en mémoire. C'est très pratique pour les opérations de texte.
Il existe également un type de variable général, souvent utilisé dans les langages de script.
- Une variante - Cela peut contenir n'importe quel type mais est plus lent à utiliser.
Exemple de types de données
- Tableaux de types: unidimensionnels comme des tiroirs dans une armoire, bidimensionnels comme des boîtes de tri de bureau de poste ou tridimensionnels comme un tas de caisses de bière. Il peut y avoir n'importe quel nombre de dimensions, jusqu'aux limites du compilateur.
- Enum qui est un sous-ensemble restreint d'entiers. Lisez qu'est-ce qu'une énumération.
- Les structures sont une variable composite où plusieurs variables sont regroupées dans une seule grande variable.
- Les flux fournissent un moyen de gérer les fichiers. Ils sont une forme de chaîne.
- Objets, sont comme des structures mais avec une gestion des données beaucoup plus sophistiquée.
Où sont stockées les variables?
En mémoire mais de différentes manières, selon la façon dont ils sont utilisés.
- Globalement. Toutes les parties du programme peuvent accéder et modifier la valeur. C'est ainsi que les langues plus anciennes comme Basic et Fortran géraient les données et ce n'est pas considéré comme une bonne chose. Les langages modernes ont tendance à décourager le stockage mondial, bien que cela soit toujours possible.
- Sur le tas. Il s'agit du nom de la zone principale utilisée. En C et C ++, l'accès à celui-ci se fait via aiguille variables.
- Sur le Empiler. La pile est un bloc de mémoire utilisé pour stocker paramètres passé dans les fonctions et les variables qui existent localement aux fonctions.
Conclusion
Les variables sont essentielles à la programmation procédurale, mais il est important de ne pas trop se raccrocher au sous-jacent mise en œuvre, sauf si vous faites de la programmation système ou écrivez des applications qui doivent s'exécuter dans une petite quantité de RAM.
Nos règles concernant les variables:
- À moins que vous ne soyez serré sur le bélier ou grands tableaux, coller avec ints Plutôt qu'un octet (8 bits) ou court int (16 bits). Surtout sur les processeurs 32 bits, il y a une pénalité de retard supplémentaire dans l'accès à moins de 32 bits.
- Utilisation flotteurs au lieu de double sauf si vous avez besoin de précision.
- Évitez les variantes, sauf si c'est vraiment nécessaire. Ils sont plus lents.