You are on page 1of 23

Gustavo D.

Modificado Oct 2012


Sistemas Numricos
Representacin de Enteros


Gustavo D. Modificado Oct 2012
1. Introduccin
Las mquinas construidas por el hombre son fundamentalmente de dos tipos. Un tipo
trata con la energa mientras que el otro trata con la informacin. Las computadoras
pertenecen a la categora de mquinas que tratan con la informacin. Una
computadora guarda nmeros, letras y otros caracteres en forma codificada. La
informacin en una computadora es guardada usando 0s y 1s, los dos dgitos del
sistema numrico binario. Este captulo presenta una visin general de los sistema
numricos y su relevancia para las computadoras y la programacin.
2. La Historia de los Nmeros
Para los primeros hombres, los nmeros no significaban nada ms que la diferencia
entre una piedra y muchas piedras, un hombre y muchos hombres o un animal y
muchos animales. Probablemente, an en esta simple percepcin, no exista el
concepto abstracto de uno y muchos. Aunque difcil de imaginar, exista poca
asociacin entre un nmero y la cantidad que significaba, y un smbolo para denotar la
asociacin. Fue la Civilizacin Fenicia hace cerca de 3,000 aos la que introdujo el
primer alfabeto primitivo para la asociacin de smbolos.
Quizs, el sistema numrico ms familiar de las antiguas civilizaciones es el sistema
Romano. Los smbolos I, II, III, IV, V, VI, VII, VIII, IX, y X
denotan los nmeros del 1 al 10. L denota 50 y C denota 100. Otras denominaciones
mayores para las que se presentaban smbolos nicos en este sistema son:
(I) para mil
((I)) para diez mil
(((I))) para cien mil
Los Romanos no tenan smbolos para denotar denominaciones mayores que las ya
mencionadas. Por ejemplo, si uno quera escribir la poblacin de la India, que es cerca
de 800 millones, uno tena que escribir (((1))) 8000 veces! Los Romanos tambin
hacan su conteo en la base de agrupaciones de 5, 10 y 100. Los siguientes ejemplos
ilustran unas cuantas adiciones y sustracciones como presumiblemente lo hicieron los
Romanos:
X + X + X + X + X = L (10 + 10 + 10 + 10 + 10 = 50)
L + L = C (50 + 50 = 100)
VIII + II = X (8 + 2 = 10)
VII - III = IV (7 - 3 = 4)
X - V = V (10 - 5 = 5)

Los primeros Egipcios usaron ideogramas para representar muchos. Por ejemplo,
tres olas = agua y un ojo con 3 lagrimas = llanto. Los primeros Chinos, tambin tenan
el tres en ideogramas para referirse a muchos.
3. Contamos Hasta 10?
El conteo fue, quizs, el primer clculo que emple el hombre. Por ejemplo, la edad de
una persona se contaba basada en el nmero de inviernos que haba pasado y este
nmero se contaba con la ayuda de un grupo de piedras. Despus, se hicieron
muescas en palos o huesos a manera de conteo. As naci el concepto de
agrupamiento. Por ejemplo, una muesca larga puede hacerse para cada conjunto de
10 muescas pequeas, as representaban un grupo de 10. Este fue probablemente el
primer paso hacia la definicin de nmeros a travs de smbolos y palabras. La
Gustavo D. Modificado Oct 2012
muesca larga representaba 10 y el nmero apropiado de muescas pequeas
representaban los nmeros del 1 al 9.
Agrupamientos de esta clase existan en la mayora de las civilizaciones. Los
Romanos tenan grupos de cinco y los Egipcios tenan grupos de sesenta. Los
orgenes del agrupamiento son fciles de entender. Por ejemplo, el agrupamiento
Romano de cinco corresponde a los cinco dedos en una mano, el agrupamiento de
sesenta a los minutos en una hora y el agrupamiento de 12 a los meses en un ao.
Muchos agrupamientos en las civilizaciones antiguas se originaron en los misterios de
la numerologa y la religin.
Sin embargo, es bastante significativo que la mayora de los agrupamientos fuera en
decenas. Este agrupamiento gan popularidad con la coincidencia biolgica de que el
hombre tiene 10 dedos en las manos o pies. A travs de los tiempos, el hombre
desarroll gradualmente smbolos para denotar los nmeros y agrupamientos. Fue
slo la llegada del sistema numrico posicional, que se hizo progresos en la aritmtica
y en consecuencia, en todos los aspectos del progreso humano.
4. El Sistema Numrico Posicional
En Chino, se usan caracteres separados para indicar el dgito y el agrupamiento al
escribir un nmero. Por ejemplo, el nmero 879 se escribira como 8 'cientos' 7
'decenas' y 9.
En Chino, esto se vera como se muestra a continuacin:
8 H 7 T 9
Pa PAI Chi SHIH Chin
Es importante notar que slo la posicin de unidades es implcita. Para entender qu
es un sistema posicional, considere el nmero 879. Sabemos por examinacin visual
que es ocho cientos setenta y nueve. Los dgitos 8,7 y 9 ocupan una posicin en el
nmero y cada posicin tiene un peso. El 9 en el nmero 879 ocupa la posicin de
unidades, as que su peso es 1. En forma similar 7 ocupa la posicin de decenas y
8 la posicin de centenas.
As,
879 = 8x100 + 7x10 + 9x1
= 800 + 70 + 9
= 879
Los smbolos modernos para los dgitos del cero al nueve, y el sistema numrico
posicional, fueron desarrollados primero en la India. Los rabes difundieron el uso de
estos smbolos por toda Europa y el Mediterrneo. A pesar del hecho de que esta vital
contribucin fue hecha por la India, estos nmeros son llamados numerales Arbigos
an en la actualidad. Las primeras formas del sistema de numeracin no tenan dgito
para el cero. No sera una exageracin decir que el descubrimiento del dgito cero
revolucion nuestro pensamiento.
Considere otro ejemplo: de acuerdo al sistema numrico posicional, el nmero 583
puede escribirse como:
= 5x100 + 8x10 + 3x1
= 5x10
2
+ 8x10
1
+ 3x10
0

