Operaciones Aritméticas y Lógicas en la ALU: Representación y Algoritmos

Clasificado en Matemáticas

Escrito el en español con un tamaño de 2,98 KB

Representación de Números Enteros y Operaciones en la Unidad Aritmético-Lógica (ALU)

La ALU (Unidad Aritmético-Lógica) es el componente del procesador que ejecuta las operaciones aritméticas y lógicas con los datos.

Representación de Números Enteros

  • Signo-Magnitud: En un número de n bits, los n-1 bits de la derecha representan la magnitud y el bit más significativo (el bit n) representa el signo.
  • Complemento a 2: Los números positivos se representan igual que en signo-magnitud. Para los negativos, el bit más significativo representa un valor negativo ( ), y el resto de los bits contribuyen con su valor posicional ( ), sumando todos los valores se obtiene el número.

Conversión de Enteros entre Longitudes

  • Signo-magnitud: El bit más significativo se usa como signo y el resto se rellena con ceros.
  • Complemento a 2: Se extiende el signo, rellenando el espacio adicional con el valor del bit de signo.

Operaciones Aritméticas

Negación de un entero (Complemento a 2): Para obtener la representación negativa de un entero, se invierten todos los bits (1s se convierten en 0s y viceversa) y luego se suma 1 al resultado.

  • Suma: Se realiza de la misma forma aritmética que en el sistema decimal.
  • Resta: Se calcula el complemento a 2 del sustraendo y se suma al minuendo.
  • Multiplicación:
    • Sin signo: Similar a la multiplicación decimal.
    • Con signo: Se puede utilizar el Algoritmo de Booth.
  • División:
    • Sin signo: Se examinan los bits del dividendo de izquierda a derecha hasta que sean mayores o iguales que el divisor. Se colocan ceros en el cociente hasta que el divisor "quepa". Luego, se coloca un 1 en el cociente y se resta el divisor del dividendo parcial. El proceso se repite cíclicamente con el resto parcial y los bits restantes del dividendo.
    • Con signo:
      1. Cargar el divisor en el registro M y el dividendo en los registros A y Q (el dividendo en complemento a dos de 2n bits).
      2. Desplazar A y Q una posición a la izquierda.
      3. Si M y A tienen el mismo signo, A <— A - M; si no, A <— A + M.
      4. La operación tiene éxito si el signo de A es el mismo antes y después.
        1. Si la operación tiene éxito o A = 0, entonces Q0 <— 1.
        2. Si no tiene éxito y A ≠ 0, entonces Q0 <— 0, y se restablece el valor anterior de A.
      5. Repetir los pasos 2 a 4 tantas veces como bits tenga Q.
      6. El resto queda en A. Si los signos del divisor y el dividendo eran iguales, el cociente está en Q; si no, el cociente correcto es el complemento a dos de Q.

Entradas relacionadas: