Aritmética Binaria y Representación de Datos en Arquitectura de Computadoras
Introducción a la Aritmética Binaria
- Contexto Académico: Universidad Tecnológica Nacional (UTN) - Facultad Regional Santa Fe.
- Temática Central: Arquitectura de Computadoras enfocada en la representación y operación con números enteros y reales en sistemas binarios.
Representación de Enteros: Notaciones
El estudio de los enteros en computación se divide en diversas modalidades representativas para gestionar tanto la magnitud como el signo:
- Sin signo: Utilizado exclusivamente para números positivos y el cero.
- Signo y magnitud: Reserva un bit específico para determinar la polaridad del número.
- Complemento a uno (): Basado en el complemento a la base .
- Complemento a dos (): Basado en el complemento a la base.
Enteros Sin Signo
Esta representación utiliza la totalidad de los bits para expresar el valor numérico.
- Rango de Representación: Para un número de bits, el rango se define desde hasta .
- Ejemplos de Rango:
- Ejemplo 1 (): El rango es de a , lo que equivale a un intervalo de .
- Ejemplo 2 (): El rango es de a , resultando en el intervalo de .
Notación de Signo y Magnitud
En este formato, la posición binaria más significativa (el bit más a la izquierda) se dedica exclusivamente a indicar el signo del número.
- Convención del Bit de Signo:
- : Indica que el número es positivo.
- : Indica que el número es negativo.
- Rango de Representación: Dado un número de bits, el rango abarca desde hasta .
- Ejemplo de Rango (): El rango es de a , es decir, de a .
- Representaciones para (Ejemplo Completo):
- y (Existe una doble representación del cero).
- y
- y
- y
- y
- y
- y
- y
Teoría del Complemento
Existen dos modalidades principales para trabajar con complementos en cualquier base:
- Complemento a la base .
- Complemento a la base.
- Ejemplo en Base 10:
- Complemento a 9 (Base-1): Para un número negativo de dos dígitos (ej. ), se resta de la cifra más alta representable con esa cantidad de posiciones (). Por tanto, .
- Complemento a 10 (Base): Se obtiene restando el número al total de combinaciones posibles ( para dos dígitos). Por tanto, .
- Regla General para Positivos: En ambas modalidades, el complemento de un número positivo es el mismo número.
Complemento a Uno ()
- Definición: Es la aplicación del complemento a la base en el sistema binario (base 2).
- Regla de Obtención:
- Para un número positivo: Se mantiene igual.
- Para un número negativo: Se intercambian todos los bits de la representación (los ceros por unos y los unos por ceros).
- Ejemplo de Aplicación:
Complemento a Dos ()
- Definición: Es la aplicación del complemento a la base en el sistema binario.
- Regla de Obtención:
- Para un número positivo: Se mantiene igual.
- Para un número negativo: Se realiza el del número y se le suma en la posición menos significativa ().
- Ejemplo de Aplicación:
- Para un número negativo :
- Obtener :
- Sumar :
- Resultado:
- Para un número negativo :
- Rango y Capacidad: Con bits (incluyendo el de signo):
- Permite combinaciones distintas.
- Rango: hasta .
- Ejemplo para : Rango de a . En este sistema, solo hay una representación para el cero ().
Tabla de Valores en (para )
| Positivo | Binario | Negativo | Binario |
|---|---|---|---|
Operaciones de Suma y Desbordamiento (Overflow)
- Suma: Se ejecuta de forma idéntica al sistema decimal.
- Definición de Overflow: Ocurre cuando se suma números de bits y el resultado excede la capacidad de representación de esos bits. Esto se identifica frecuentemente por un acarreo en el bit más significativo que no puede ser procesado.
- Ejemplo de Suma Binaria (Sin signo):
- Sumandos:
- Resultado:
Resta Utilizando Complemento a Uno ()
La resta se transforma en una suma de los complementos.
- Procedimiento:
- Representar los sumandos en notación .
- Si existe un acarreo en la posición más significativa al sumar, este se debe sumar a la posición menos significativa del resultado intermedio (proceso conocido como acarreo circular).
- Ejemplo (Calcular ):
- (Asumiendo longitud de bits).
- Suma: (Hay acarreo).
- Ajuste:
Resta Utilizando Complemento a Dos ()
Es el método estándar en arquitecturas modernas.
- Procedimiento:
- Representar los sumandos en .
- Si existe acarreo en la posición más significativa, este simplemente se descarta.
- Ejemplo (Calcular ):
- Suma:
- Resultado final (descartando acarreo):
Análisis de Casos y Overflow en con Bit de Signo
Considérese los ejemplos de restas con las cifras y :
Interpretación del Resultado:
- Si es positivo: El valor es directo.
- Si es negativo: El resultado está complementado ( o ). Para conocer su valor absoluto, se debe aplicar nuevamente el complemento al resultado.
Reglas de Overflow basadas en Acarreo:
- Sumar dos positivos: Si hay acarreo en la posición más significativa y el bit de signo resultante es (negativo), hay Overflow.
- Sumar un positivo y un negativo:
- Sin acarreo en el bit más significativo: Resultado negativo.
- Con acarreo en el bit más significativo: Resultado positivo.
- Sumar dos negativos: Si no existe acarreo en la posición más significativa y el bit de signo resultante es (positivo), hay Overflow.
Corrección de Overflow (Caso ): Si el número de bits es insuficiente, se debe aumentar la representación. Por ejemplo, usando bits:
- ;
- ;
- Suma: (Se descarta el acarreo final, el resultado es el valor en $ca2$).
Multiplicación y División Binaria de Enteros
- Multiplicación: Sigue la misma lógica que el sistema decimal.
- Ejemplo: Multiplicar (multiplicando) por (multiplicador):
- =
- = (desplazado)
- = (desplazado)
- Suma total:
- Ejemplo: Multiplicar (multiplicando) por (multiplicador):
- División: Se realiza aplicando restas sucesivas mediante la suma del divisor en notación .
- Ejemplo: Dividendo y Divisor .
- Se utiliza el del divisor () para las operaciones internas.
Números Reales y Reglas de Signo
- Suma y Resta de Reales:
- Las reglas de enteros son aplicables.
- Es imperativo alinear la coma binaria.
- Se requiere igualar la cantidad de posiciones tanto a la izquierda como a la derecha de la coma mediante ceros significativos.
- Multiplicación de Reales: La posición de la coma en el resultado se determina sumando la cantidad de posiciones decimales (post-coma) de ambos operandos.
- División de Reales: Al igual que en decimal, se multiplican ambos términos por la base hasta eliminar las comas antes de proceder con el algoritmo de división de enteros.
- Operaciones con Signo: Siguen las leyes convencionales del álgebra decimal:
- El producto o cociente es positivo si ambos signos son iguales.
- .
Bibliografía de Referencia
- Null, L. y Lobur, J.: The Essentials of Computer Organization and Architecture - Capítulo 2, Sección 2.4.
- Quiroga, P.: Arquitectura de Computadoras - Capítulo 4, Secciones 4.2.