Los pesos posicionales son expresados en potencias de 10. Sabemos que el nmero
583 es quinientos ochenta y tres en el sistema decimal. El nmero 10 es la parte
central del sistema decimal y es llamado la base o raz del sistema.
Gustavo D. Modificado Oct 2012
En forma similar, existen muchos sistemas numricos, cada uno con una base o raz
nica. El sistema numrico con la base 10 es llamado el sistema decimal, base 2 es
binario, base 8 es octal y base 16 es el sistema hexadecimal. En las siguientes
secciones, estudiaremos cada uno de estos sistemas numricos en detalle.
5. Acerca de los Diferentes Sistemas Numricos
Nosotros los humanos encontramos fcil el trabajar con el sistema numrico decimal
para clculos normales. Pero las computadoras por otro lado, usan el sistema binario
que involucra a una cadena de 0s y 1s. El sistema numrico octal que fue una vez un
sistema numrico popular, especialmente en la Digital Equipment Corporation PDP/8,
es raramente usado hoy en da. El sistema numrico hexadecimal es an otro sistema
que casi siempre es mencionado mientras hablamos de computadoras. Ambos
sistemas, el octal y el hexadecimal, proporcionan en la actualidad un mtodo fcil para
entender los nmeros representados usando el sistema binario.
Aprenderemos ms acerca de estos cuatro sistemas numricos en esta Unidad, y
veremos como los nmeros en un sistema pueden ser convertidos a otro.
Como establecimos anteriormente, cada sistema numrico tiene una base o raz que
lo distingue de los dems. La Tabla 3.1 nos da una visin completa de estos sistemas
numricos.
Sistema
Numrico
Base/
Raz
Dgitos Ejemplo
Binario 2 0 y 1 01111110
Octal 8 0 a 7 176
Decimal 10 0 a 9 126
Hexadecimal 16 0 a 15 7E
Tabla 3.1: Los Sistemas Numricos
El nmero hexadecimal incluye un alfabeto. Dado que slo hay 10 dgitos en el
sistema numrico decimal, las letras A a E son usadas para representar los 6 dgitos
restantes del hexadecimal. As, 0-9 representan 0-9 y A-F representan 10 a 15 en el
sistema numrico hexadecimal.
Se usa un principio bsico para convertir un nmero de un sistema numrico a otro.
Mientras convertimos del decimal a cualquier otro sistema numrico, la base del
sistema divide el nmero decimal. Para convertir un nmero de cualquier otro sistema
numrico al sistema decimal, el mtodo del peso posicional es usado, donde la base
de ese sistema numrico juegan un rol importante. Dado que el sistema numrico
decimal es el ms obvio, y es fcilmente reconocible por humanos, aprendemos los
otros sistemas numricos centrados alrededor del sistema decimal
6. El Sistema Numrico Decimal
Todos nosotros estamos familiarizados con el sistema decimal o de base 10. Es
llamado base 10 por dos razones:
El peso posicional de los dgitos es expresado en potencias de 10.
Existen 10 dgitos que forman el sistema numrico decimal.
El sistema numrico decimal puede consistir de 10 dgitos, nombrados, 0, 1, 2, 3,
4, 5, 6, 7, 8 y 9. Un nmero decimal vlido es definido como sigue:
Gustavo D. Modificado Oct 2012
Cualquier combinacin de los dgitos vlidos del sistema indican un nmero
decimal positivo
Cualquier combinacin de los dgitos vlidos del sistema opcionalmente con el
smbolo + de prefijo indican un nmero positivo
Cualquier combinacin de los dgitos vlidos del sistema opcionalmente con el
smbolo - de prefijo indican un nmero negativo
En consecuencia, los siguientes son todos numerales decimales bsicos:
587 quinientos ochenta y siete (positivo)
+800 ms ochocientos (positivo)
-800 menos ochocientos (negativo)
Los siguientes son numerales decimales invlidos:
800+ El signo + debe ser prefijo
--850 El signo debe ser prefijo slo una vez
+-860 Tanto + e no pueden aparecer juntos
8B6 El dgito B es invlido
La definicin anterior slo trata nmeros enteros. Los nmeros Reales o nmeros
fraccionarios se definen a continuacin.
Cualquier combinacin de los 10 dgitos vlidos del sistema decimal,
opcionalmente precedidos por el smbolo + -, indican la parte entera.
La inclusin del smbolo (el punto decimal) que separa la parte entera de la
fraccional del nmero.
Cualquier combinacin de los 10 dgitos vlidos del sistema decimal seguidos
por el punto decimal (sin los smbolos + -) indican la parte fraccional del
nmero.
A continuacin se dan ejemplos de nmeros reales vlidos en el sistema decimal:
12.53 ms doce punto cinco tres
+50.0 ms cincuenta punto cero
-0.573 menos cero punto cinco siete tres
Considere el nmero 12.53 en decimal. En trminos de pesos posicionales, el
nmero puede ser expresado como sigue
12.53 = 1x10
1
+ 2x10
0
+ 5x10
-1
+ 3x10
-2

= 10 + 2 + 5/10 + 3/100
Note que los dgitos que estn a la derecha del punto decimal tienen pesos de 10
-1
,
10
-2
y as sucesivamente.
7. Aritmtica Decimal Usando el Complemento a 9 y a
10
Sumar y restar nmeros decimales es simple, y en la mayora de los casos, una
costumbre para nosotros. Sumar dos enteros decimales y sustraer un entero decimal
del otro es igualmente simple. El principio de acarrear a un dgito de posicin mayor
(en la suma) y prestar de un dgito de posicin mayor (en la sustraccin) ha sido
firmemente implantado en nuestras mentes. Ahora veamos la adicin y sustraccin de
enteros decimales en una forma diferente. Por ejemplo, vamos a asumir que queremos
calcular (a-b), donde a y b son dos enteros positivos. (a-b) puede escribirse como
a + (-b). As que para calcular (7-4), podemos escribirlo como 7 + (-4). Pero
qu es -4? Existe una forma de representar -4. Para hacerlo, restamos 4 de 9.
9 - 4 = 5
Gustavo D. Modificado Oct 2012
Obtenemos 5. Esta es la forma en complemento a 9 de 4. Le sumamos un 1 para
hacerlo de la forma en complemento a 10.
Sumar 1 5 + 1 = 6
Sorprendente como se puede ver, ahora, 6 representa -4. Ahora intente sustraer 4 del
dgito simple 9.
7 - 4 = 7 + (-4)
Mtodo Normal 7 - 4 = 3
Mtodo Nuevo 7 + 6 = 13
En el nuevo mtodo anterior, 6 es la forma en complemento a diez de -4. Como
estamos tratando con enteros de dgito simple, retenemos el dgito simple y
descartamos el acarreo. Como el acarreo aqu es 1, despus de descartar este 1,
obtenemos la respuesta 3. De esta forma, ambos mtodos producen la misma
respuesta.
Ahora veamos otro ejemplo:
125 - 9 = 125 + (-9)
Sustraer 009 de 999 999 - 009 = 990
Por qu estamos sustrayendo 9 de estos 999? A fin de encontrar la forma en
complemento a nueve de 9, consideraremos 9 como 009 dado que el otro operando
en la expresin es un nmero de tres dgitos.
Sumar 1 990 + 1 = 991
991 est en la forma del complemento a 10 de 9
125 + 991 = 1116
Descartando el acarreo (estamos tratando con nmeros de tres dgitos), obtenemos
116 que es equivalente a 125 9.
8. Sistema Numrico Binario
El sistema binario, como establecimos antes, comprende slo dos dgitos, 0 y 1. Este
sistema es usado en todas las computadoras digitales dado que necesitamos
representar nmeros y caracteres en slo dos cantidades. Esto significa que
necesitamos distinguir entre dos estados: encendido o apagado, presencia de voltaje o
no, magnetizacin en una direccin o en la otra, etc. En esta seccin, aprenderemos
cmo los nmeros y caracteres son almacenados en el sistema binario y cmo se
realizan los clculos aritmticos con nmeros binarios.
Un nmero binario vlido consiste de una combinacin de uno o ms dgitos binarios
vlidos, 0 y 1. Los siguientes son ejemplos de nmeros binarios vlidos:
0100
1010
0100101011
No se usan smbolos extra (como el + y el en el sistema decimal) para distinguir
entre nmeros binarios positivos y negativos. En una seccin posterior, aprenderemos
cmo el sistema numrico binario distingue entre una cantidad positiva y negativa.
9. Bits, Bytes y Palabras (Words)
Para guardar un nmero o un carcter en una memoria de computadora, tiene que ser
expresado como un patrn de 0s y 1s. Los dgitos 0 y 1 son llamados bits. Una
coleccin de bits hacen una unidad significativa. Usualmente, una coleccin de 8 bits
forman la ms pequea unidad significativa. Esta coleccin de 8 bits es llamada un
Gustavo D. Modificado Oct 2012
byte. A veces se usa un patrn de 4 bits. Este es llamado un nibble. A veces, se usan
grandes nmeros de bits juntos. Estos son llamados palabras (words). Pero no existe
un estndar para el tamao de una palabra. Diferentes mquinas tienen diferente
tamao de palabra. Donde sea que se use una palabra, el nmero de bits usado por
esa palabra tiene que ser especificado explcitamente.
Ahora aprenderemos cmo las computadoras representan los enteros. El sistema
numrico binario no tiene ningn smbolo especial para diferenciar entre una cantidad
positiva o negativa. Aprenderemos cmo se hace esto en una computadora.
10. Representacin de Enteros en Binario
Considere un patrn de bits en un byte.
7 6 5 4 3 2 1 0
0 0 1 0 0 1 0 1
Bit ms significativo Bit menos significativo
Los bits estn numerados de 0 a 7 de derecha a izquierda. El bit 0 es el bit menos
significativo (least significant bit LSB) y el bit 7 es el bit ms significativo (most
significant bit MSB). El patrn de bits presentado es un entero decimal. Para obtener
su equivalente en decimal, usamos los pesos posicionales de cada bit y los
expresamos en potencias de 2. Las potencias de 2 es debido a que slo hay dos
dgitos en un sistema numrico binario.
0x2
7
+ 0x2
6
+ 1x2
5
+ 0x2
4
+ 0x2
3
+ 1x2
2
+ 0x2
1
+ 1x2
0

= 0 + 0 + 32 + 0 + 0 + 4 + 0 + 1
= 37
As, el patrn 00100101 representa 37 en decimal. Dado un nmero binario, el
equivalente decimal de ese nmero binario puede ser calculado usando el mtodo de
peso posicional. Esto es exactamente la misma forma en que formamos un nmero
decimal. El nmero decimal 583 es actualmente:
= 5x10
2
+ 8x10
1
+ 3x10
0
= 5x100 + 8x10 + 3x1
= 583
Cuando escribimos el nmero 1011, puede haber una confusin si es un nmero
decimal o uno binario. Para evitar tal confusin, escribimos(1011)
2
para hacer
referencia a un nmero binario y (1011)
10
para hacer referencia a un nmero
decimal. Se lee como 1011 en base 2 y 1011 en base 10.
Ahora, considere otro patrn en un byte:
0 1 0 1 1 1 0 0
Para obtener la magnitud representada por el patrn de bits dado, expandimos los bits
en potencias de 2, como se muestra a continuacin:
0x2
7
+ 1x2
6
+ 0x2
5
+ 1x2
4
+ 1x2
3
+ 1x2
2
+ 0x2
1
+ 0x2
0

= 0 + 64 + 0 + 16 + 8 + 4 + 0 + 0
= (92)
10
Intentemos otro ejemplo. Vea el patrn de bits dado a continuacin:
0 1 1 1 1 1 1 0
0x2
7
+ 1x2
6
+ 1x2
5
+ 1x2
4
+ 1x2
3
+ 1x2
2
+ 1x2
1
+ 0x2
0
= 0 + 64 + 32 + 16 + 8 + 4 + 2 + 0
= (126)
10
Gustavo D. Modificado Oct 2012
11. El Bit de Signo
Los enteros pueden ser tanto positivos o negativos. Dado que no tenemos ningn
smbolo extra en el sistema binario para distinguir entre nmeros positivos y negativos,
uno de los bits es usado para denotar el signo. Este es llamado el bit de signo.
Usualmente el bit ms a la izquierda en una celda de la memoria (la celda puede
contener 4, 8, 16 o cualquier nmero de bits) es designado como el bit de signo.
7 6 5 4 3 2 1 0
0 1 0 1 1 1 0 0
bit de signo
En el caso de un byte, el bit 7 es designado como el bit de signo. Si el bit es 0,
representa un nmero positivo y si es 1, representa un numero negativo. La
representacin de nmeros positivos es directa. En un nmero positivo de 8 bits, 7
bits son usados para almacenar el nmero y el ltimo bit (el bit 8) es automticamente
asignado con el valor 0.
Existen tres formas diferentes de representar nmeros negativos:
Esquema magnitud con signo
Esquema complemento a Uno
Esquema complemento a Dos
Antes de comenzar a estudiar estos esquemas en detalle, vamos a aprender primero
cmo convertir un nmero decimal en su equivalente binario.
12. Conversin de Decimal a Binario
El mtodo usado para convertir un entero decimal en su equivalente binario involucra
la divisin del nmero decimal entre 2, donde 2 es la raz del sistema numrico
binario. Cuando la divisin es llevada a cabo, el residuo en cada etapa es preservado.
La divisin es repetida hasta que el dividendo se convierte en cero. El residuo en cada
etapa forma un dgito binario (bit). El primer residuo forma el bit menos significativo del
nmero binario y el ltimo residuo forma el bit ms significativo del nmero binario.
Ejemplo 3.1
Represente (37)
10
en un byte.
Paso - 1: Encontrar el equivalente binario de (37)
10
.
Primero, dividir el nmero sucesivamente entre 2, extrayendo los residuos hasta que el
dividendo se convierta en cero. Esto se muestra a continuacin
Divisor Dividendo Residuo
2 37
2 18 1 Bit Menos Significativo (LSB)
2 9 0
2 4 1
2 2 0
2 1 0
0 1 Bit Ms Significativo (MSB)
As, (37)
10
= (100101)
2


Paso -2: Representar (37)
10
en un byte.
Gustavo D. Modificado Oct 2012
0 0 1 0 0 1 0 1
Note que el bit ms a la izquierda es cero indicando un nmero positivo. Los siete bits
restantes representan (37)
10
.
Vamos a reconvertir el nmero binario en su equivalente decimal y verificar si (37)
10

es (0100101)
2.

= 0x2
6
+ 1x2
5
+ 0x2
4
+ 0x2
3
+ 1x2
2
+ 0x2
1
+ 1x2
0

= 32 + 4 + 1
= (37)
10
Fin de Ejemplo 3.1
Teniendo claro cmo convertir un entero decimal en su binario equivalente, vamos a
discutir ahora las tres formas de representar enteros en computadoras. Estos tres
esquemas son diferentes uno de los otros slo en su representacin final.
Para la representacin final de un nmero decimal en nmero binario, existen dos
pasos.
Paso. 1: Realizar la conversin del nmero decimal en su equivalente binario sin
considerar el nmero de bits requerido para la representacin final.
Paso. 2: Ver los bits disponibles para representar el nmero y de acuerdo a esto,
aadir el valor del signo en la representacin final.
Ahora aprenderemos cmo representar nmeros en los tres esquemas, el nmero
mximo y mnimo que puede ser representado y como el dgito 0 (cero) es
representado en los tres esquemas.
13. El Esquema de Magnitud con Signo
Cada nmero tiene dos partes, un signo y una magnitud. El esquema de magnitud con
signo representa un nmero decimal en su forma binaria basndose en este principio
bsico. Por ejemplo:
El entero (37)
10
tiene un signo ms y una magnitud de 37.
El entero (-100)
10
tiene un signo menos y una magnitud de 100.
El esquema de magnitud con signo involucra dos pasos para convertir un decimal en
binario.
Paso 1: Convertir el nmero decimal en su equivalente binario.
Paso 2: Representar el nmero binario convertido en el nmero de bits
disponibles para su representacin. Si n bits estn disponibles para almacenar
el nmero decimal, n-1 bits son usados para la magnitud y 1 bit (el bit ms a la
izquierda) para el signo.
Ejemplo 3.2
Representar -(37)
10
en binario en un byte usando la representacin de magnitud con
signo.
Paso 1: Convertir 37 en binario.
Hemos visto del ejemplo anterior que (37)
10
= (0100101)
2
. ste slo toma 7 bits.
En este paso, no nos preocupamos acerca de la representacin actual. sta es slo la
conversin natural en su forma binaria.
Paso 2: Representar -(37)
10
en un byte. Un byte tiene 8 bits, de los cuales 7 son
separados para la magnitud y 1 para el signo.
Gustavo D. Modificado Oct 2012
1 0 1 0 0 1 0 1
Note que el bit de signo es 1, indicando un entero negativo.
Fin de Ejemplo 3.2
Ahora, supongamos que un byte contiene un patrn de bits que pretende representar
un entero en la forma de magnitud con signo. Cmo puede ser convertido a decimal?
Aprenderemos esto en los siguientes ejemplos.
Ejemplo 3.3
Qu representa el siguiente byte?
0 1 1 0 1 1 0 1
Asumimos que el byte contiene un entero en la forma magnitud con signo. El bit de
signo contiene un 0, indicando un nmero positivo. La magnitud es dada a
continuacin.
= 1x2
6
+ 1x2
5
+ 0x2
4
+ 1x2
3
+ 1x2
2
+ 0x2
1
+ 1x2
0

= 64 + 32 + 8 + 4 + 1
= (109)
10
As, el byte anterior representa +(109)
10
.
Fin de Ejemplo 3.3
Gustavo D. Modificado Oct 2012
Ejemplo 3.4
Qu representa el siguiente byte?
1 0 1 0 1 0 1 1
Una vez ms, asumimos que el byte contiene un entero en su forma magnitud con
signo. El bit de signo es un 1, indicando un nmero negativo. La magnitud es dada a
continuacin:
= 0x2
6
+ 1x2
5
+ 0x2
4
+ 1x2
3
+ 0x2
2
+ 1x2
1
+ 1x2
0

= 32 + 8 + 2 + 1
= (43)
10

As, el byte anterior representa -(43)
10
.
Fin de Ejemplo 3.4
El ejemplo anterior ilustra cmo los enteros, tanto positivos como negativos, son
representados en la forma magnitud con signo. Como establecimos anteriormente, en
la representacin de enteros, un bit (normalmente el primer bit de la izquierda) es
siempre usado como bit de signo. As, dados n bits para representar enteros, el entero
mismo puede ser representados slo en n-1 bits.
Ahora, vamos a representar +(300)
10
en un byte usando la forma de magnitud con
signo.
Paso 1: Convertir (300)
10
en binario.
2 300
2 150 0 LSB
2 75 0
2 37 1
2 18 1
2 9 0
2 4 1
2 2 0
2 1 0
2 0 1 MSB
As, (300)
10
= (100101100)
2
. El nmero de bits requerido para representar
(300)
10
sin el bit de signo es nueve. Pero slo siete bits en un byte estn reservados
para guardar la magnitud. Por lo tanto, (300)
10
no puede ser representado en un
byte.
El ejemplo anterior muestra que un byte puede ser usado para representar enteros
slo dentro de un cierto rango. Cul es entonces la mayor magnitud de enteros
positivos y negativos que pueden ser representados en un byte usando el esquema de
magnitud con signo? Las dos siguientes secciones tratan esto.
13.1 Mximo Entero Positivo
Usando la forma de magnitud con signo, el nmero de bits en un byte para la magnitud
es siete. Por lo tanto, el mayor nmero positivo que podemos representar es
0 1 1 1 1 1 1 1
Aqu, el bit de signo es cero mientras todos los dems bits son uno.
= 1x2
6
+ 1x2
5
+ 1x2
4
+ 1x2
3
+ 1x2
2
+ 1x2
1
+ 1x2
0

= 64 + 32 + 16 + 8 + 4 + 2 + 1
= (127)
10

Gustavo D. Modificado Oct 2012
As, el mximo nmero positivo que puede ser representado en un byte usando el
esquema de magnitud con signo es +(127)
10
, qu es 2
7
-1. En general, en una celda
con n bits (con el bit ms a la izquierda usado para representar el signo), el mximo
entero positivo que puede ser representado en el esquema de magnitud con signo es
2
n-1
-1.
13.2 Mnimo Entero Negativo
En forma similar, el mnimo entero negativo que puede ser representado en un byte
usando el esquema de magnitud con signo se muestra a continuacin.
1 1 1 1 1 1 1 1
Este es -(127)
10
. Dejando el bit de signo, todos los unos en los siete bits restantes
son equivalentes a (127)
10
. Dado que el bit de signo es 1, el nmero binario
representa (127)
10
Por lo tanto, en n bits por celda, usando el esquema de
magnitud con signo, el mnimo entero negativos que puede ser representado es (2
n-
1
-1).
13.3 Representacin del Cero
En la discusin anterior, hemos visto que el rango de enteros representados usando el
esquema de magnitud con signo es:
En un byte Mximo Entero Positivo = +(127)
10
= + 2
7
-1
Mnimo Entero Negativo = -(127)
10
= -(2
7
1)
En n bits por celda Mximo Entero Positivo = +2
n-1
1
Mnimo Entero Negativo = -(2
n-1
-1)
Podemos representar enteros en el rango [-(2
7
-1), +2
7
-1] en un byte y [-(2
n-
1
-1), +2
n-1
-1] en n bits por celda. El entero cero tambin cae en este rango. Cero
puede ser representado en un byte de la siguiente manera:
0 0 0 0 0 0 0 0
El patrn anterior representa cero dado que la magnitud (0000000)
2
= (0)
10.
Sin
embargo, el cero tambin puede ser representado como se muestra a continuacin:
1 0 0 0 0 0 0 0
Este patrn tambin representa al cero dado que la magnitud (0000000)
2
= (0)
10
.
Como el bit de signo contiene un 1, representa un cero negativo. As, dos
representaciones de cero, un cero positivo y uno negativo son posibles!
Matemticamente, no existen dos ceros. Debido a esta representacin no nica del
cero, el esquema de magnitud con signo casi nunca es usado en computadoras.
14. El Esquema de Complemento a Uno
Como se estableci anteriormente, consideraremos el bit ms a la izquierda como el
bit de signo, an en este esquema. Los pasos a seguir aqu son:
Paso 1: Convertir el entero positivo en el nmero dado de bits. El bit de signo
puede ser 0 ahora.
Paso 2: Invertir todos los bits. Convertir 0s en 1s y 1s en 0s.
Ahora veremos un ejemplo de la representacin de un entero negativo en la forma de
complemento a uno.
Ejemplo 3.5
Representar -(52)
10
en un byte en la forma de complemento a uno.
Gustavo D. Modificado Oct 2012
Paso 1: Convertir la contraparte positiva (52)
10
en binario y representarla en un byte.
(52)
10
= (00110100)
2
en 8 bits
Paso 2: Convertir el nmero en su forma de complemento a uno.
Para hacer esto, simplemente convertimos cada bit 0 a 1 y cada bit 1 a 0.
Byte original 0 0 1 1 0 1 0 0 = (52)
10

bits cambiados 1 1 0 0 1 0 1 1
El patrn (11001011)
2
es la representacin en complemento a uno de -(52)
10
. Que
esto representa un nmero negativo es evidente por el bit de signo, que es 1.
Fin de Ejemplo 3.5
Ejemplo 3.6
Representar -(1)
10
en un byte en la forma de complemento a uno.
Paso 1: Convertir (1)
10
a binario y representarlo en un byte.
(1)
10
= (00000001)
2
.
Paso 2: Convertirlo en su forma de complemento a uno cambiando todos los bits.
Byte Original : 0 0 0 0 0 0 0 1
Complemento a Uno : 1 1 1 1 1 1 1 0
Por lo tanto, -(1)
10
es representado como
1 1 1 1 1 1 1 0
El 1 en el signo de bit confirma que el nmero representado es un nmero negativo.
Fin de Ejemplo 3.6
Ejemplo 3.7
Encontrar el equivalente decimal del siguiente entero en forma de complemento a uno:
1 1 1 1 1 1 1 0
Para hacer esto, cambiamos los bits.
Byte Original : 1 1 1 1 1 1 1 0
Bits cambiados : 0 0 0 0 0 0 0 1
Ahora, considere los 7 bits enteros la magnitud del nmero y obtenga su equivalente
decimal, como si el bit de signo no existiera.
(00000001)
2
= (1)
10
.
Dado que nuestro byte original tiene un 1 en el bit de signo, el patrn original
representa a -(1)
10
.
Fin de Ejemplo 3.7
Ejemplo 3.8
Averiguar qu nmero representa en decimal el siguiente entero en forma de
complemento a uno.
1 0 0 0 0 1 0 0
Note que el bit de signo es 1 indicando que es un entero negativo. Para obtener la
magnitud, cambiamos los bits.
Byte Original : 1 0 0 0 0 1 0 0
Bits cambiados : 0 1 1 1 1 0 1 1
Gustavo D. Modificado Oct 2012
Ignorando la presencia del bit de signo, el patrn (01111011)
2
representa lo
siguiente.
= 0x2
7
+ 1x2
6
+ 1x2
5
+ 1x2
4
+ 1x2
3
+ 0x2
2
+ 1x2
1
+ 1x2
0

= 0 + 64 + 32 + 16 + 8 + 0 + 2 + 1
= (123)
10

As, el patrn
1 0 0 0 0 1 0 0
representa -(123)
10
.
Fin de Ejemplo 3.8
Ahora vamos a ver cules son los enteros mximo positivo y mnimo negativo que
podemos representar usando el esquema del complemento a uno.
14.1 Entero Mximo Positivo y Mnimo Negativo
Como en el caso de la forma magnitud con signo, los enteros mximos y mnimos que
pueden ser representados son 2
n-1
1 y (2
n-1
1).
14.2 Representacin del Cero en el esquema de complemento a uno
Considere por un momento que, en la forma de complemento a uno la representacin
del cero no es nica. Esto es, existe un ms cero y un menos cero.
La representacin del ms cero en un byte es dada a continuacin.
0 0 0 0 0 0 0 0
El bit de signo es cero y la magnitud es cero. As, esta representacin del cero es
correcta.
Para representar el menos cero primero representamos el ms cero en un byte.
Luego, cambiamos los bits obteniendo la forma de complemento a uno.
Byte Original : 0 0 0 0 0 0 0 0
Bits Cambiados : 1 1 1 1 1 1 1 1
As, (11111111)
2
representa al cero tambin. Vamos a verificar que es as de veras.
Byte Original : 1 1 1 1 1 1 1 1
Bits Cambiados : 0 0 0 0 0 0 0 0
La magnitud de (00000000)
2
= (0)
10
. As, (11111111)
2,
en su forma de
complemento a uno representa al menos cero. Por lo tanto, an en la forma de
complemento a uno, la representacin del cero no es nica. Debido a esto, y ciertos
otros factores, lo cuales estn fuera del alcance de esta Unidad, la forma de
complemento a uno tampoco es muy usada en las computadoras contemporneas.
Ahora, discutiremos la forma de complemento a dos que es usada en casi todas las
computadoras modernas.
15. El Esquema de Complemento a Dos
En este esquema tambin, el bit ms a la izquierda es usado como el bit de signo. Los
enteros negativos son guardados en la forma de complemento a dos.
Los pasos seguidos para representar enteros negativos en este esquema son dados a
continuacin:
Paso 1: Convertir el entero positivo en el nmero dado de bits. El bit de signo
debe ser 0.
Paso 2: Cambiar todos los bits. Convertir 0s en 1s y 1s en 0s
Gustavo D. Modificado Oct 2012
Paso 3: Sumar 1 a los bits cambiados
La tabla de verdad para la adicin en binario es dada en la Tabla 3.1. Usaremos el
valor en la tabla mientras convertimos un decimal a binario y un binario a decimal
usando el esquema de complemento a dos.
+ 0 1
0 0 1
1 1 0
(1)

Tabla 3.1: La Tabla de Verdad para Sumar Dos Dgitos Binarios
Las segunda y tercer columnas de la fila superior (0 y 1) representan los bits a ser
sumados con la primera columna de las segunda y tercera filas (0 y 1). stas estn
resaltadas en negrita para un claro entendimiento. Las reglas de adicin implican que:
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 0 con un acarreo de 1
En el sistema numrico decimal, 1 es acarreado cuando el resultado excede del dgito
9. En forma similar, en el esquema de complemento a dos, 1 es acarreado cuando el
resultado excede del dgito 1. Mostramos el acarreo 1 en la Tabla 3.1 como
(1)
. Esto es
ilustrado en los siguientes ejemplos.
Ejemplo 3.9
Representar -(41)
10
en un byte usando la forma de complemento a dos.
Paso 1: Convertir (41)
10
en binario y representarlo en un byte, el cual es 00101001.
Paso 2: Convertir el nmero en su forma de complemento a dos. La forma de
complemento a dos es simplemente la forma de complemento a uno, sumndole uno.
Byte Original : 0 0 1 0 1 0 0 1
Bits Cambiados : 1 1 0 1 0 1 1 0
Sumar 1 : 1
Complemento a Dos: 1 1 0 1 0 1 1 1
Usando las reglas para adicin (ver Tabla 3.1), sabemos que 0+1=1. Los bits ms a la
derecha, 0 y 1, cuando son sumados resultan en un 1.
Note que el bit de signo es 1, indicando que es un nmero negativo.
Fin de Ejemplo 3.9
Ejemplo 3.10
Representar -(2)
10
en un byte usando la forma de complemento a dos.
Paso 1: Convertir (2)
10
en binario y representarlo en un byte.
0 0 0 0 0 0 1 0
Paso 2: Obtener la forma de complemento a dos de este byte.
Byte Original : 0 0 0 0 0 0 1 0
Bits Cambiados : 1 1 1 1 1 1 0 1
Sumar 1 : 1
Complemento a Dos: 1 1 1 1 1 1 1 0
Sabemos de la Tabla 3.1 que 1 + 1 = 0, con un acarreo de 1.
Gustavo D. Modificado Oct 2012
Una vez ms, note que el bit de signo es 1, indicando un nmero negativo.
Fin de Ejemplo 3.10
Los siguientes dos ejemplos ilustran cmo convertir un entero negativo representado
en la forma de complemento a dos a su equivalente decimal.
Ejemplo 3.11
Encontrar el equivalente decimal para el nmero guardado en un byte usando la forma
de complemento a dos.
1 0 1 0 1 0 1 0
Este es un nmero negativo dado que su bit de signo es 1. Para obtener su
equivalente decimal convertimos el patrn en su forma de complemento a dos.
Byte Original : 1 0 1 0 1 0 1 0
Bits Cambiados : 0 1 0 1 0 1 0 1
Sumar 1 : 1
Complemento a Dos: 0 1 0 1 0 1 1 0
(01010110)
2
= 1x2
6
+ 1x2
4
+ 1x2
2
+ 1x2
1
= 64 + 16 + 4 + 2
= (86)
10

Para convertir de nuevo a decimal desde binario, intercambiamos los bits y sumamos
1. El patrn de bits resultante es la magnitud del nmero. El signo es negativo dado
que el patrn original tena un 1 en el bit de signo.
As, el byte 10101010 representa -(86)
10
.
Fin de Ejemplo 3.11
Nota: La conversin desde binario a decimal usando el mtodo anterior es hecha slo
cuando el patrn de bits representa un nmero negativo. Sabemos si el patrn de bits
representa un nmero positivo o negativo por el valor en el bit de signo. Si el bit ms a
la izquierda, es 0, entonces simplemente convertimos a binario usando el mtodo de
peso posicional sin cambiar los bits. Esto se aplica tanto a la forma de complemento a
uno como a la de complemento a dos.
Ejemplo 3.12
Encontrar el equivalente decimal del nmero guardado en un byte usando la forma de
complemento a dos.
0 0 1 0 1 1 1 1
Este es un nmero positivo, dado que su bit de signo es 0.
(00101111)
2
= 1x2
5
+ 1x2
3
+ 1x2
2
+ 1x2
1
+ 1x2
0

= 32 + 8 + 4 + 2 + 1
= (47)
10

As, el byte 00101111 representa +(47)
10
dado que el bit de signo contiene un 0.
Fin de Ejemplo 3.12
Gustavo D. Modificado Oct 2012
Ejemplo 3.13
Encontrar el equivalente decimal de 10000000 en la forma de complemento a dos.
1 0 0 0 0 0 0 0
Byte Original : 1 0 0 0 0 0 0 0
Bits Cambiados : 0 1 1 1 1 1 1 1
Sumar 1 : 1
Complemento a Dos : 1 0 0 0 0 0 0 0
ste representa slo la magnitud del byte original.
(10000000)
2

= 1x2
7

= (128)
10

As, el byte 10000000 contiene -(128)
10
.
Fin de Ejemplo 3.13
Como se muestra en los ejemplos anteriores, el esquema de complemento a dos
guarda un nmero ms que los otros dos mtodos. Ahora, aprenderemos acerca de la
representacin nica del cero en el esquema de complemento a dos. En casi todas las
computadoras modernas hoy en da, el esquema de complemento a dos es usado
para representar enteros.
15.1 Representacin del Cero en el esquema de complemento a dos
Como en los ejemplos anteriores, asumimos que en la forma de complemento a dos
existen dos representaciones del cero, ms cero y menos cero. El ms cero es
representado en un byte como sigue:
0 0 0 0 0 0 0 0
El bit de signo es 0 y la magnitud es cero. As, esta representacin del cero es
correcta.
El menos cero es representado en la forma de complemento a dos como sigue:
Byte Original : 0 0 0 0 0 0 0 0
Bits Cambiados : 1 1 1 1 1 1 1 1
Sumar 1 : 1
Complemento a Dos : 1 0 0 0 0 0 0 0 0
acarreo
El acarreo 1 del 7mo bit es descartado. Lo que queda es:
0 0 0 0 0 0 0 0
Por lo tanto, la representacin del ms cero y menos cero en la forma de
complemento a dos es la misma. No existe un ms cero o menos cero en la forma
de complemento a dos. Por lo tanto, la representacin del cero es nica.
16. Esquemas de Representacin de Enteros
Comparacin
Entre los tres esquemas de representar enteros, dos de los esquemas, llamados el
esquema de magnitud con signo y el esquema de complemento a uno, no tienen una
representacin nica del cero. En la forma de complemento a dos, la representacin
del cero es nica.
El rango de enteros que puede ser representado tambin difiere levemente. La
siguiente tabla muestra esto en forma explcita para una celda de n bits.
Gustavo D. Modificado Oct 2012
Esquema Mximo
Entero Positivo
Mnimo
Entero Negativo
Magnitud con Signo
2
n-1
-1 -(2
n-1
-1)
Complemento a Uno
2
n-1
-1 -(2
n-1
-1)
Complemento a Dos
2
n-1
-1 -2
n-1

Tabla 3.2: Rango de Enteros para los Diferentes Esquemas
Antes de continuar, vamos a dar un breve vistazo a otro mtodo de convertir un
nmero binario en su equivalente decimal. Este mtodo es llamado el mtodo de doble
susurro.
17. El Mtodo del Double Babble
Para ilustrar este mtodo, considere un nmero binario de 4 bits (0110)
2
. Empiece
con el dgito ms a la izquierda y duplquelo. Smele el siguiente bit de la derecha al
resultado. Nuevamente, duplique el resultado y smele el siguiente bit a la derecha.
Contine con este proceso hasta que alcance el ltimo bit. Cuando alcance el ltimo
bit, ya no se duplica.
Para el nmero binario 0110, empiece con 0. Duplicarlo produce 0. Sumndole el
siguiente bit a la derecha lo hace 1. Duplicando esto lo hace 2. Sumando el siguiente
bit a la derecha hace 2 + 1 = 3. Duplicando esto da 6 y sumndole el siguiente
bit a la derecha hace 6 + 0 = (6)
10
. As (0110)
2
= (6)
10
.
Esto puede ser ilustrado como se muestra a continuacin.
0 2x0 = 0
1 0 + 1 = 1; 1x2 = 2
1 2 + 1 = 3; 3x2 = 6
0 6 + 0 = (6)
10

El mtodo del double babble es slo otro mtodo de convertir un nmero binario en su
equivalente decimal. Los dos siguientes ejemplos pueden ayudar a entender mejor el
mtodo del double babble.
Ejemplo 3.14
Convertir el entero binario 01101011 en decimal usando el mtodo del double
babble.
0 0x2 = 0
1 0 + 1 = 1 2x1 = 2
1 2 + 1 = 3 2x3 = 6
0 6 + 0 = 6 2x6 = 12
1 12 + 1 = 13 2x13 = 26
0 26 + 0 = 26 2x26 = 52
1 52 + 1 = 53 2x53 = 106
1 106+ 1 = 107
Por lo tanto, (01101011)
2
= (107)
10

Fin de Ejemplo 3.14
Ejemplo 3.15
Gustavo D. Modificado Oct 2012
Convertir el entero binario 01101110 en decimal usando el mtodo del double
babble.
0 0x2 = 0
1 0 + 1 = 1 2x1 = 2
1 2 + 1 = 3 2x3 = 6
0 6 + 0 = 6 2x6 = 12
1 12 + 1 = 13 2x13 = 26
1 26 + 1 = 27 2x27 = 54
1 54 + 1 = 55 2x55 = 110
0 110 + 0 = 110
Por lo tanto, (01101110)
2
= (110)
10

Fin de Ejemplo 3.15
Ahora vamos a aprender cmo realizar aritmtica binaria.
18. Aritmtica Binaria
La computadora tiene una unidad lgica aritmtica que es responsable de realizar
operaciones aritmticas tales como adicin, sustraccin, multiplicacin, y divisin.
Dado que sabemos que todos los nmeros son guardados en binario como 0s y 1s,
las reglas para la adicin y sustraccin son algo diferentes cuando las comparamos
con los nmeros decimales.
Sumando Dos Nmeros Binarios
La Tabla de Verdad para la adicin de la Tabla 3.1 es usada para sumar dos nmeros
binarios.
Para entender la aritmtica usando nmeros binarios, vamos a considerar que los
enteros estn representados usando cinco bits con el bit ms a la izquierda indicando
el signo. La forma de complemento a dos ser usada para representar los nmeros
negativos. Ahora vamos a ilustrar la aritmtica bsica en las computadoras usando
una serie de ejemplos.
Ejemplo 3.16
Sumar 8 + 7.
+(8)
10
: 01000
+(7)
10
: 00111
: 01111
Puede verificarse que (01111)
2
= (15)
10.

Fin de Ejemplo 3.16
Ejemplo 3.17
Sumar 10 + 2.
+(10)
10
: 01010
+(2)
10
: 00010
: 01100
Cuando los segundos bits desde la derecha son sumados obtenemos 0 con un
acarreo 1. Este acarreo es pasado a la siguiente columna de la izquierda. As, vemos
un 0 en el segundo bit y un 1 en el tercer bit desde la derecha en el resultado.
Puede verificarse fcilmente que (01100)
2
= (12)
10
.
Fin de Ejemplo 3.17
Gustavo D. Modificado Oct 2012

Ejemplo 3.18
Restar 10 6.
Recuerde que 10 - 6 = 10 + (-6). Represente +(10)
10
en 5 bits y (-6)
10
en
5 bits en la forma de complemento a dos y sume ambos.
+(6)
10
:

