Está en la página 1de 49

Sistemas de numeracin

Un nmero expresado en un sistema de numeracin


tiene la siguiente expresin, llamada polinomio
equivalente:

Nmero (base 10) = an-1 bn-1 +....+a0 b0 +a-1 b-1+....+a-p b-p (base b)
Parte Entera Parte fraccionaria

b: Base del sistema de numeracin.


(indica el nmero de smbolos distintos que podemos emplear)

Base 10 ( sistema decimal D ): 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9

Base 2 ( sistema binario B ): 0 y 1

Base 8 ( sistema octal O ):0, 1, 2, 3, 4, 5, 6 y 7

Base 16 (sistema Hexadecimal H 0x ):


0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A(10), B(11), C(12), D(13), E(14) y F(15)

a: El nmero que podemos emplear de esa base


n: El nmero de dgitos que tiene ese nmero a la
izquierda de la coma decimal.
p: El nmero de dgitos que tiene ese nmero a la
derecha de la coma decimal.
Para expresar en que base se representa un nmero, se
coloca un subndice al nmero con la notacin: (xx donde xx
indica la base. Tambin hay otras formas de indicarlo.

286,35(10 = 2102 + 8101 + 6100 + 310-1 + 510-2

Notacin en base 10 (decimal):


245
245(10
245D

Notacin en base 2 (binaria):


1011(2
1011B

Notacin en base 8 (octal):


306(8
306O

Notacin en base 16 (Hexadecimal):


2B41(16
2B41H
0x2B41
Equivalencias entre sistemas de
numeracin

Sistema Sistema Sistema Sistema


decimal binario octal hexadecimal
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
16 10000 20 10
17 10001 21 11
18 10010 22 12
19 10011 23 13
20 10100 24 14

Los sistemas de numeracin son ponderados, es


decir, que el valor de un smbolo tambin depende de
su posicin en el nmero.
En el sistema decimal a cada posicin le llamamos
unidades, decenas, centenas...
Cada valor posicional representa diez veces el valor
de su antecedente.
El nmero decimal equivalente se obtiene mediante la
suma de los pesos de los dgitos que formen el
cdigo.
En el resto de sistemas al valor posicional se le
denomina genricamente peso de valor bn-1
Valores de los pesos en el sistema binario:
Siguiendo la formula del polinomio equivalente
obtenemos los siguientes valores de cada peso,
ordenados a la izquierda el de mas valor.

Nmero (base 10) = an-1 2n-1 +....+a0 20 +a-1 2-1+....+a-p 2-p (base 2)

N de Parte
bits (n) 10 9 8 7 6 5 4 3 2 1 Fraccionaria
Formula
del
9 8 7
Valor
del peso
2 2 2 26 25 24 23 22 21 20 2-1 2-2 2-3
2n-1
Valor
del peso 512 256 128 64 32 16 8 4 2 1 0.5 0.25 0.125

Con 1 bit se puede contar: 0 y 1


Nmero mximo 1
Combinaciones 2
Valor del peso 1 (valor del siguiente peso 2)

Con 2 bits se puede contar: 00,01,10 y 11


Nmero mximo 3
Combinaciones 4
Valor del peso mayor 2 (valor del siguiente peso 4)

Con 3 bits se puede contar: 000,001,010, 011, 100, 101,


110 y 111
Nmero mximo 7
Combinaciones 8
Valor del peso mayor 4 (valor del siguiente peso 8)
Formulas interesantes:
(Siendo n el nmero de bits 1,2.. n)

Valor del peso 2n-1 El bit 3 vale 23-1 = 4

Nmero mximo 2n-1 Con 3 bits, la cuenta

mxima es de 23-1 = 7

Mximas combinaciones 2n Con 3 bits, el nmero de

combinaciones son 23 = 8

Combinaciones con 1 , 2 y 3 bits: n 3 2 1


Peso 4 2 1
0 0
1 1
2 1 0
1bit: 2 bits: 3 1 1
0 00 4 1 0 0
1 01
10
5 1 0 1
11 6 1 1 0
7 1 1 1
21=2 22=4 3
2 =8
Cantidad de bits necesarios (n) para contener un
nmero determinado:

n = log (nm. + 1) / log 2

Ejemplos:
Bits necesarios para contar en binario hasta 255

Log 256 /log2 =2,408/0,301= 8 8bits

Bits necesarios para contar en binario hasta 7

Log 8 /log2 =0,903/0,301= 3 3bits

Bits necesarios para contar en binario hasta 8

Log 9 /log2 =0,954/0,301= 3,169 4bits

Bits necesarios para contar en binario hasta 9

Log 10 /log2 =1/0,301= 3,321 4bits


Conversin de una base cualquiera a una
base decimal
mediante la utilizacin del polinomio equivalente:

11011001(2 : Es un nmero binario de 8bits


127 + 126 + 025 + 124 + 123 + 022 + 021 + 120 =
1128 + 164 + 032 + 116 + 18 + 04 + 02 + 11 =
27 + 26 + 24 + 23 + 20 =

128 + 64 + 16 + 8 +1 = 217(10

11,01(2: Es un nmero binario con parte fraccionaria


121 + 120 + 02-1 + 12-2 = 121 + 120 + 0+ 1=
12 + 11 + 00,5 + 10,25 =

2+ 1+ 0,25 = 3,25(10

4DA(16: Es un nmero hexadecimal


4162 + 13161 + 10160 = 4256 +1316 + 10 1=

1024 + 208 + 10 =1242(10


Conversin de una base decimal a cualquier
a una base

El proceso consiste en dividir el nmero por la base a


la cual vamos a convertir ese nmero, y los sucesivos
cocientes, hasta que nos d un resto que sea menor
que la base.

Decimal a binario:
28(10 = 11100 MSB Most Significant Bit
Bit ms significativo

28 2 LSB Less Significant Bit


08 14 2 Bit menos significativo

0 0 7 2 Bit Binary Digit


Digito binario
1 3 2
LSB 1 1 Byte agrupacin de 8 bits

MSB Nibble agrupacin de 4 bits

El nmero se forma a partir del ltimo cociente y todos


los restos.
Decimal a hexadecimal:
28(10 = 1C

28 16
12 1
C
Conversin de fracciones decimales a
cualquier base:
1 Se convierte la parte entera como ya se ha explicado
anteriormente.
2 La parte fraccionaria se multiplica por la base a la
que se quiere convertir, La parte entera obtenida en la
multiplicacin es la cifra ms significativa (MSB). Si a la
parte fraccionaria restante se le vuelve a repetir el
proceso, obtendremos la siguiente cifra y as
sucesivamente.
Decimal a binario
Ntese que al cambiar de base el nmero
28,65(10= 11100, 1010 se hace infinitsimo comprometiendo su
exactitud

La parte entera es la misma que en el ejemplo anterior.


0,65 0,30 0,60 0,20 .....
x2 x2 x2 x2 x2
1,30 0,60 1,20 0,40 .....
MSB LSB
Decimal a hexadecimal
28,65(10= 1C,A666...
La parte entera es la misma que en el ejemplo anterior.

0,65 0,4 0,40 0,40 .....


x16 x16 x16 x16 x16
10,40 6,4 6,4 6,4 .....
MSB LSB
SISTEMA RAPIDO PARA CONVERSIONES
CON EL SISTEMA BINARIO

Conversin de binario a decimal:


Consiste en crear una tabla (grficamente o
mentalmente) con los valores de los pesos y sumar los
pesos que coincidan con los 1 del nmero binario.

512 256 128 64 32 16 8 4 2 1 0.5 0.25 0.125 Decimal

1 1 1 0 1 0 1 117
SISTEMA 1RAPIDO
0 0
PARA
1 0 1
EL0 BINARIO 1 0 1 74,625

Conversin de decimal a binario:


Consiste en crear una tabla (grficamente o
mentalmente) con los valores de los pesos.
Empezando por el peso de ms a la izquierda (mayor
peso) que no sobrepase al nmero decimal ponerlo a 1.
Seguidamente le sumamos el siguiente peso:
1) Si el resultado es mayor al nmero lo dejaremos
como un cero 0, y dicha suma no la tendremos
en cuenta.
2) Si el resultado es menor al nmero le
asignaremos un uno 1
Repetiremos el proceso -2)- hasta igualar el nmero,
los bits que queden hacia la derecha los pondremos
todos a cero.
Convertir 25 a binario

512 256 128 64 32 16 8 4 2 1 0.5 0.25 0.125 Decimal

1 16

1 1 24

1 1 1 28

1 1 0 1 26

1 1 0 0 1 25
Conversin entre bases
Cuando las bases son mltiplos de potencias de dos y
sus exponentes son mltiplos. La cantidad de smbolos
de la base mayor coincide exactamente con el mximo
de combinaciones de un determinado nmero de los
smbolos de la base menor. En estos casos la
conversin es sencilla, solo hay que sustituir cada
smbolo de la base mayor por una cantidad fija de
smbolos de la base menor que representan el mismo
valor y viceversa.
Ejemplo bases 16 y 4 24 y 22 4 es mltiplo de 2
(Tambin podemos decir: cuando una base es potencia
de otra... 16 es potencia de 4 42 = 16)
Sistema Sistema
hexadecimal Base 4
Con dos dgitos de base 4 podemos
0 00
1 01 hacer justamente 16 combinaciones
2 02 como mximo, que coincide
3 03
4 10
justamente con los smbolos de la
5 11 base 16.
6 12
7 13
8 20
9 21 43BH
A 22
B 23
C 30
D 31 10 03 23(4
E 32
F 33 100323(4
100

Observar que se pueden convertir fcilmente las


dos bases pasndolas primero a binario:

43BH 0100 0011 1011(2


01 00 00 11 10 11(2 100323(4
Ejemplo bases 16 y 8 24 y 23 4 NO es mltiplo de 3
( ni 16 es potencia de 8)

No se cumple la condicin, no sirve el


sistema explicado, ver siguiente punto de la
explicacin.
Sistema Sistema
octal hexadecimal
00 0
01 1
02 2
03 3
04 4
05 5 Con dos dgitos octales hay mas
06 6
07 7
de 16 combinaciones que son las
10 8 que tiene el sistema hexadecimal.
11 9
12 A
13 B
14 C
15 D
16 E
17 F
20
21
... ...
... ...
77
100

Conversin de la base octal a binario y viceversa:


Cada smbolo octal equivale a tres bits binarios, ya que
en ambos casos tienen 8 combinaciones posibles, del 0
al 7.
Sistema Sistema 537(8
binario octal
000 0
001 1
010 2
011 3 101 011 111(2
100 4
101 5
110 6
111 7
Conversin de la base hexadecimal a binario y
viceversa:

Cada smbolo hexadecimal equivale a 4 bits binarios,


ya que en ambos casos tienen 16 combinaciones
posibles, del 0 al F (15).

Sistema Sistema
binario hexadecimal
0000 0 3D5(16
0001 1
0010 2
0011 3
0100 4 0011 1101 0101(2
0101 5
0110 6
0111 7
1000 8
1001 9
1010 A
1011 B
1100 C
1101 D
1110 E
1111 F
Cuando las bases son mltiplos de
potencias de dos y sus exponentes NO son
mltiplos. Lo ms fcil es pasar el nmero
de la base a binario y de binario volver a
pasar a la otra base.
Tal como pasa a continuacin: 24 = 16 y 23 = 8

Conversin de la base hexadecimal a octal y viceversa:


Para realizar la conversin de hexadecimal a octal,
primero se debe convertir el nmero hexadecimal a
binario (4bits por smbolo). A continuacin, se realizan
agrupaciones de tres bits (empezando por la derecha) y
se transforma a su digito equivalente en octal.
El caso contrario se procede de forma similar pero
agrupando el nmero binario en grupos de cuatro bits.

Se suele hacer en dos pasos, pasndolo primeramente del


haxadecimal a binario y seguidamente de binario a octal.

3A9(16 0011 1010 1001(2

Ordenacin de los bits de tres en tres empezando por la


derecha

001 110 101 001(2 1 6 5 1(8

Se suele hacer en dos pasos, pasndolo primeramente del


octal a binario y seguidamente de binario a haxadecimal.

1 6 5 1(8 001 110 101 001(2

Ordenacin de los bits de cuatro en cuatro empezando por la


derecha

0011 1010 1001(2 3A9(16


En el resto de los casos hay que pasar el
nmero a decimal y despus convertirlo en
la otra base.

Cdigos binarios
El cdigo es una representacin unvoca de las
cantidades, de tal forma que a cada combinacin se le
asigna un cdigo determinado. El cdigo binario que
se utiliza en electrnica digital recibe el nombre de
binario natural.
Cdigos ponderados son aquellos que el lugar que
ocupan sus dgitos influye en el valor que representa.
El sistema decimal con las unidades, decenas,
centenas... o el binario natural con el valor de sus
pesos 1,2,4,8.... son ejemplos de cdigos ponderados.

Tipos de cdigos:

Cdigo continuo (progresivo): Cuando de un


nmero al siguiente nicamente se diferencia en
un bit (se dice que son adyacentes).

Cdigo cclico: En el que la ultima posicin es


adyacente la primera.

Cdigo autocomplementario: El que al


invertir los 1 por 0 y viceversa se obtiene como
resultado el negativo del mismo nmero. (En
complemento a la base menos uno)
Cdigos decimales Codificados en
binario (BCD)
Son cdigos en los que se representan los diez
smbolos decimales mediante cuatro bits binarios, y
conservan la estructura unidades, decenas, centenas...
Es de hacer notar que con cuatro bits se podran tener
16 combinaciones, de las que solo se utilizan 10. Esto
implica que la numeracin resultante con ms de un
digito decimal no sea un nmero binario natural
El nmero se construye sustituyendo, digito a digito,
cada smbolo decimal por su smbolo equivalente BCD.
BCD, BCD-8421 o BCD natural
Representa desde el 0 al 9 con su correspondiente
nmero binario natural de cuatro bits, siendo estos
ltimos sus 10 smbolos.
8421 representa el valor los pesos de cada cifra
decimal
Decimal: 745(10
BCD natural: 0111 0100 0101(BCD

0111 0100 0101(BCD No es un nmero binario


011101000101(2 Corresponde al nmero 1861(10
1011101001(2 Corresponde al 745(10
Para convertir de BCD a binario:
Primero: pasar de BCD a decimal
Segundo: pasar decimal a binario

Sistema Cdigo
decimal BCD-8421
0 0000
1 0001
2 0010
Es un cdigo PONDERADO en
3 0011 unidades decenas... y en su
4 0100 parte binaria
5 0101
6 0110
7 0111
8 1000
9 1001
1010
1011
1100
1101
1110
1111
BCD-AIKEN
Representa desde el 0 al 9 con las 5 primera y las 5
ultimas combinaciones binarias de cuatro bits, siendo
estos sus 10 smbolos.
Los valores de los pesos son: 2-4-2-1 (ntese la repeticin
de valores en los pesos)

Decimal: 745(10
BCD Aiken: 1101 0100 1011(BCD-AIKEN

Sistema Cdigo
decimal BCD-AIKEN
BCD-2421 Es un cdigo PONDERADO en
0 0000 unidades decenas... y en su
1 0001 parte binaria.
2 0010
3 0011
4 0100 Es un cdigo
0101 AUTOCOMPLEMENTARIO
0110
0111
1000 Sistema Cdigo Cdigo
1001 decimal BCD-AIKEN BCD-AIKEN
1010 POSITIVOS NEGATIVOS
5 1011 0 0000 1111
6 1100 1 0001 1110
7 1101 2 0010 1101
8 1110 3 0011 1100
9 1111 4 0100 1011
5 1011 0100
6 1100 0011
7 1101 0010
8 1110 0001
9 1111 0000
BCD-Exceso a 3 o BCD-XS3
Representa desde el 0 al 9 con las combinaciones del
BCD-natural sumndole 3 unidades, siendo estos sus
10 smbolos.

BCD-XS3 = BCD-natural + 3

Decimal: 745(10
BCD natural: 1010 0111 1000(BCD-XS3

Sistema Cdigo
decimal BCD-XS3
Es un cdigo
0000
0001 AUTOCOMPLEMENTARIO
0010
0 0011
1 0100
2 0101 Sistema Cdigo Cdigo
3 0110 decimal BCD-XS3 BCD-XS3
4 0111 POSITIVOS NEGATIVOS
5 1000 0 0011 1100
6 1001 1 0100 1011
7 1010 2 0101 1010
8 1011 3 0110 1001
9 1100 4 0111 1000
1101 5 1000 0111
1110 6 1001 0110
7 1010 0101
1111
8 1011 0100
9 1100 0011
BCD-5421
Los pesos de este cdigo valen 5, 4 ,2 y 1, de ah el
nombre, para sus 10 smbolos.
Se utilizaba mucho en las tarjetas perforadas.
Decimal: 745(10
BCD 5421: 1010 0100 1000(BCD-5421

Sistema Cdigo
decimal BCD-5421
Es un cdigo PONDERADO en
0 0000
1 0001 unidades decenas... y en su
2 0010 parte binaria.
3 0011
4 0100
5 1000
6 1001
7 1010
8 1011
9 1100
Biquinario

Es un cdigo BCD que est formado por un grupo de


dos bits (Bi) y otro con cinco bits (quinario).
Los pesos de este cdigo valen 5, 0 y 4 ,3, 2 , 1, 0.
Cada nmero se codifica con dos bits a nivel 1
Decimal: 745(10
Biquinario: 10 00100 01 10000 10 0001(BCD-Biquinario

Sistema Cdigo
decimal BCD-
Biquinario Es un cdigo PONDERADO en
50 43210 unidades decenas... y en su
0 01 00001 parte binaria.
1 01 00010
2 01 00100
3 01 01000
4 01 10000
Cada nmero est compuesto
5 10 00001 por dos bits
6 10 00010
7 10 00100
8 10 01000
9 10 10000
OTROS CODIGOS NO BCD
Cdigo Johnson
Es un cdigo no ponderado.
Los nmeros que podemos codificar son 2 n donde n
es el nmero de bits del cdigo.
Con 3 bits podemos codificar 6 combinaciones.
Con 4 bits podemos codificar 8 combinaciones.
Con 5 bits podemos codificar 10 combinaciones.

Sistema Cdigo
decimal Johnson Es un cdigo Continuo.
con 5 bits
0 00000
1 00001
Es un cdigo Cclico.
2 00011
3 00111
4 01111
5 11111
6 11110
7 11100
8 11000
9 10000
Cdigo Gray
Es un cdigo no ponderado.
Cada combinacin de diferencia de la siguiente
nicamente en un bit.
El nmero mximo de combinaciones es 2n.

Nmero Cdigo
decimal Gray Es un cdigo Continuo
0 000
1 001
(progresivo).
2 011
3 010 Es un cdigo Cclico.
4 110
5 111
6 101
7 100
Obtencin del cdigo Gray: (mtodo grfico)

Para un bit (una variable): 0

Para dos bits ( 2 variables):

Se obtiene a partir del anterior hacindolo girar sobre el eje X


(reflejndolo), aadiendo a continuacin ceros a la izquierda de las
posiciones antiguas y unos a la izquierda de las reflejadas.

00

01

----------- X

11

10

Para tres bits ( 3 variables):

Se obtiene a partir del anterior hacindolo girar sobre el eje X


(reflejndolo), aadiendo a continuacin ceros a la izquierda de las
posiciones antiguas y unos a la izquierda de las reflejadas.

000

001

011

010

----------- X

110

111

101

100
Conversin de binario a cdigo Gray:
Se realiza por mediacin de unas sumas despreciando
los arrastres si lo hubieran.
Ejemplo:
Pasar a cdigo gray el siguiente nmero binario: 1100(2

1 1 0
+ + + (despreciar arrastres)

1 1 0 0(2

1 0 1 0(Gray

Conversin de Gray a cdigo binario:


Se realiza por mediacin de unas sumas despreciando
los arrastres si lo hubieran.
Ejemplo:
Pasar a cdigo binario el siguiente nmero Gray:
1010(Gray

1 1 0
+ + + (despreciar arrastres)

1 0 1 0(Gray

1 1 0 0(2
Cdigos alfanumricos
ASCII (American Standard Code for Information
Interchange), Cdigo americano para el intercambio de
informacin.
Permite representar nmeros, caracteres alfabticos
(mayscula y minscula) y otros smbolos, los 32 primeros
son de control y por lo tanto no imprimibles. Para ello
dispone de 127 caracteres diferentes que son
representados por un cdigo binario de 7bits.
ASCII Extendido Cdigo adoptado por IBM para sus
ordenadores PC, aade 128 caracteres ms a los del ASCII
estndar, tales como letras griegas, caracteres grficos...
Para representarlos utiliza un cdigo binario de 8 bits

Fue creado en 1963 por el Comit Estadounidense de Estndares o ASA,


este organismo cambio su nombre en 1969 por Instituto Estadounidense de
Estndares Nacionales o ANSI como se lo conoce desde entonces.

Este cdigo naci a partir de reordenar y expandir el conjunto de smbolos y


caracteres ya utilizados por ese entonces en telegrafa por la compaa Bell.

En un primer momento solo inclua las letras maysculas, pero en 1967 se


agregaron las letras minsculas y algunos caracteres de control, formando
as lo que se conoce como US-ASCII, es decir los cdigos del 0 al 127.

As con este conjunto de solo 128 caracteres fue publicado en 1967 como
estndar, conteniendo todos lo necesario para escribir en idioma ingles.

En 1986, se modifico el estndar para agregar nuevos caracteres latinos,


necesarios para la escrituras de textos en otros idiomas, como por ejemplo el
espaol, as fue como se agregaron los caracteres que van del ASCII 128 al
255.

Casi todos los sistemas informticos de la actualidad utilizan el cdigo ASCII


para representar caracteres y textos.
ASCII Estndar

127 DEL
ASCII Extendido
(continuacin del estndar)

255 nbsp
ARTIMETICA BINARIA
Suma binaria
Reglas de la suma binaria:

0+0=0 Cuando los sumandos dan


como resultado dos, se
0+1=1
escribe cero y me llevo 1.
1+0=1
Al me llevo 1, se denomina
1 + 1 = 0 acarreo 1 acarreo o arrastre, en
ingles carry

Ejemplo: sumar los siguientes nmeros binarios.

1 11 acarreos 1
1011(2 11(10
+1001(2 +9(10
10100(2 20(10
Ntese que el resultado puede tener un bit ms que el
sumando mayor.
Resta binaria
Reglas de la Resta binaria:
Cuando el minuendo es
mayor que el substrayendo,
0-0=0
el resultado se escribe 1 y
0 - 1 = 1 se presta 1 se presta 1.

1-0=1 Al se presta 1, en ingles se


dice borrow.
1-1=0
Normalmente, mal dicho, se
le llama acarreo.

Ejemplo: restar los siguientes nmeros binarios.


El se presta o Borrow, al igual que en el sistema
decimal, se le suma al substrayendo siguiente. En
binario, por claridad, es mejor restarlo nuevamente del
resultado de la resta

1101(2 13(10
-1011(2 -11(10
- 1 Borrow

0010(2 2(10
Multiplicacin binaria
Reglas de la multiplicacin binaria:

00=0
01=0
10=0
11=1

Ejemplo: Multiplicar los siguientes nmeros binarios.

1 1 0 1(2 13(10
1 0 1 1(2 11(10
1101 13
1101 13
0000 143(10
1101
1 0 0 0 1 1 1 1(2
Divisin binaria
Reglas de la divisin binaria:

0:0=0
La tabla adjunta no se utiliza, ya que
0:1=0 la divisin se transforma en una
sucesin de multiplicaciones y
1:0= restas, al igual que hacemos en el
1:1=1 sistema decimal.

Ejemplo: Dividir los siguientes nmeros binarios.

1 0 1 0 1 1(2 1 1 0 (2
-1 1 0 1 1 1 (2
0 1 0 0 1
-1 1 0
0 0 1 1 1
-1 1 0
0 0 1

Si queremos continuar con decimales, aadimos un


cero en el cociente y en el resto y repetiremos hasta
poder seguir dividiendo.
Suma aritmtica BCD
El cdigo BCD tiene nicamente 10 smbolos (del 0 al
9), formado por 4bits.
Sin embargo, con 4 bits podemos alcanzar con la suma
binaria el valor 1111(2 (15 en decimal).
En general si al sumar los dos sumando el resultado es
mayor que 9, tendremos que efectuar una correccin
restando 10 y transmitiendo un acarreo y solamente
uno tanto si se produce como si no.
Si utilizamos 4 bits, no siempre nos daremos cuenta
que el resultado ha salido mayor que 9. por lo que
utilizaremos el siguiente proceso:
La suma parcial es correcta, el resultado da un nmero
BCD (del 0 al 9) y no se transmite ningn acarreo.
0101(2 5
+0011(2 +3

1000(2 8

La suma parcial es incorrecta, el resultado es mayor


que 9, no es un nmero BCD y no se transmite ningn
acarreo.
0101(2 5 El resultado no es un nmero
BCD.
+0110(2 +6
Efectuar correccin restando
1011(2 +11
10 y transmitir un acarreo a la
-1010(2 -10 siguiente cifra
1 acarreo 1 acarreo
obligado 0001(2 obligado
1
La suma parcial es incorrecta, el resultado
APARENTEMENTE da un nmero BCD (del 0 al 9) y se
transmite un acarreo.
1000(2 8(10
+1001(2 +9(10 El resultado PARECE QUE es
un nmero BCD si no nos
1) 0001(2 +17(10
fijamos en el acarreo.
-1010(2 -10(10 Efectuar correccin restando
1 acarreo
solo 1) 0111(2 1 acarreo
7(10 10 a los 4bits solamente y
obligado
obligado transmitir un nico acarreo a
la siguiente cifra
Ejemplo: Convertir a BCD y sumar 285(10 + 496(10.

1. Hacer la 1 suma parcial sin arrastrar acarreo a la


siguiente.
2. Si es necesario efectuar la correccin restando 10
si se da alguno de los casos indicados. Y en ese
caso arrastrar obligatoriamente un acarreo, y solo
uno, a la siguiente suma parcial.
3. Repetir los pasos 1 y 2 hasta finalizar la suma.

1 1 acarreos obligatorios por la correccin

0010 1000 0101(BCD (285(10))


0100 1001 0110(BCD (496(10))
0111 1) 0010 1011 (781(10))
-1010 -1010
1) 1000 0001
Representacin de nmeros con signo
Convenios con signo / magnitud:
Tenemos distintos tipos:

signo y magnitud:
El signo es un bit aadido a la izquierda del nmero,
siendo cero para indicar positivo y 1 para negativo. Y el
resto es la magnitud en binario natural. Este sistema no
nos es interesante.

Complemento a uno C1 ( a la base menos uno):


El signo es le bit de mayor peso, 0 si es positivo y
1 si es negativo.
Los nmeros positivos se representan igual que el
binario natural.
Los nmeros negativos se representaran por el
complementario del mismo nmero en positivo. Es
decir, se cambiaran 0 por 1 y viceversa. Este cambio
tambin afectara al bit de signo, que se tratara en todo
caso como el resto de los bits.
Para averiguar el valor de un nmero negativo
volveremos a complementar todo el nmero y ya
en positivo se calcular el valor.
Para evitar errores trabajaremos con un ancho de
palabra fijo. Por ejemplo: 8 bits que representa 1 de
signo seguido de 7 numricos.

Con un ancho de palabra de 8 bits podremos


representar desde el +127 hasta el 127

Tendr dos representaciones para el 0.


Ejemplos (con 8 bits):
Representar 8 y 8 en el convenio C1
+8 = 00001000(C1
-8 = 11110111(C1
Averiguar que nmero representa 11101010(C1
11101010(C1 es negativo por lo que volvemos a complementarlo para
transfrmalo en su positivo y poder leerlo. 00010101(C1 = +21
11101010(C1 = -21

C1 decimal
00000000 +0
10000000(C1 01111111(C1 = +127
00000001 +1
10000000(C1= -127
... ...
... ...
10000001(C101111110(C1 = +126
01111110 +126 10000001(C1= -126
01111111 +127
10000000 -127 11111110(C1 00000001(C1 = +1
10000001 -126 11111110(C1 = -1
... ...
... ... 11111111(C1 00000000(C1 = +0
11111110 -1 11111111(C1 = -0
11111111 -0
Complemento a uno C2 ( a la base ):
El signo es le bit de mayor peso, 0 si es positivo y
1 si es negativo.
Los nmeros positivos se representan igual que el
binario natural.
Los nmeros negativos se representaran por el
complementario del mismo nmero en positivo
sumndole al resultado 1 (NC2 = NC1 + 1 solo para
nmeros negativos). Es decir, se cambiaran 0 por 1 y
viceversa y se le suma 1. Este cambio tambin afectara
al bit de signo, que se tratara en todo caso como el
resto de los bits.
Para averiguar el valor de un nmero negativo
volveremos a complementar todo el nmero a C2 y
ya en positivo se calcular el valor.
Para evitar errores trabajaremos con un ancho de
palabra fijo. Por ejemplo: 8 bits que representa 1 de
signo seguido de 7 numricos.

Con un ancho de palabra de 8 bits podremos


representar desde el +127 hasta el 128

Ejemplos (con 8 bits):


Representar 8 y 8 en el convenio C2
+8 = 00001000(C2
-8 = 11110111(C1 + 1 = 11111000(C2
Averiguar que nmero representa 11101010(C2
11101010(C2 es negativo por lo que volvemos a complementarlo a C2
para transfrmalo en su positivo y poder leerlo.
00010101 + 1 = 00010110(C2 = +22
11101010(C2 = -22

C2 decimal
00000000 +0 10000000(C2
00000001 +1 01111111 + 1 = 10000000(2 = +128
... ... 10000000(C2= -128
... ... 10000001(C2
01111110 +126 01111110 + 1 = 01111111(C2 = +127
01111111 +127 10000001(C2 = -127
10000000 -128
10000001 -127 11111110(C2
... ... 00000001 + 1 = 00000010(C2 = +2
... ... 11111110(C2 = -2
11111110 -2
11111111 -1 11111111(C2
00000000 + 1 = 00000001(C2 = +1
11111111(C2 = -1
Resumiendo:
Nmeros positivos:
Se representan igual en Binario natural, en C1 y en
C2. Es decir un determinado nmero tiene la misma
representacin en cualquiera de los tres sistemas.

El bit de signo se trata igual


que el resto de bits numricos
Nmeros negativos:
En C1 se complementa el positivo, dando por
resultado su negativo y viceversa.
En C2 se complementa el positivo y se le suma 1,
dando por resultado su negativo y viceversa.

Conviene utilizar un ancho de palabra fijo ya que el


ultimo bit representa el signo. Esto es especialmente
importante a la hora de realizar operaciones
matemticas con dichos nmeros.

Con un ancho de palabra fijo, el margen de numeracin


est limitado a un mximo positivo y otro mximo
negativo. C1 es un cdigo simtrico (+127...+127) y C2
es un cdigo asimtrico (+127...-128).
C1: Dispone de dos representaciones para el cero.
C2: dispone de una sola representacin para el cero.
Una propiedad es que los nmeros en convenio de C1 y C2 el
nmero se puede extender todo lo que se desee, simplemente
aadiendo bits iguales de signo:
110(C2 = -2 con tres bits 010(C2 = 2 con tres bits

11110(C2 = -2 con 5 bits 00010(C2 = 2 con tres bits


Aritmtica binaria en C1
Los nmeros en C1 ya sean positivos y/o negativos se
suman aplicando las mismas normas que en la suma
aritmtica binaria.(la resta es una suma con un negativo)
Si al realizar la suma se obtiene un bit de acarreo en el
ultimo sumando, este se ha de volver a sumar al primer
bit del resultado.
El resultado podr ser positivo, negativo o producirse
un desbordamiento overflow, en este ltimo caso el
resultado ser errneo.

Desbordamiento OVERFLOW
Un desbordamiento se puede producir en las
operaciones en C1 o C2.
Se produce cuando la el resultado de la suma es mayor
que el mximo nmero que se puede representar con el
ancho de palabra utilizado. En este caso notaremos un
cambio accidental del signo.
Se detectan los desbordamientos si ocurre uno de estos
casos:
Entra un acarreo al bit de signo y no sale ningn
acarreo de este bit.
No entra ningn acarreo al bit de signo y sale un
acarreo de dicho bit.

Si el resultado es negativo lo volveremos a


complementar para obtener el positivo de dicho
nmero y averiguar de este modo el valor decimal del
negativo.
Ejemplo: realizar las siguientes sumas (8bits) en C1.

45 + 20
1111
45 0 0 1 0 1 1 0 1(C1
+20 + 0 0 0 1 0 1 0 0(C1
+65 0 1 0 0 0 0 0 1(C1

45 20 45 + (-20)
+20 = 0 0 0 1 0 1 0 0(C1 -20 = 1 1 1 0 1 0 1 1(C1
111 1 111
45 0 0 1 0 1 1 0 1(C1
+(-20) + 1 1 1 0 1 0 1 1(C1
1)0 0 0 1 1 0 0 0 Se produce un acarreo de salida,
hay que sumarlo al resultado para
obtener el resultado definitivo.
1
+25 0 0 0 1 1 0 0 1(C1
20 45 20 + (-45)
+45 = 0 0 1 0 1 1 0 1(C1 - 45 = 1 1 0 1 0 0 1 0(C1
1
20 0 0 0 1 0 1 0 0(C1
+(-45) + 1 1 0 1 0 0 1 0(C1
-25 1 1 1 0 0 1 1 0(C1
1 1 1 0 0 1 1 0(C1 0 0 0 1 1 0 0 1(C1 = +25
1 1 1 0 0 1 1 0(C1 = - 25

DESBORDAMIENTO
45 + 100 Bit de signo :

11 11 1. Entra un acarreo de su antecesor.


2. No sale ningn acarreo del bit de
signo
45 0 0 1 0 1 1 0 1(C1
+100 + 0 1 1 0 0 1 0 0(C1
+145 1 0 0 1 0 0 0 1(C1

DESBORDAMIENTO
Se ha producido un cambio
DESBORDAMIENTO accidental del signo.
Supera la mxima cuenta
positiva con 8 bits en C1 (+127)
- 45 - 100
+45 = 0 0 1 0 1 1 0 1(C1 - 45 = 1 1 0 1 0 0 1 0(C1
+100 = 0 1 1 0 0 1 0 0(C1 -100 = 1 0 0 1 1 0 1 1(C1
1 1 1 DESBORDAMIENTO

Bit de signo :
- 45 1 1 0 1 0 0 1 0(C1
3. No entra un acarreo de su antecesor.
+(- 100) + 1 0 0 1 1 0 1 1(C1 4. Sale un acarreo del bit de signo

1)0 1 1 0 1 1 0 1
1
- 145 0 1 1 0 1 1 1 0(C1

DESBORDAMIENTO
Se ha producido un cambio
accidental del signo.
DESBORDAMIENTO

Supera la mxima cuenta


negativa con 8 bits en C1 (-127)
Aritmtica binaria en C2
Los nmeros en C2 ya sean positivos y/o negativos se
suman aplicando las mismas normas que en la suma
aritmtica binaria.(la resta es una suma con un negativo)

Si al realizar la suma se obtiene un bit de


acarreo en el ultimo sumando, este NO SE
TENDR EN CUENTA.
El resultado podr ser positivo, negativo o producirse
un desbordamiento overflow, en este ltimo caso el
resultado ser errneo.
Si el resultado es negativo lo volveremos a
complementar para obtener el positivo de dicho
nmero y averiguar de este modo el valor decimal del
negativo.

Ejemplo: realizar las siguientes sumas (8bits) en C2.

45 + 20
Comprubese que
1111 los nmeros
positivos son
45 0 0 1 0 1 1 0 1(C2 idnticos en C1 C2
+20 + 0 0 0 1 0 1 0 0(C2 y binario

+65 0 1 0 0 0 0 0 1(C2
45 20 45 + (-20)
+20 = 0 0 0 1 0 1 0 0(C2
-20 = 1 1 1 0 1 0 1 1(C1 + 1 = 1 1 1 0 1 1 0 0(C2
11 11
45 0 0 1 0 1 1 0 1(C2
+(-20) + 1 1 1 0 1 1 0 0(C2
+25 1)0 0 0 1 1 0 0 1(C2
Se produce un acarreo de salida.

SE DESPRECIA.

20 45 20 + (-45)
+45 = 0 0 1 0 1 1 0 1(C2
- 45 = 1 1 0 1 0 0 1 0(C1 + 1 = 1 1 0 1 0 0 1 1(C2
1
20 0 0 0 1 0 1 0 0(C2
+(-45) + 1 1 0 1 0 0 1 1(C2
-25 1 1 1 0 0 1 1 1(C2

1 1 1 0 0 1 1 1(C2 0 0 0 1 1 0 0 0 + 1= 0 0 0 1 1 0 0 1(C2 =25


1 1 1 0 0 1 1 0(C2 = - 25
DESBORDAMIENTO
45 + 100 Bit de signo :

11 11 5. Entra un acarreo de su antecesor.


6. No sale ningn acarreo del bit de
signo
45 0 0 1 0 1 1 0 1(C2
+100 + 0 1 1 0 0 1 0 0(C2
+145 1 0 0 1 0 0 0 1(C2

DESBORDAMIENTO
Se ha producido un cambio
DESBORDAMIENTO accidental del signo.
Supera la mxima cuenta
positiva con 8 bits en C2 (+127)

- 45 - 100
+45 = 0 0 1 0 1 1 0 1(C2
- 45 = 1 1 0 1 0 0 1 0(C1 + 1 = 1 1 0 1 0 0 1 1(C2
+100 = 0 1 1 0 0 1 0 0(C2
-100 = 1 0 0 1 1 0 1 1(C1+ 1 = 1 0 0 1 1 1 0 0(C2

DESBORDAMIENTO
1 1
Bit de signo :
- 45 1 1 0 1 0 0 1 1(C2
7. No entra un acarreo de su antecesor.
8. Sale un acarreo del bit de signo
+(- 100) + 1 0 0 1 1 1 0 0(C2
- 145 1)0 1 1 0 1 1 1 1(C2

DESBORDAMIENTO
Se ha producido un cambio
accidental del signo.
DESBORDAMIENTO

Supera la mxima cuenta


negativa con 8 bits en C2 (-128)
Aritmtica BCD Conclusin final

En BCD cuando hay que aplicar la correccin, restar


10, se hace por complemento a 2 (C2),
prescindiendo del bit de signo:
10(10 = 1010 (2
-10(10 = 0101 (c1 + 1 = 0110(c2

Ejemplo: (ver que es el mismo que el ejemplo anterior BCD)

1 1 acarreos obligatorios por la correccin

0010 1000 0101(BCD (285(10))


0100 1001 0110(BCD (496(10))
0111 1) 0010 1011 (781(10))
+ 0110 + 0110
1000 1) 0001

También podría gustarte