You are on page 1of 21

Operaciones con bits

Operaciones con bits

De acuerdo a Forouzan (2003) las operaciones aritméticas comprenden las


operaciones básicas que conocemos como son la suma, resta, multiplicación y
división, estas operaciones pueden ser aplicadas tanto a enteros como a números de
punto flotante, y pueden ocuparse en diferentes sistemas como el Decimal, Binario,
Octal y Hexadecimal.

1. Operaciones con binarios

1.1 Suma de binarios

1.1.1 Suma de binarios sin signo (positivos)

La primera operación binaria que analizaremos es la suma para elementos


positivos, la cual tiene grandes similitudes con la suma decimal con la que estamos
familiarizados, y su procedimiento es el siguiente:

1. Se realiza la primera suma de elementos binarios empezando por el dígito


menos significativo, es decir, se suma de derecha a izquierda.
2. Para efectuar la suma de binarios se debe considerar la siguiente tabla que
muestra los posibles resultados, debemos recordar que una suma de binarios
sólo puede darnos dos resultados, 0 o 1.


 Operación
 Resultado
 Acarreo


0
+
0
 0
 


1
+
0
 1
 


1
+
1
 10
=
0
y
tiene
acarreo
 1


1
+
1
+
1
 11
=
1
y
tiene
acarreo
 1


Tabla 1. Suma Binaria.

01 / 21
Operaciones con bits

3. Una vez realizada la suma se deberá establecer si ésta tiene acarreo o no, y
volver a sumar, y así sucesivamente hasta terminar.
4. Si hay un acarreo al final después de la suma de la columna del extremo
izquierdo, éste se debe tomar en cuenta.

Para ilustrar de mejor manera el procedimiento, analicemos el siguiente ejemplo


de la operación: 011 + 110

1 1 
 Acarreo
tomando
como

referencia
la
Tabla
de
suma

binaria

0 1 1
Operación

+ 1 1 0
1 0 0 1 Resultado


Siguiendo este mismo procedimiento analicemos otro ejemplo:

1) Realizar la suma de 1001 + 1111


1 1 1 1
1 0 0 1
+ 1 1 1 1
1 1 0 0 0

Es muy importante mencionar que no es necesario considerar la suma de más de


dos números binarios debido a que en todos los sistemas digitales la suma sólo puede
manejar dos números a la vez.

1.1.2 Suma de binarios con signo (positivo y negativo)

1.1.2.1 Suma en el complemento a dos

Blanco (2003) menciona que los pasos para realizar la suma en el complemento a
dos son los siguientes:

1. “Se suman ambos números según la regla aritmética de la suma binaria,


incluido el bit de signo, propagándose el acarreo entre bits.
2. Se desprecia el acarreo final” (p. 11).
La suma en el complemento a dos es una forma de representación de números
con signo, pudiendo realizar operaciones tanto con números positivos como
negativos, por lo que la suma podría efectuarse en cualquier de las siguientes
opciones:

• Suma en el complemento a dos de dos números positivos


• Suma en el complemento a dos de un número positivo y un número negativo
menor
• Suma en el complemento a dos de un número positivo y un número negativo
mayor
• Suma en el complemento a dos de dos números negativos
• Suma en el complemento a dos de dos números iguales y opuestos
Analizaremos cada una de ellas con un ejemplo en el que consideraremos a los
números 9 y 4 decimales tomando todas estas opciones para su suma en binario
con un patrón de 8 bits para cada número.
02 / 21
Operaciones con bits

1.1.2.2 Suma en el complemento a dos de dos números positivos

Esta es la operación más sencilla, para esto consideramos los dos números
propuestos como positivos siendo la operación que realizaremos 9 + 4.

1) Como primer paso convertimos los números decimales a binario, dándonos


como resultado: 9 = 1001 y 4 = 100
2) Como siguiente paso debemos completar en cada número el patrón de bits
hasta llegar a 8 bits, por lo que quedarían de la siguiente forma: 9 = 00001001 y
4 = 00000100
3) Como ambos números son positivos, en el último paso realizamos la suma de
los dos números binarios considerando la Tabla 1. Suma Binaria, quedando de
la siguiente manera:

0 0 0 0 1 0 0 1 (9 decimal)
+ 0 0 0 0 0 1 0 0 (4 decimal)
0 0 0 0 1 1 0 1 (13 decimal)

En esta operación no hubo acarreo, y es importante notar que el bit del extremo
izquierdo de ambos números es 0, lo que indica que son positivos, y el bit del extremo
izquierdo del resultado de la suma también es 0 lo que indica que el resultado es
positivo. El resultado de la suma es 00001101 en binario, siendo igual a 13 en
decimal.

Si observas bien, hay gran similitud entre la forma en que se realiza una suma
binaria sin signo, cuando los dos números son positivos y una suma binaria con signo,
cuando también los dos números son positivos, empleando en ambos casos el formato
de complemento a dos; la única diferencia que debes considerar es que si al final de
la suma binaria sin signo, existe un acarreo en el extremo izquierdo, éste se debe
descartar.

1.1.2.3 Suma en el complemento a dos de un número positivo y un número


negativo menor

En esta operación debemos considerar a uno de los dos números como negativo y
éste debe ser el menor de los dos, por lo tanto la operación que realizaremos es
9 + -4.

1) Como primer paso convertimos los números decimales a binario, dándonos


como resultado: 9 = 1001 y 4 = 100
2) Como siguiente paso debemos completar en cada número el patrón de bits
hasta llegar a 8 bits, por lo que quedarían de la siguiente forma: 9 = 00001001 y
4 = 00000100
3) Como uno de los números es negativo, el siguiente paso es obtener el
complemento a dos del número para que pueda ser negativo (-4), por lo que
debemos complementar a dos 00000100, dándonos como resultado 11111100.

03 / 21
Operaciones con bits

4) Como siguiente paso realizamos la suma de los dos números binarios


considerando la Tabla Suma Binaria, quedando de la siguiente manera:
1 1 1 1 1
0 0 0 0 1 0 0 1 (9 decimal)
+ 1 1 1 1 1 1 0 0 (-4
decimal)
0 0 0 0 0 1 0 1 (5
decimal)

Como el signo del extremo izquierdo del resultado de la suma es 0, quiere decir que
la suma es positiva, porque el número mayor es positivo, por lo tanto no se requiere
realizar ningún paso adicional para comprobar que la operación es correcta.

Es importante recordar que en el formato de complemento a dos, si existe al final de


la suma un acarreo en el extremo izquierdo, éste se debe descartar.

El resultado de la suma es 00000101 en binario, siendo igual a 5 en decimal.

1.1.2.4 Suma en el complemento a dos de un número positivo y un número


negativo mayor

En esta operación debemos considerar a uno de los números como negativo y éste
debe ser el mayor de los dos, por lo tanto la operación que realizaremos es -9 + 4.

1) Como primer paso convertimos los números decimales a binario, dándonos


como resultado: 9 = 1001 y 4 = 100
2) Como siguiente paso debemos completar en cada número el patrón de bits
hasta llegar a 8 bits, por lo que quedarían de la siguiente forma: 9 = 00001001 y
4 = 00000100
3) Como uno de los números es negativo, el siguiente paso es obtener el
complemento a dos del número para que pueda ser negativo (-9), por lo que
debemos complementar a dos 00001001, dándonos como resultado 11110111.
4) Como siguiente paso realizamos la suma de los dos números binarios
considerando la Tabla 1. Suma Binaria, quedando de la siguiente manera:

1 1 1 1 1
0 0 0 0 1 0 0 1 (9 decimal)
+ 1 1 1 1 1 1 0 0 (-4
decimal)
0 0 0 0 0 1 0 1 (5
decimal)

Como el signo del extremo izquierdo del resultado de la suma es 0, quiere decir que
la suma es positiva, porque el número mayor es positivo, por lo tanto no se requiere
realizar ningún paso adicional para comprobar que la operación es correcta.

Es importante recordar que en el formato de complemento a dos, si existe al final de


la suma un acarreo en el extremo izquierdo, éste se debe descartar.

El resultado de la suma es 00000101 en binario, siendo igual a 5 en decimal.

04 / 21
Operaciones con bits

1.1.2.4 Suma en el complemento a dos de un número positivo y un número


negativo mayor

En esta operación debemos considerar a uno de los números como negativo y éste
debe ser el mayor de los dos, por lo tanto la operación que realizaremos es -9 + 4.

1) Como primer paso convertimos los números decimales a binario, dándonos


como resultado: 9 = 1001 y 4 = 100
2) Como siguiente paso debemos completar en cada número el patrón de bits
hasta llegar a 8 bits, por lo que quedarían de la siguiente forma: 9 = 00001001 y
4 = 00000100
3) Como uno de los números es negativo, el siguiente paso es obtener el
complemento a dos del número para que pueda ser negativo (-9), por lo que
debemos complementar a dos 00001001, dándonos como resultado 11110111.
4) Como siguiente paso realizamos la suma de los dos números binarios
considerando la Tabla 1. Suma Binaria, quedando de la siguiente manera:
1
1 1 1 1 0 1 1 1 (-9 decimal)
+ 0 0 0 0 0 1 0 0 (4 decimal)
1 1 1 1 1 0 1 1 (-5 decimal)

5) Como el signo del extremo izquierdo del resultado de la suma es 1, quiere


decir que la suma es negativa, porque el número mayor es negativo, pero ésta
se encuentra en el formato de complemento a dos, por lo que para comprobar
que la operación es correcta y obtener su verdadera magnitud, se debe sacar
el complemento a dos del resultado de la suma. El complemento a dos de
11111011 es 00000101.

000000101 es igual a 5 en decimal, por lo que la operación es correcta, y 11111011


es el resultado de la suma en binario, siendo igual a -5 en decimal.

1.1.2.5 Suma en el complemento a dos de dos números negativos

En esta operación vamos a considerar que ambos números son negativos, por lo
tanto la operación que realizaremos es -9 + -4.

1) Como primer paso convertimos los números decimales a binario, dándonos


como resultado: 9 = 1001 y 4 = 100
2) Como siguiente paso debemos completar en cada número el patrón de bits
hasta llegar a 8 bits, por lo que quedarían de la siguiente forma: 9 = 00001001 y
4 = 00000100
3) Como ambos números son negativos, el siguiente paso es obtener el
complemento a dos de los dos números para que puedan ser negativos y quedar
como -9 y -4, por lo que debemos complementar a dos 00001001, dándonos
como resultado 11110111, y también debemos complementar a dos 00000100,
dándonos como resultado 11111100.

05 / 21
Operaciones con bits

4) Como siguiente paso realizamos la suma de los dos números binarios


considerando la Tabla 1. Suma Binaria, quedando de la siguiente manera:
1 1 1 1 1 1
1 1 1 1 0 1 1 1 (-9 decimal)
+ 1 1 1 1 1 1 0 0 (-4 decimal)
1 1 1 1 0 0 1 1 (-13 decimal)

5) Como el signo del extremo izquierdo del resultado de la suma es 1, quiere


decir que la suma es negativa, porque ambos números son negativos, pero ésta
se encuentra en el formato de complemento a dos, por lo que para comprobar
que la operación es correcta y obtener su verdadera magnitud se debe obtener
el complemento a dos del resultado de la suma. El complemento a dos de
11110011 es 00001101.

000001101 es igual a 13 en decimal, por lo que la operación es correcta, y 11110011


es el resultado de la suma en binario, siendo igual a -13 en decimal.

1.1.2.6 Suma en el complemento a dos de dos números iguales y opuestos

En esta operación consideraremos que los dos números son iguales, pero uno de
ellos es positivo y el otro es negativo, por lo tanto la operación que realizaremos es 9
+ -9.

1) Como primer paso convertimos los números decimales a binario, que en este
caso es el mismo, dándonos como resultado: 9 = 1001.
2) Como siguiente paso debemos completar en el número el patrón de bits hasta
llegar a 8 bits, por lo que quedarían de la siguiente forma: 9 = 00001001.
3) Como uno de los números es negativo, el siguiente paso es obtener el
complemento a dos del número para que pueda ser negativo (-9), por lo que
debemos complementar a dos 00001001, dándonos como resultado 11110111.
4) Como siguiente paso realizamos la suma de los dos números binarios
considerando la Tabla 1. Suma Binaria, quedando de la siguiente manera:

1 1 1 1 1 1 1 1
0 0 0 0 1 0 0 1 (9 decimal)
+ 1 1 1 1 0 1 1 1 (-9 decimal)
0 0 0 0 0 0 0 0 (0 decimal)

5) Nuevamente se ignora el último acarreo, por lo que el resultado en binario es


00000000 y en decimal es 0.

Si hubiésemos tomado el número 4 para realizar la operación 4 - 4, también el


resultado sería 0, porque siempre que se sumen dos números iguales con signos
opuestos el resultado será 0.

06 / 21
Operaciones con bits

1.2 Resta de binarios


1.2.1 Resta en el complemento a dos

Es muy interesante comentar que la operación de resta se realiza de la misma


forma que la suma, debido a que para restar se invierte el segundo número, es decir
se obtiene su complemento a dos y se suma, para esto retomaremos uno de los
ejemplos anteriores ocupados para la suma; esta operación se realizó anteriormente
como 9 + -4, ahora la realizaremos como 9 - 4.

Al respecto Oviedo (2004, p. 29) comenta que la resta binaria complemento a dos
“toma el complemento a dos del sustrayendo (incluyendo el bit de signo y lo suma al
minuendo (incluyendo el bit de signo)”

Por lo tanto, analicemos la resta de 4 a 9, quedando representado de la siguiente


manera 9 - 4

1) Como primer paso convertimos los números decimales a binario, dándonos


como resultado: 9 = 1001 y 4 = 100
2) Como siguiente paso debemos completar en cada número el patrón de bits
hasta llegar a 8 bits, por lo que quedarían de la siguiente forma: 9 = 00001001 y
4 = 00000100
3) El siguiente paso es obtener el complemento a dos del segundo número, que
es el número a restar (4), por lo que debemos complementar a dos 00000100,
dándonos como resultado 11111100.
4) Como siguiente paso realizamos la suma de los dos números binarios
considerando la Tabla 1. Suma Binaria, quedando de la siguiente manera:

1 1 1 1 1
0 0 0 0 1 0 0 1 (9 decimal)
- 1 1 1 1 1 1 0 0 (-4
decimal)
0 0 0 0 0 1 0 1 (5
decimal)
Como el signo del extremo izquierdo del resultado de la suma es 0, quiere decir que
la resta es positiva, porque el número mayor es positivo, por lo tanto no se requiere
realizar ningún paso adicional para comprobar que la operación es correcta.
CONCEPTO CLAVE
] Es importante recordar que en el formato de complemento
a dos, si existe al final de la resta un acarreo en el extremo
izquierdo, éste se debe descartar.

El resultado de la resta es 00000101 en binario, siendo igual a 5 en decimal.


]
Si observas es el mismo resultado que el de la suma, razón por la que estas dos
operaciones pueden quedar representadas en su similitud de la siguiente forma:
Suma = Resta
Número 1 + (-Número2) = Número 1 - Número 2

07 / 21
Operaciones con bits

2. Operaciones con hexadecimales


2.1 Suma de hexadecimales

La suma de hexadecimales se lleva de forma muy similar al sistema decimal, sólo


con la consideración de que el acarreo que se tiene empieza a partir de que se rebasa
el dígito F hexadecimal, a diferencia del sistema decimal que se da cuando la suma
rebasa el dígito 9, y a partir de ahí debemos hacer acarreo, por ejemplo 9 + 2 nos dará
a 11 en decimal, colocaremos como resultado 1 y tendremos un acarreo de 1, pero si
en hexadecimal tenemos 5 y F, que F representa a 16, nos dará a 14, colocando como
resultado 4 y teniendo 1 como acarreo, esto debido a que el 17 rebasa la representación
del sistema hexadecimal, y debemos volver al 0 y llevar acarreo de 1, por lo que el 17
quedaría como 10, el 18 como 11, el 19 como 12, el 20 como 13 y el 21 como 14. Es
importante que recuerdes la función que cumple el acarreo y que consiste en que ese
elemento debe ser sumando en la siguiente columna, por esa razón lo he dejado en
un color diferente para que te sea más fácil identificarlo.
+
 0
 1
 2
 3
 4
 5
 6
 7
 8
 9
 A
 B
 C
 D
 E
 F


0
 0
 1
 2
 3
 4
 5
 6
 7
 8
 9
 A
 B
 C
 D
 E
 F


1
 1
 2
 3
 4
 5
 6
 7
 8
 9
 A
 B
 C
 D
 E
 F
 10


2
 2
 3
 4
 5
 6
 7
 8
 9
 A
 B
 C
 D
 E
 F
 10
 11


3
 3
 4
 5
 6
 7
 8
 9
 A
 B
 C
 D
 E
 F
 10
 11
 12


4
 4
 5
 6
 7
 8
 9
 A
 B
 C
 D
 E
 F
 10
 11
 12
 13


5
 5
 6
 7
 8
 9
 A
 B
 C
 D
 E
 F
 10
 11
 12
 13
 14


6
 6
 7
 8
 9
 A
 B
 C
 D
 E
 F
 10
 11
 12
 13
 14
 15


7
 7
 8
 9
 A
 B
 C
 D
 E
 F
 10
 11
 12
 13
 14
 15
 16


8
 8
 9
 A
 B
 C
 D
 E
 F
 10
 11
 12
 13
 14
 15
 16
 17


9
 9
 A
 B
 C
 D
 E
 F
 10
 11
 12
 13
 14
 15
 16
 17
 18


A
 A
 B
 C
 D
 E
 F
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19


B
 B
 C
 D
 E
 F
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 1A


C
 C
 D
 E
 F
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 1A
 1B


D
 D
 E
 F
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 1A
 1B
 1C


E
 E
 F
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 1A
 1B
 1C
 1D


F
 F
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 1A
 1B
 1C
 1D
 1E



Tabla de sumar hexadecimales (Barco, 2005, p 240)

08 / 21
Operaciones con bits

Para entender de forma más sencilla la suma de hexadecimales vamos a resolver


los siguientes ejercicios:
Muestre el resultado de la siguiente suma hexadecimal: x489 + xF58

1
 
 1
 
 
 Acarreo
tomando
como

referencia
la
Tabla
de
suma
hexadecimal


Operación


 4
 8
 9

Resultado

+
 F
 5
 8


1
 3
 E
 1


El acarreo al final de la suma no debe descartarse, sino que debe ser tomando en
cuenta.

Veamos otro ejercicio más complejo. Muestre el resultado de la siguiente suma


hexadecimal: x485A9 + x9E2F1 + F5FF8
1
 1
 1
 2
 1
 



 4
 8
 5
 A
 9
 
 
 Acarreo
tomando
como

referencia
la
Tabla
de
suma
hexadecimal



 9
 E
 2
 F
 1
 
 Operación


+
 F
 5
 F
 F
 8
 
 Resultado


1
 D
 C
 8
 9
 2



Este ejercicio puede parecer más complejo debido a que los resultados exceden la
capacidad de la representación de la tabla de sumar hexadecimales.

Por lo que mostraremos cuál es el razonamiento correcto para resolver esta clase
de operaciones, para esto tomaremos la primera columna, cuya suma es 9 + 1 + 8.
Para resolverla el procedimiento es sencillo si ocupamos la tabla, ya que el 9 + 1 de
acuerdo a la tabla nos da como resultado A, y A + 8 nos da como resultado 12. La
primera columna no excede el resultado de la tabla

Por lo que continuamos con la segunda columna colocando el acarreo y la suma


entonces a realizar es 1 + A + F + F. Para resolverla la primera parte la encontramos
en la tabla 1 +A nos da como resultado B y no tenemos acarreo, posteriormente B +
F también lo encontramos en la tabla cuyo resultado es 1A, pero nos queda resolver
1A + F, el resultado 1A excede los valores de representación de la tabla, por lo que el
razonamiento debe ser que al igual que en el sistema decimal cada 10 dígitos tenemos
un acarreo y este se va a ir incrementando de 10 en 10 en el sistema hexadecimal
sucede lo mismo solo que será cada 16 dígitos, por lo que la suma de 1A + F tendría
que considerarse en una suma de 16 dígitos de la siguiente forma:
1A + 0 = 1A, 1A + 1 = 1B, 1A + 2 = 1C, 1A + 3 = 1D, 1A + 4 = 1E, 1A + 5 = 1F, 1A + 6
= 20, 1A + 7 = 21, 1A + 8 = 22, 1A + 9 = 23, 1A + A = 24, 1A + B = 25, 1A + C = 26, 1A +
D = 27, 1A + E = 28, 1A + F = 29

09 / 21
Operaciones con bits

El resultado por lo tanto es 9 y su acarreo es 2. Este mismo procedimiento debe


seguirse aplicando en las demás columnas hasta obtener el último resultado tomando
en cuenta el acarreo final.

De esta forma si las operaciones exceden la tabla lo importante es recordar el


razonamiento correcto para resolver la operación.

Resta de hexadecimales
La resta de hexadecimales es similar a la suma, se ocupa la misma tabla que
empleamos para la suma solo que es necesario antes efectuar algunos procedimientos
previos. Existen 2 maneras en que podemos resolver una resta hexadecimal, y son
los siguientes:

Método 1: Complemento a 2
1. Obtener el complemento a 2 del sustraendo hexadecimal, sumar el resultado al
minuendo e ignorar el acarreo.

Para comprender mejor su operación consideremos el siguiente ejercicio:


Muestre el resultado de la siguiente

 
resta
 hexadecimal:

 x592 – x3A5
Cuya representación sería:

 5
 9
 2


‐
 3
 A
 5



 
 
 

Por lo que debemos empezar obteniendo el complemento a 2 del sustraendo que
es 345, para obtener el complemento

 a 2 debemos pasar el número a binario y ahí
obtener su complemento a 2, 3A5 convertido a binario es igual a 1110100101, su
complemento a dos es 0001011011 y después convertimos el complemento a 2 a
hexadecimal lo que nos da como resultado C5B.

El siguiente paso es sumar este



 nuevo

 valor

 
 al minuendo, por lo que la nueva
representación es:

 5
 9
 2


+
 C
 5
 B



Con esta nueva representación podemos
 
 
 la resta como si se tratara de una
resolver
suma, utilizando la Tabla 2. Sumar hexadecimales, el resultado es el siguiente:

1
 
 
 



 5
 9
 2


+
 C
 5
 B



 1
 E
 D



Recuerda que en la resta se debe ignorar el acarreo, aunque estemos sumando,
sólo se debe considerar cuando se trata de una suma hexadecimal, no de una resta
en donde se obtuvo un complemento a dos y el equivalente hexadecimal para hacer
la suma.

10 / 21
Operaciones con bits

Método 2: Resta al máximo Dígito

2. La segunda forma de resolverlo es más sencilla y consiste en restar cada dígito


hexadecimal del sustraendo a F y luego sumarle 1, por lo que si consideramos el mismo
ejercicio anterior de x592 - x3A5 con este método primero tendríamos que restar cada
dígito hexadecimal de 3A5 a FFF y luego sumarle 1 quedando de la siguiente manera:

F F F
- 3 5 A
+ C A 5
1
C 5 B
Si observamos éste es el mismo resultado que obtuvimos con el complemento a
2 del primer método, por lo que podemos ocupar alguno de estos dos métodos para
realizar la resta de hexadecimales.

Este método es más sencillo de realizar, sólo debes tener cuidado en restar de
forma correcta.
1
 
 
 
 
 Acarreo
tomando
como
referencia
la
Tabla
de
suma
hexadecimal



 5
 9
 2
 Operación


Resultado

+
 C
 5
 B



 1
 E
 D

Nuevamente descartamos el acarreo final, por lo que el resultado es x1ED

3 Operaciones con octales


3.1 Suma de octales +
 0
 1
 2
 3
 4
 5
 6
 7


0
 0
 1
 2
 3
 4
 5
 6
 7


1
 1
 2
 3
 4
 5
 6
 7
 10


2
 2
 3
 4
 5
 6
 7
 10
 11


3
 3
 4
 5
 6
 7
 10
 11
 12


4
 4
 5
 6
 7
 10
 11
 12
 13


5
 5
 6
 7
 10
 11
 12
 13
 14


6
 6
 7
 10
 11
 12
 13
 14
 15


7
 7
 10
 11
 12
 13
 14
 15
 16



Tabla 3. Sumar Octales (Barco, 2005, p. 238).
11 / 21
Operaciones con bits

La suma de octales se realiza de la misma manera que la suma de hexadecimales


sólo considerando que tienen únicamente 8 dígitos, a partir del 9 empieza el acarreo.
Para comprender mejor su operación consideremos el siguiente ejercicio:

Muestre el resultado de la siguiente resta hexadecimal: o72 + o57

1
 1
 
 
 Acarreo
tomando
como

referencia
la
Tabla
de
suma
octal



 7
 2
 Operación


+
 5
 7
 Resultado


1
 5
 1


Se siguen los mismos
 procedimientos y razonamientos que en la suma de


hexadecimales.
Analicemos otro ejercicio: o275 + o647 + o326

1
 1
 2
 
 
 Acarreo
tomando
como

referencia
la
Tabla
de
suma
octal



 2
 7
 5
 Operación


Resultado


 6
 4
 7


+
 3
 2
 6


1
 4
 7
 2



3.2 Resta de octales

Al igual que la suma, la resta también sigue los mismos procedimientos y


razonamientos que la resta hexadecimal, por lo que puede resolverse también por las
mismas dos formas de complemento a dos y de restar del dígito máximo octal, que en
este caso es 7.

Para comprender mejor su operación consideremos el siguiente ejercicio: o665 -


o367
Vamos a resolverlo con el método más sencillo que es el de la Resta al máximo
dígito.
7 7 7
- 3 6 7
+ 4 1 0
1
4 1 1

12 / 21
Operaciones con bits

Ahora que hemos convertido el sustraendo por medio de este método podemos
sumarlo al minuendo, quedando de la siguiente manera:

1
 
 
 
 
 Acarreo
tomando
como

referencia
la
Tabla
de
suma
octal



 6
 6
 5
 Operación


+
 4
 1
 1
 Resultado



 2
 7
 6



Nuevamente en la resta descartamos el acarreo final, por lo que el resultado es
o276.

También existen operaciones de división y de multiplicación en los sistemas


binarios, octal y hexadecimal, pero la suma y la resta son las operaciones con bits más
utilizadas y de ella derivan las demás y son las que hemos presentado.

4 Operaciones lógicas
Debemos partir indicando que un bit sólo puede representar 0 o 1, y que estos
valores en las operaciones lógicas toman también valores lógicos teniendo como
referencia el bit representando, siendo que un 0 se interpreta como un valor lógico
falso y un 1 como un valor lógico verdadero.

Las operaciones lógicas son NOT, AND, OR, XOR, NAND y NOR y cada una
ocupa una tabla de verdad.

4.1 Operador Unario NOT

Este operador se conoce como unario porque sólo tiene una entrada para evaluar,
es decir sólo se puede aplicar sobre 1 patrón de bits, y su operación consiste en
invertir los bits, cambiando el 0 a 1 y el 1 a 0, su tabla de verdad es la siguiente:

NOT x NOT x
0 1
1 0

Si lo analizamos con un enunciado como “México ha ganado una copa del mundo en
fútbol soccer” y ocupamos el operador NOT, el resultado sería “México no ha ganado
una copa del mundo en fútbol soccer”, solamente hacemos una negación, inversión
o complemento.

13 / 21
Operaciones con bits

Para entender mejor su operación, veamos el siguiente ejemplo: Use el operador


NOT en el patrón con bits 10011000.

Utilizando su tabla de verdad: x NOT x


1 0
0 1
0 1
1 0
1 0
0 1
0 1
0 1

Por lo tanto, el resultado es 011000111

En el caso del operador unario suele ser muy sencilla la operación, considerando
que sólo se invierten los bits.

4.2 Operador Binario AND

Este operador utiliza dos patrones de bits, y consiste en ir evaluando un bit de cada
uno de los dos patrones para aplicar la tabla de verdad correspondiente, este operador
significa disyunción, su tabla de verdad es la siguiente:

AND x y x AND y
0 0 0
0 1 0
1 0 0
1 1 1

Si lo analizamos con algunos enunciados nos daremos cuenta que sólo será
verdadero o y dará 1 cuando ambos enunciados se cumplan, analicemos cada caso
de la tabla de verdad:

1. México ha ganado una copa del mundo en fútbol soccer y es un país del continente
europeo.
Aquí observamos que el primer enunciado no se cumple, es falso, porque México
no ha ganando ninguna copa del mundo, el segundo tampoco se cumple porque no
pertenece al continente europeo, por lo que la operación quedaría representada como
0 AND 0 y el resultado sería 0.

2. México ha ganado una copa del mundo en fútbol soccer y es un país del continente
americano.
Aquí observamos que el primer enunciado no se cumple, es falso, porque México no
ha ganando ninguna copa del mundo, el segundo sí se cumple, es verdadero porque
pertenece al continente americano, por lo que la operación quedaría representada
como 0 AND 1 y el resultado sería 0.

14 / 21
Operaciones con bits

3. México no ha ganado una copa del mundo en fútbol soccer y es un país del
continente europeo.
Aquí observamos que el primer enunciado sí se cumple, es verdadero porque
México no ha ganado ninguna copa del mundo, el segundo no se cumple porque no
pertenece al continente europeo, por lo que la operación quedaría representada como
1 AND 0 y el resultado sería 0.

4. México no ha ganado una copa del mundo en fútbol soccer y es un país del
continente americano.
Aquí observamos que el primer enunciado sí se cumple, es verdadero porque
México no ha ganado ninguna copa del mundo, el segundo también se cumple porque
pertenece al continente americano, por lo que la operación quedaría representada
como 1 AND 1 y el resultado sería 1.

Para entender mejor su operación veamos el siguiente ejemplo: Use el operador


AND con los patrones de bits 10011000 y 00110101

Utilizando su tabla de verdad

AND
x y x AND y
1 0 0
0 0 0
0 1 0
1 1 1
1 0 0
0 1 0
0 0 0
0 1 0

Por lo tanto, el resultado es 00010000

Recuerda que con e l operador AND solamente tendremos como resultado 1,


cuando ambos bits sean 1, en caso contrario dará 0.

4.3 Operador Binario OR

Este operador utiliza dos patrones de bits, y consiste en ir evaluando un bit de cada
uno de los dos patrones para aplicar la tabla de verdad correspondiente, este operador
significa conjunción, su tabla de verdad es la siguiente:

OR x
 y
 x
OR
y


0
 0
 0


0
 1
 1


1
 0
 1


1
 1
 1


15 / 21
Operaciones con bits

Si lo analizamos con algunos enunciados nos daremos cuenta que será verdadero
o dará 1, si tan sólo uno de los enunciados se cumple, analicemos cada caso de la
tabla de verdad:

1. México ha ganado una copa del mundo en fútbol soccer o es un país del
continente europeo.
Aquí observamos que el primer enunciado no se cumple, es falso, porque México
no ha ganando ninguna copa del mundo, el segundo tampoco se cumple porque no
pertenece al continente europeo, por lo que la operación quedaría representada como
0 OR 0 y el resultado sería 0.

2. México ha ganado una copa del mundo en fútbol soccer o es un país del continente
americano.
Aquí observamos que el primer enunciado no se cumple, es falso, porque México no
ha ganando ninguna copa del mundo, el segundo sí se cumple, es verdadero porque
pertenece al continente americano, por lo que la operación quedaría representada
como 0 OR 1 y el resultado sería 1.

3. México no ha ganado una copa del mundo en fútbol soccer o es un país del
continente europeo.
Aquí observamos que el primer enunciado sí se cumple, es verdadero porque
México no ha ganado ninguna copa del mundo, el segundo no se cumple porque no
pertenece al continente europeo, por lo que la operación quedaría representada como
1 OR 0 y el resultado sería 1.

4. México no ha ganado una copa del mundo en fútbol soccer o es un país del
continente americano.
Aquí observamos que el primer enunciado sí se cumple, es verdadero porque
México no ha ganado ninguna copa del mundo, el segundo también se cumple porque
pertenece al continente americano, por lo que la operación quedaría representada
como 1 OR 1 y el resultado sería 1.

Para entender mejor su operación veamos el siguiente ejemplo: Use el operador


AND con los patrones de bits 10011000 y 00110101

Utilizando su tabla de verdad

OR
X y x OR y
1 0 1
0 0 0
0 1 1
1 1 1
1 0 1
0 1 1
0 0 0
0 1 1

Por lo tanto, el resultado es 00010000

Recuerda que con el operador OR solamente tendremos como resultado 0, cuando


los dos bits sean 0, en caso contrario dará 1.

16 / 21
Operaciones con bits

4.4 Operador Binario XOR

Este operador utiliza dos patrones de bits, y consiste en ir evaluando un bit de cada
uno de los dos patrones para aplicar la tabla de verdad correspondiente, este operador
significa conjunción excluyente.

Esta operación puede considerase similar de la siguiente manera:

A XOR B = (NOT (A) y B) OR (A AND NOT (B))

Su tabla de verdad es la siguiente:

x y x AND y
0 0 0
0 1 1
1 0 1
1 1 0

Si lo analizamos con algunos enunciados nos daremos cuenta que será verdadero
o dará 1, si tan sólo uno de los enunciados se cumple pero no los dos, si los dos se
cumplen será falso, analicemos cada caso de la tabla de verdad:

1. México ha ganado una copa del mundo en fútbol soccer o es un país del
continente europeo.
Aquí observamos que el primer enunciado no se cumple, es falso, porque México
no ha ganando ninguna copa del mundo, el segundo tampoco se cumple porque no
pertenece al continente europeo, por lo que la operación quedaría representada como
0 XOR 0 y el resultado sería 0.

2. México ha ganado una copa del mundo en fútbol soccer o es un país del
continente americano.
Aquí observamos que el primer enunciado no se cumple, es falso, porque México no
ha ganando ninguna copa del mundo, el segundo sí se cumple, es verdadero porque
pertenece al continente americano, por lo que la operación quedaría representada
como 0 XOR 1 y el resultado sería 1.

3. México no ha ganado una copa del mundo en fútbol soccer o es un país del
continente europeo.
Aquí observamos que el primer enunciado sí se cumple, es verdadero porque
México no ha ganado ninguna copa del mundo, el segundo no se cumple porque no
pertenece al continente europeo, por lo que la operación quedaría representada como
1 XOR 0 y el resultado sería 1.

4. México no ha ganado una copa del mundo en fútbol soccer o es un país del
continente americano.
Aquí observamos que el primer enunciado sí se cumple, es verdadero porque
México no ha ganado ninguna copa del mundo, el segundo también se cumple porque
pertenece al continente americano, por lo que la operación quedaría representada
como 1 XOR 1 y el resultado sería 0, debido a que para el operador XOR sólo debe
cumplirse uno de los dos enunciados pero no los dos

17 / 21
Operaciones con bits

Aquí observamos que el primer enunciado sí se cumple, es verdadero porque


México no ha ganado ninguna copa del mundo, el segundo también se cumple porque
pertenece al continente americano, por lo que la operación quedaría representada
como 1 XOR 1 y el resultado sería 0, debido a que para el operador XOR sólo debe
cumplirse uno de los dos enunciados pero no los dos.

Para entender mejor su operación veamos el siguiente ejemplo: Use el operador


XOR con los patrones de bits 10011000 y 00110101

Utilizando su tabla de verdad

XOR
x y x XOR y
1 0 1
0 0 0
0 1 1
1 1 0
1 0 1
0 1 1
0 0 0
0 1 1

Con el operador XOR si los dos bits son iguales tendremos como resultado 0, si los
dos bits son diferentes tendremos como resultado 1.

Por lo tanto, el resultado es 00010000

Recuerda que con el operador XOR tendremos como resultado 0, cuando los bits
sean iguales, ya sea que ambos tengan valor de 1 o de 0, en caso de que sean
diferentes el resultado será 1.

4.5 Operador Binario NAND

Este operador utiliza dos patrones de bits, y consiste en ir evaluando un bit de cada
uno de los dos patrones para aplicar la tabla de verdad correspondiente, este operador
significa negación disyuntiva porque es la negación de AND.

Esta operación puede considerase similar de la siguiente manera:

A NAND B = NOT (A AND B)

Su tabla de verdad es la siguiente:

NAND
X y x NAND y
0 0 1
0 1 1
1 0 1
1 1 0

18 / 21
Operaciones con bits

Si lo analizamos con algunos enunciados nos daremos cuenta que será falso si
los dos enunciados se cumplen siendo verdaderos, de forma contraria siempre será
verdadero, analicemos cada caso de la tabla de verdad:

1. México ha ganado una copa del mundo en fútbol soccer y es un país del continente
europeo. (Este sería el enunciado con AND) debe ser negado.
Aquí observamos que el primer enunciado no se cumple, es falso, porque México
no ha ganando ninguna copa del mundo, el segundo tampoco se cumple porque no
pertenece al continente europeo, por lo que la operación quedaría representada como
0 NAND 0 y el resultado sería 1.

2. México ha ganado una copa del mundo en fútbol soccer y es un país del continente
americano. (Este sería el enunciado con AND) debe ser negado.
Aquí observamos que el primer enunciado no se cumple, es falso, porque México no
ha ganando ninguna copa del mundo, el segundo sí se cumple, es verdadero porque
pertenece al continente americano, por lo que la operación quedaría representada
como 0 NAND 1 y el resultado sería 1.

3. México no ha ganado una copa del mundo en fútbol soccer y es un país del
continente europeo. (Este sería el enunciado con AND) debe ser negado.
Aquí observamos que el primer enunciado sí se cumple, es verdadero porque
México no ha ganado ninguna copa del mundo, el segundo no se cumple porque no
pertenece al continente europeo, por lo que la operación quedaría representada como
1 NAND 0 y el resultado sería 1.

4. México no ha ganado una copa del mundo en fútbol soccer y es un país del
continente americano. (Este sería el enunciado con AND) debe ser negado.

Aquí observamos que el primer enunciado sí se cumple, es verdadero porque


México no ha ganado ninguna copa del mundo, el segundo también se cumple porque
pertenece al continente americano, por lo que la operación quedaría representada
como 1 NAND 1 y el resultado sería 0.
Para entender mejor su operación veamos el siguiente ejemplo: Use el operador
NAND con los patrones de bits 10011000 y 00110101

Utilizando su tabla de verdad


x y x NAND
y
1 0 1
0 0 1
0 1 1
1 1 0
1 0 1
0 1 1
0 0 1
0 1 1

Por lo tanto, el resultado es 11101111

Recuerda que con el operador NAND si los dos bits son 1 nos dará 0, en caso
contrario siempre será 1 el resultado.

19 / 21
Operaciones con bits

4.6 Operador Binario NOR

Este operador utiliza dos patrones de bits, y consiste en ir evaluando un bit de cada uno de los dos patrones
para aplicar la tabla de verdad correspondiente, este operador significa negación conjuntiva porque es la
negación de OR.

Esta operación puede considerase similar de la siguiente manera:

A NOR B = NOT (A OR B)

Su tabla de verdad es la siguiente:

NOR x y x NOR
y
0 0 1
0 1 0
1 0 0
1 1 0

Si lo analizamos con algunos enunciados nos daremos cuenta que será falso si tan sólo alguno de los
enunciados es verdadero, de forma contraria sólo será verdadero si los dos son falsos, analicemos cada caso
de la tabla de verdad:

1. México ha ganado una copa del mundo en fútbol soccer o es un país del continente europeo. (Este sería
el enunciado con OR) debe ser negado.
Aquí observamos que el primer enunciado no se cumple, es falso, porque México no ha ganando ninguna
copa del mundo, el segundo tampoco se cumple porque no pertenece al continente europeo, por lo que la
operación quedaría representada como 0 NOR 0 y el resultado sería 1.

2. México ha ganado una copa del mundo en fútbol soccer o es un país del continente americano. (Este sería
el enunciado con OR) debe ser negado.
Aquí observamos que el primer enunciado no se cumple, es falso, porque México no ha ganando ninguna
copa del mundo, el segundo sí se cumple, es verdadero porque pertenece al continente americano, por lo que
la operación quedaría representada como 0 NOR 1 y el resultado sería 0.

3. México no ha ganado una copa del mundo en fútbol soccer o es un país del continente europeo. (Este
sería el enunciado con OR) debe ser negado.
Aquí observamos que el primer enunciado sí se cumple, es verdadero porque México no ha ganado ninguna
copa del mundo, el segundo no se cumple porque no pertenece al continente europeo, por lo que la operación
quedaría representada como 1 NOR 0 y el resultado sería 0.

4. México no ha ganado una copa del mundo en fútbol soccer o es un país del continente americano. (Este
sería el enunciado con OR) debe ser negado.
Aquí observamos que el primer enunciado sí se cumple, es verdadero porque México no ha ganado ninguna
copa del mundo, el segundo también se cumple porque pertenece al continente americano, por lo que la
operación quedaría representada como 1 NOR 1 y el resultado sería 0.

Para entender mejor su operación veamos el siguiente ejemplo: Use el operador NOR con los patrones de
bits 10011000 y 00110101

20 / 21
Operaciones con bits

Utilizando su tabla de verdad

NOR
x y x NOR y
1 0 0
0 0 1
0 1 0
1 1 0
1 0 0
0 1 0
0 0 1
0 1 0

Por lo tanto, el resultado es 01000010

Recuerda que con el operador NOR si los dos bits son 0 nos dará 1, en caso contrario siempre será 0 el
resultado.

Las Tablas de verdad nos muestran el comportamiento de las compuertas lógicas, que son descritas por
Morris (2003, p. 28) como “circuitos electrónicos que operan con una o más señales de entrada para producir
una señal de salida”, estas señales solo pueden tomar dos valores, 0 ó 1, encendido o apagado.

REFERENCIAS

Blanco, C. (2003). Electrónica Digital. Oviedo, España: Universidad de Oviedo. [Versión electrónica]. Recuperado el 1 de
marzo de 2011, de http://books.google.com.mx/books?id=myOXwYAhOwgC&pg=PA23&dq=Electr%C3%B3nica+Digital&h
l=es&ei=XoB0TffmAoassAPtm8XOCw&sa=X&oi=book_result&ct=result&resnum=8&ved=0CE0Q6AEwBw#v=onepage&
q&f=false

Barco, C. (2005). Álgebra Booleana. Aplicaciones Tecnológicas. (1ª ed.). Caldas, Colombia: Editorial Universidad de
Caldas. [Versión electrónica]. Recuperado el 2 de marzo de 2011, de http://books.google.com.mx/books?id=x4EZbp4gnw
gC&printsec=frontcover&hl=es#v=onepage&q&f=false

Forouzan, B. A. (2003). Introducción a la ciencia de la computación: De la manipulación de datos a la Teoría de la


computación. México, D.F.: International Thomson Editores.

Morris, M. (2003). Diseño Digital. (3ª Ed.). México, D. F.: Pearson Educación. Recuperado el 2 de marzo de 2011, de http://
books.google.com.mx/books?id=2wWZyKu60cAC&printsec=frontcover&dq=morris+mano&hl=es&ei=Tw95TZ32OYe2tg
fMytDpBg&sa=X&oi=book_result&ct=book-thumbnail&resnum=2&ved=0CC0Q6wEwAQ#v=onepage&q&f=false

Oviedo, E. M. (2004). Lógica de Programación. (2ª ed.). Bogotá. Colombia: Ecoe Ediciones. [Versión electrónica].
Recuperado el 2 de marzo de 2011, de http://books.google.com.mx/books?id=Z_n5lbyJfrQC&printsec=frontcover&dq=L
%C3%B3gica+de+programaci%C3%B3n&hl=es&ei=WI50TcGzDoecsQPqr93ACw&sa=X&oi=book_result&ct=result&resnum
=1&ved=0CCQQ6AEwAA#v=onepage&q&f=false

21 / 21

You might also like