jueves, 10 de enero de 2008

Operación binaria

Se define como operación binaria un procedimiento entre dos o más variables en base 2 (o también llamado en módulo 2). Desde el punto de vista de la informática, estas operaciones aunque son puramente matemáticas, ocupan un gran rol en el funcionamiento de la computadora. Esta es la razón por la que se encuentran muchas veces en los microprocesadores y más específicamente en las ALU (Unidades Aritmético Lógicas).

Tipos de operaciones

  1. Operaciones Lógicas:
  2. Operaciones Aritméticas: como puede ser la suma, la resta, la multiplicación.
  3. Operaciones Comparativas: mayor, menor, igual
  4. Operaciones de Desplazamiento: conocidos como shifts
  5. Operaciones de Rotación: similares a los shifts pero aprovechando características del procesador (para rotar los bits en un registro)

Operación Lógica

También llamadas Operaciones Booleanas en mención al Álgebra de Boole, estas son usualmente:

A nivel de hardware existen circuitos lógicos que representan cada una de las operaciones como puertas lógicas.

Operación Aritmética

Como las que se utilizan en el sistema binario:

Muchas de estas operaciones se pueden formar por medio de las operaciones lógicas antes mencionadas.

Operación Comparativa

Dadas dos variables me permite conocer si una de ellas es mayor, menor o igual a la otra. El mecanismo utilizado internamente es la resta de las dos variables. A partir de esta operación y, basándose en el estado final de los flags, se determina cómo es la relación entre las dos variables.

Operación de Desplazamiento

Introducción

  • Aunque es frecuente que incluso en academias, sin más prolegómenos se hable de sistema binario y se pasa a explicar 1 y 0, intentando situar al alumno en la pista de la comprensión de equivalencia matemática con el sistema binario, e incluso enseñando a hallar el equivalente entre el sistema decimal y binario, se olvida siempre, quizás por que se ignora, que el 1 y el 0 no se inventan para crear una numeración.
  • Así resulta frecuente ver que los matemáticos tienen dificultad para aplicar funciones en módulo binario, que no sean puramente aritméticas (es decir algebraicas). Del mismo modo, los que estudian ciencias de la computación parecen desconocer el principio del 1 y el 0 basado en las matemáticas.
  • Todo ello se ve más confuso, por cuanto se habla de tensiones y arbitrariamente se le adjudica un valor u otro, a diferentes tensiones (un rango de tensión, para el valor "1" y un rango de tensión para el valor "0", que sea el voltaje superior, o el inferior uno u otro, se resume en llamarlo lógica positiva, o lógica negativa.
  • Se aclara para todos, y que los profesores tomen nota; que el "1" es la resultante matemática de la división, en la función: X/X=1 sea cual sea el valor de X, e igualmente el "0" resulta, no de ningún invento extraordinario, recién descubierto, si no de la resta: X-X=0 sea cual sea el valor de X. Por tanto, no debiera resultar tan abstracto para el matemático aplicar álgebra binaria cual la decimal, ni debiera resultar tan solemne al alumno de computación el origen del "0" y el "1"

Suma binaria

La suma binaria se puede realizar cómodamente siguiendo las tres reglas descritas: 1º Si el número de unos (en sentido vertical) es par el resultado es 0. 2º Si el número de unos (en sentido vertical) es impar el resultado es 1. 3º Acarreo tantos unos como parejas (completas) de números 1 haya.

Por ejemplo:

Hay que sumar 1010 (que en decimal es 10) y 1111 (que en decimal es 15).

1010
1111
11001

(que en decimal son 25).

Resta binaria

Las cuatro reglas básicas para la resta de números binarios son:

  • 0 - 0 = 0
  • 1 – 1 = 0
  • 1 – 0 = 1
  • 0 – 1 = 1 ( con acarreo negativo de 1)

Al restarse números algunas veces se genera un acarreo negativo que pasa a la siguiente columna de la izquierda. En binario solo se produce este acarreo cuando se intenta restar 1 de 0 (4ª regla).

Ejemplo sobre esta situación, restar 011 de 101:

101 – 011 = 010

Detalle de la operación:

101
-
011
----------
010

1. en la columna derecha se realiza la resta de 1 – 1 = 0

2. en la columna central se produce un acarreo negativo de 1 a la columna siguiente (4ª regla) que da lugar a 10 en esta columna, luego 10 -1 = 1 con acarreo de 1 a la siguiente columna

3. en la columna izquierda, se resta 1 del acarreo producido en la anterior columna y da como resultado 0, luego se resta 0 – 0 = 0

Multiplicación binaria

La multiplicación binaria es tan sencilla como la decimal, y es que funcionan de la misma manera. Aquí tienen un ejemplo de multiplicación binaria. Supongamos que multipliquemos 10110 por 1001:

10110
1001
-------------
10110
00000
00000
10110
-------------
11000110


Vamos multiplicando por cada dígito de 1001 el conjunto 10110 y luego procedemos a hacer la suma.

Hay otro tipo de procedimientos para realizar esta multiplicación sin signo y es el llamado "Multiplicación por el método de Suma-Desplazamiento".

División binaria

Reglas de la división binaria: 0/0 no permitida, 1/0 no permitida,0/1=0, 1/1=1 .

  • División: Se hace como en la realidad.

Ejemplo de división binaria: En este ejemplo, hay que comenzar cogiendo 4 cifras del dividendo para sobrepasar al divisor. Así resulta que 1011 entre 111 toca a 1 (solo puede ser 1 o 0). 1 por 111 es 111 y falta 100 hasta llegar a 1011. Bajando la siguiente cifra (un 0) resulta que 1000 entre 111 toca a 1. Así sucesivamente.


11110111 /11001
-1000 1101
00111
000

Como operación digital (2)

Exactamente igual que la operación binaria no digital, salvo que cambia la suma "1 + 1 = 0 y acarreo 1" por 1+1=1. Es decir, que en la suma digital no se acarrea ninguna cifra. Por lo demás, es igual que la suma binaria.

Como operación de un subsistema de ejecución (3)

Hay muchos más tipos para tratar convenientemente la información en un sistema microprocesador, tales como manejo de variables de cadenas, movimientos de datos entre secciones físicas etc... para una mayor profundidad en detalles sobre el tema, ver juego básico de instrucciones de un sistema microprocesador o juego de instrucciones de un microprocesador determinado.

Como proceso de datos numéricos (4)

  • Debe tenerse en consideración que esta clasificación es una aproximación para afrontar el tema con cierto orden, basado en el registro enciclopédico, ya que estrictamente unos campos entran en otros, y resulta imposible separar de modo absoluto cada uno de ellos, considerando esta, una clasificación plenamente aceptable.

Operaciones lógicas

Operaciones aritméticas

  • Son las mismas tratadas en la primera sección

Operaciones Comparativas

Operaciones de Desplazamiento

Operaciones de Rotación

No hay comentarios: