Binario/hexadecimal, signo-magnitud, complemento a 1 y a 2, desbordamiento.
Fuente: Apuntes de Introducción a la Informática (representación de la información).
Resumen estudiable
Idea general
Un ordenador solo entiende 0 y 1: todo se codifica con bits y se organiza en bytes (8 bits). Con m bits se pueden representar 2m valores distintos (4 bits → 16).
Bases de numeración
- Decimal (10), binario (2), octal (8, 3 bits por dígito) y hexadecimal (16, 4 bits por dígito).
- Base b → decimal: N = Σ ai·bi. Ej.: 100112 = 16+2+1 = 19.
- Decimal → binario: divisiones sucesivas entre 2 y leer los restos de abajo arriba. 124 → 11111002.
- Hex ↔ binario: cada dígito hex = 4 bits. A3C516 = 1010 0011 1100 01012.
Sistemas de codificación con n bits
| Sistema | Idea | Rango | Notas |
|---|---|---|---|
| Sin signo | Todos los bits son magnitud | 0 … 2n−1 | No hay negativos |
| Signo y magnitud | Bit más significativo = signo | −(2n−1−1) … +(2n−1−1) | Dos ceros (+0 y −0) |
| Complemento a 1 | Negativo = invertir todos los bits | igual que signo-magnitud | Dos ceros |
| Complemento a 2 | Negativo = invertir bits y sumar 1 | −2n−1 … 2n−1−1 | Un solo cero; aritmética natural; el usado hoy (C, CPUs) |
| Exceso / sesgado | Se suma un sesgo al valor real | según el sesgo | Exponente de IEEE 754 |
| BCD | 4 bits por cada dígito decimal | por nº de dígitos | Finanzas; ineficiente en espacio |
Ejemplo (8 bits, C2): +5 = 00000101; −5 = invertir (11111010) + 1 = 11111011.
Desbordamiento (overflow)
Los enteros tienen tamaño fijo (8, 16, 32, 64 bits). Si un resultado se sale del rango se produce desbordamiento: en complemento a 2, sumar dos positivos y obtener un negativo (o al revés). Con 4 bits (−8…+7): 5 + 3 = 8 → se representa como 1000 = −8. En C, INT_MAX + 1 da INT_MIN. Es una circunferencia: al superar el máximo se «da la vuelta».
Ponte a prueba: escribe tu respuesta
Sin mirar el resumen, desarrolla el tema como lo harías en el examen. La web cuenta tus palabras y detecta qué conceptos clave has incluido (es una ayuda orientativa: lo que importa es que entiendas y relaciones).
Respuesta modelo (≈170 palabras)
Ver respuesta modelo (inténtalo antes)
Un ordenador solo maneja información binaria, así que los números enteros se codifican con bits en un tamaño fijo de n bits, lo que permite 2n valores distintos. Para trabajar cómodamente se utilizan las bases octal y hexadecimal, que agrupan 3 y 4 bits por dígito respectivamente, y se convierte de decimal a binario mediante divisiones sucesivas entre 2.
Existen varios sistemas de codificación. Los enteros sin signo representan de 0 a 2n−1. En signo y magnitud el bit más significativo indica el signo, pero hay dos representaciones del cero, igual que en el complemento a 1. El complemento a 2, usado por casi todos los procesadores, obtiene el negativo invirtiendo los bits y sumando 1, tiene un único cero y representa de −2n−1 a 2n−1−1, con una aritmética sencilla para el hardware. También existen el exceso o sesgado (usado en el exponente de IEEE 754) y el BCD.
Como el tamaño es finito, puede producirse desbordamiento (overflow): sumar dos positivos y obtener un negativo, algo importante en programación (por ejemplo en C).
Conecta con otros temas
Relacionar conceptos es lo que más puntúa. Piensa cómo se enlaza este tema con:
- Arquitectura de un ordenador
- Codificación de caracteres y otros datos complejos (audio, vídeo, imagen…)
Quiz
Las opciones se barajan cada vez; repite el quiz hasta que no falles ninguna.