Estoy enseñando el curso "Introducción en la programación" para los estudiantes de primer año y me gustaría encontrar ejemplos interesantes donde el tamaño del tipo de datos en bits, elegido por diseño, condujo a ciertas restricciones conocidas o valores importantes.
Aquí hay unos ejemplos:
- Debido al hecho de que la teleimpresora Bell usó un código de 7 bits (luego aceptado como ASCII) hasta ahora, a menudo tenemos que codificar archivos adjuntos en mensajes electrónicos para contener solo datos de 7 bits.
- La limitación clásica del espacio de direcciones de 32 bits conduce al tamaño de RAM máximo de 4 Gb disponible para sistemas de 32 bits y al tamaño de archivo máximo de 4 Gb en FAT32.
¿Conoce otros ejemplos interesantes sobre cómo la elección del tipo de datos (y especialmente su longitud binaria) influyó en el mundo de TI moderno.
Agregado después de alguna discusión en los comentarios:
No voy a enseñar cómo superar las limitaciones. Solo quiero que sepan que 1 byte puede contener los valores de -127..0 .. + 127 o 0..255, 2 bytes cubren el rango 0..65535 etc. probando ejemplos que conocen de otras fuentes, como el codificación base64 mencionada anteriormente, etc. Estamos aprendiendo los tipos de datos básicos y estoy tratando de encontrar una buena referencia para "cuán grandes" son estos tipos.
fuente
Respuestas:
IPv4 es un muy buen ejemplo donde un tamaño de especificación limitado causó un problema muy costoso en el futuro. 4.300 millones de direcciones ya no son suficientes. Ahora los ISP de todo el mundo están desplegando desesperadamente IPv6 con un espacio de direcciones de 128 bits que se traduce en una dirección para cada átomo en su cuerpo o algo así.
fuente
El problema del año 2000 fue similar, excepto que las personas usaron números decimales en lugar de binarios, y codificaron solo dos últimos dígitos. Este puede ser un ejemplo útil si se lo explica a alguien que tiene poca experiencia con el binario.
FAT12 / FAT16 / FAT32 se adaptaron para cubrir para un almacenamiento cada vez más grande.
TeX tiene algunas propiedades interesantes al representar dimensiones (de The TeXBook):
(pt es una unidad tipográfica aproximadamente igual a 1/72 de pulgada)
fuente
Microsoft Excel: intente graficar más de 32 mil elementos. Tiene que haber un campo de 16 bits firmado en alguna parte. (aunque redondean el límite a 32000 incluso por alguna razón).
fuente