¿Qué es una variable?

Una variable es un nombre para un lugar en la memoria de la computadora donde almacena algunos datos.

Imagine un almacén muy grande con muchas bahías de almacenamiento, mesas, estantes, habitaciones especiales, etc. Estos son todos los lugares donde puede almacenar algo. Imaginemos que tenemos una caja de cerveza en el almacén. ¿Dónde se encuentra exactamente??

No diríamos que está almacenado a 31 '2 "del muro oeste y a 27' 8" del muro norte. En términos de programación, tampoco diríamos que mi salario total pagado este año se almacena en cuatro bytes a partir de la ubicación 123,476,542,732 en RAM.

Datos en una PC

La computadora colocará variables en diferentes ubicaciones cada vez que se ejecute nuestro programa. Sin embargo, nuestro programa sabe exactamente dónde se encuentran los datos. Hacemos esto creando una variable para referirnos a ella y luego dejamos que el compilador maneje todos los detalles desordenados sobre dónde se encuentra realmente. Es mucho más importante para nosotros saber qué tipo de datos almacenaremos en la ubicación.

En nuestro almacén, nuestra caja podría estar en la sección 5 del estante 3 en el área de bebidas. En la PC, el programa sabrá exactamente dónde se encuentran sus variables.

Las variables son temporales

Existen todo el tiempo que se necesiten y luego se eliminen. Otra analogía es que las variables son como números en una calculadora. Tan pronto como presione los botones de borrar o apagar, se perderán los números de la pantalla.

¿Qué tan grande es una variable?

Tan grande como sea necesario y no más. Lo más pequeño que puede ser una variable es un bit y lo más grande es millones de bytes. Los procesadores actuales manejan los datos en fragmentos de 4 u 8 bytes a la vez (CPU de 32 y 64 bits), por lo que cuanto mayor sea la variable, más tardará leerla o escribirla. El tamaño de la variable depende de su tipo..

¿Qué es un tipo variable??

En los lenguajes de programación modernos, las variables se declaran de un tipo.

Además de los números, la CPU no hace ningún tipo de distinción entre los datos en su memoria. Lo trata como una colección de bytes. Las CPU modernas (aparte de las de los teléfonos móviles) generalmente pueden manejar aritmética de números enteros y de coma flotante en hardware. El compilador debe generar diferentes instrucciones de código de máquina para cada tipo, por lo que saber cuál es el tipo de variable lo ayuda a generar un código óptimo.

¿Qué tipos de datos puede contener una variable??

Los tipos fundamentales son estos cuatro.

  • Enteros (con y sin signo) 1,2,4 u 8 bytes de tamaño. Generalmente se conoce como ints.
  • Punto flotante Números de hasta 8 bytes de tamaño.
  • Bytes. Estos se organizan en 4 u 8 (32 o 64 bits) y se leen dentro y fuera de los registros de la CPU.
  • Texto cadenas, de hasta miles de millones de bytes de tamaño. Las CPU tienen instrucciones especiales para buscar en grandes bloques de bytes en la memoria. Esto es muy útil para operaciones de texto..

También hay un tipo de variable general, a menudo utilizado en lenguajes de script.

  • Variante - Esto puede contener cualquier tipo, pero es más lento de usar.

Ejemplo de tipos de datos

  • Arreglos de tipos: una sola dimensión como cajones en un gabinete, dos dimensiones como cajas de clasificación de correos o tridimensional como una pila de cajas de cerveza. Puede haber cualquier cantidad de dimensiones, hasta los límites del compilador.
  • Enums que son un subconjunto restringido de enteros. Lea sobre lo que es una enumeración es.
  • Las estructuras son una variable compuesta donde varias variables se agrupan en una gran variable.
  • Las transmisiones proporcionan una forma de administrar archivos. Son una forma de una cuerda.
  • Los objetos son como estructuras pero con un manejo de datos mucho más sofisticado.

¿Dónde se almacenan las variables??

En memoria pero de diferentes maneras, dependiendo de cómo se usen.

  • Globalmente. Todas las partes del programa pueden acceder y cambiar el valor. Así es como los lenguajes más antiguos como Basic y Fortran solían manejar datos y no se considera algo bueno. Los lenguajes modernos tienden a desalentar el almacenamiento global, aunque todavía es posible..
  • En el montón. Este es el nombre del área principal utilizada. En C y C ++, el acceso a esto es a través de variables de puntero.
  • En la pila. La pila es un bloque de memoria que se usa para almacenar parámetros pasados ​​a funciones y variables que existen localmente para las funciones..

Conclusión

Las variables son esenciales para la programación de procedimientos, pero es importante no obsesionarse demasiado con la implementación subyacente a menos que esté haciendo programación de sistemas o escribiendo aplicaciones que tienen que ejecutarse en una pequeña cantidad de RAM.

Nuestras reglas con respecto a las variables:

  1. A menos que tenga poco ram o tenga grandes matrices, quédese con ints en lugar de byte (8 bits) o int corto (16 bits). Especialmente en las CPU de 32 bits, hay una penalización de retraso adicional al acceder a menos de 32 bits.
  2. Use flotadores en lugar de dobles a menos que necesite la precisión.
  3. Evite variantes a menos que sea realmente necesario. Son mas lentos.