memoria-bits-y-bytes

Memoria, bits y bytes

En términos generales, la memoria es la capa fundacional del computo, sobre la que descansan las estructuras de datos.

La data es almacenada en memoria en forma de bytes, y por ende, en bits; en sus respectivas direcciones.

Los bytes en memoria pueden «apuntar» a otros bytes en memoria, así como almacenar referencias a otra data.

La cantidad de memoria disponible en una computadora es limitada, convirtiéndola en un valioso recurso; por tanto, hay que limitar la cantidad de la misma que un algoritmo puede utilizar para su ejecución, considerando su complejidad en el espacio.

Acceder a un byte o a un número fijo de bytes es una operación elemental, que puede ser tratada como una unidad operacional de computo. Por ejemplo, acceder a 4 bytes u 8 bytes en el caso de números enteros de 32-bit & 64-bit, respectivamente.

Bit

Acrónimo de Binary Digit. El bit es la unidad fundamental de información en ciencias de la computación; este representa uno de los dos estados binarios, típicamente 0 y 1. (false/true, off/on). Cualquier data almacenada en una computadora, a nivel básico, está representada en bits.

Byte

Es un grupo de 8 bits. Por ejemplo, 01101000 equivale a 1 byte.

Un único byte puede representar hasta 256 valores diferentes (2^8).

Dado que un número binario es un número expresado con solo dos símbolos, 0 y 1, un byte efectivamente puede representar todos los números entre 0 y 255, inclusive en formato binario.

Los siguientes bytes representan los números 1, 2, 3 y 4 en formato binario:

1: 00000001

2: 00000010

3: 00000011

4: 00000100

Entero de tamaño fijo (Fixed-width integer)

Es un número entero representado por un tamaño fijo de bits. Por ejemplo, un entero de 32-bits es un entero representado por 4 bytes, y uno de 64-bits es representado por 8 bytes.

El número 1 representado como entero de 32-bits, con sus bytes claramente separados, luce así:

00000000 00000000 00000000 00000001

La representación como entero de 64-bits del número 10, es la siguiente:

00000000 00000000 00000000 00000000 00000000 00000000 00000000 00001010

Independientemente de cuan grande sea el número entero, si es declarado de tamaño fijo, siempre será representado como un conjunto de 4 u 8 bytes según sea el caso.

En consecuencia, las operaciones aplicadas sobre datos de tipo fixed-width integer requerirán de un número constante de bits a ser manipulados.

Deja una respuesta

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.