00110
Cambiar bits : 11001
Sumar 1 : 1
-(6)
10
: 11010
+(10)
10
: 01010
-(6)
10
: 11010
:(1) 00100
El acarreo del bit del signo se pierde. Los 5 bits restantes contienen (00100)
2
=
(4)
10
, que es 10 6.
Fin de Ejemplo 3.18
Ejemplo 3.19
Sumar -7 + 3.
Primero, represente -(7)
10
y +(3)
10
y luego sume los dos valores.
+(7)
10
: 00111
Bits Cambiados : 11000
Sumar 1 : 1
-(7)
10
: 11001
+(3)
10
: 00011
: 11100
El resultado es un nmero negativo en la forma de complemento a dos. Reconvertimos
los bits en la forma de complemento a dos para encontrar la magnitud en el sistema
decimal.
bits Original : 11100
bits Cambiados : 00011
Sumar 1 : 1
Resultado : 00100 = (4)
10
As, (11100)
2
= -(4)
10
dado que el patrn de bits original contiene un 1 en el bit
de signo.
Fin de Ejemplo 3.19
Ejemplo 3.20
Restar -8 - 8.
+(8)
10
: 01000
bits cambiados : 10111
Sumar 1 : 1
-(8)
10
: 11000
Ahora -8 - 8 = (-8) + (-8). Sumamos las dos representaciones de (-8).
-(8)
10
: 11000
-(8)
10
: 11000
:(1) 10000
Gustavo D. Modificado Oct 2012
El bit de acarreo 1 es perdido en la circuitera.
(10000)
2
es un nmero negativo. Vamos a reconvertirlo y encontrar lo que
representa.
Bits Original : 10000
bits Cambiados : 01111
Sumar 1 : 1
Resultado : 10000
(10000)
2
en magnitud es (16)
10
.
Por lo tanto (-8)
10
+ (-8)
10
= (10000)
2
= (-16)
10
.
Fin de Ejemplo 3.20
Algunas veces, en una adicin podemos encontrar lo siguiente:
1 1
+ 1 1
(1) 1 0
Los bits ms a la derecha cuando son sumados, pasan un acarreo a la siguiente
columna de bits a la izquierda. La suma de esta columna resulta en 1+1+1, que es 1
con un acarreo de 1.
Ejemplo 3.21
Sumar 6 + 8 usando 4 bits.
+(6)
10
: 0110
+(8)
10
: 1000
: 1110
Es el resultado +(14)
10
como se esperaba? No, el bit de signo es 1 indicando que el
resultado es negativo. Qu representa esto?
Bits Original : 1110
Bits Cambiados : 0001
Sumar 1 : 1
Resultado : 0010
El patrn (0010)
2
= (2)
10
. Por lo tanto el resultado de (6)
10
+ (8)
10
=
(1110)
2
= -(2)
10.
Qu sali mal? Note que existe un 1 en el bit de signo,
hacindolo negativo y errneo.
Esta condicin es llamada un desborde aritmtico.
Fin de Ejemplo 3.21
Ahora discutiremos por qu ocurren tales errores.
19. Desborde Aritmtico
En los ejemplos anteriores usamos cinco bits para guardar enteros. Est claro que
cuando usamos 4 bits, un bit de signo y la forma de complemento a dos, el rango de
enteros que puede ser representado es [-8,7]. El resultado de la suma (6)
10
+
(8)
10
, es (14)
10
, lo que cae fuera del rango que puede ser representado. Cuando el
resultado de una operacin aritmtica cae fuera de los lmites de representacin,
ocurre un desborde aritmtico. Cuando ocurre el desborde, el resultado de la
operacin aritmtica es errneo. En nuestro ejemplo anterior, ocurri un desborde
aritmtico y por lo tanto, el resultado es errneo. Pero por qu el resultado -(2)
10
?
Gustavo D. Modificado Oct 2012
Sabemos que el rango de los enteros que pueden ser representados en 4 bits es
[-8,7]. Esto es escrito en una forma circular como se muestra en la Figura 3.1.
La figura nos ayuda a entender el desborde aritmtico. Dados 4 bits, visualice el rango
de enteros que puede ser representado en forma circular. Muvase en sentido horario
para la suma y en sentido antihorario para la resta de enteros.
Cuando una adicin causa que el nmero sea mayor que +7 automticamente
desborda en la seccin negativa, empezando con 8, que est justo despus de +7.
Esta es la razn por la que ocurre el desborde cuando el resultado de una adicin o
sustraccin no est en el rango de enteros que pueden ser representados.
Para sumar (6)
10
y (8)
10
primero localizamos +(6) en la figura. Ahora, contamos
(8)
10
avanzando desde el 6 en direccin horaria. Avanzando de esa forma,
alcanzamos -(2)
10
! Cualquier adicin dentro del limite de +7 ser correctamente
representada. Dado que 14 excede este lmite, el resultado de sumar (6)
10
y (8)
10

causa el desborde en el rea negativa. Para esta situacin, el trmino desborde
aritmtico es usado.












Figura 3.1: Rango de Enteros Representados en el Desborde Aritmtico de Cuatro Bits
Considere otro ejemplo, 5 + 8 resulta en 3 y 5 8 tambin resulta en 3. El
primero es incorrecto mientras que el segundo es un resultado correcto.
El siguiente ejemplo ilustra la condicin bajo la cual ocurre el desborde.
Ejemplo 3.22
Restar -8 - 3.
+(8)
10
: 1000
bits cambiados : 0111
Sumar 1 : 1
-(8)
10
: 1000

+(3)
10
: 0011
bits cambiados : 1100
Sumar 1 : 1


+
-6
0
-4
-8
-2
4
2
-3
-1 1
5
7
6
3
-7
-5

-
Gustavo D. Modificado Oct 2012
-(3)
10
: 1101

-(8)
10
: 1000
-(3)
10
: 1101
+(5)
10
:(1) 0101
El acarreo del bit de signo se pierde.
Es resultado aqu es 5 a pesar de que debera haber sido 11. Esto es debido a que,
dados 4 bits, no podemos representar valores negativos en magnitudes mayores que
8, ocasionando un desborde. Puede probar visualmente esto usando la Figura 3.1.
Localice -8 en el diagrama, y muvase en sentido antihorario como si contara desde
1, -2 y 3. Terminar en 5, que es una condicin de desborde.
Fin de Ejemplo 3.22
Podemos ver a partir de los ejemplos que el desborde ocurre si alguna de las
siguientes condiciones son es verdaderas:
Existe un acarreo 1 hacia el bit de signo, pero no fue acarreado en el bit de
signo.
No existe un acarreo 1 hacia el bit de signo, pero existe un acarreo desde el bit
de signo.
Cuando ocurran tales condiciones ocurre un desborde. Cuando un 1 es acarreado
hacia el bit de signo y es correspondido con un acarreo 1 desde el bit de signo, no
ocurre desborde. Cuando no existe un acarreo hacia o desde el bit de signo tampoco
ocurre una condicin de desborde.
As hemos completado una discusin acerca de la aritmtica en binario, los posibles
desbordes aritmticos y las razones del desborde.

You might also like