t1 representacion de la información 13 14

42
Tema 1 Tema 1 Tema 1 Tema 1 REPRESENTACIÓN REPRESENTACIÓN REPRESENTACIÓN REPRESENTACIÓN DE LA INFORMACIÓN DE LA INFORMACIÓN DE LA INFORMACIÓN DE LA INFORMACIÓN 1 Introducción Tema 1: Representación Sistemas de numeración Representación de la información Aritmética binaria Información en los computadores los computadores 2

Upload: davidjoan91

Post on 20-Jan-2016

16 views

Category:

Documents


4 download

TRANSCRIPT

Tema 1Tema 1Tema 1Tema 1

REPRESENTACIÓNREPRESENTACIÓNREPRESENTACIÓN REPRESENTACIÓN DE LA INFORMACIÓNDE LA INFORMACIÓNDE LA INFORMACIÓNDE LA INFORMACIÓN

11

Introducción

Tema 1: Representación

Sistemas de numeración

Representación de la información

Aritmética binaria

Información en los computadoreslos computadores

22

Sistemas analógicos / Sistemas digitalesSistemas analógicos / Sistemas digitales

AnalógicosAnalógicos: : –– Actúan bajo el control de variables continuas (Actúan bajo el control de variables continuas (∞∞ valores)valores)

DigitalesDigitales:: DigitalesDigitales::–– Actúan bajo el control de variables discretas (dos valores Actúan bajo el control de variables discretas (dos valores

= señal lógica o digital) = señal lógica o digital) g g )g g )

L i f ió di i lé iL i f ió di i lé iLa información se representa mediante tensiones eléctricasLa información se representa mediante tensiones eléctricas

-- Señales Señales analógicasanalógicas: : ∞ ∞ valores en un rango.valores en un rango.gg gg

-- Señales Señales discretasdiscretas: número finito de valores.: número finito de valores.

33

Sistemas analógicos / Sistemas digitalesSistemas analógicos / Sistemas digitales

t t

1 1 1

00 0

Ejemplos de señal analógica y digital

44

Ejemplos de señal analógica y digital

Sistemas digitalesSistemas digitales

Los circuitos digitales presentan dos niveles de tensión para Los circuitos digitales presentan dos niveles de tensión para representar el 0 y el 1 (por ejemplo 0 y +5 voltios)representar el 0 y el 1 (por ejemplo 0 y +5 voltios)representar el 0 y el 1 (por ejemplo 0 y +5 voltios)representar el 0 y el 1 (por ejemplo 0 y +5 voltios)

VentajasVentajas ↑ ↑ simplicidad de diseñosimplicidad de diseño ↓margen error (Inmunidad al ruido)↓margen error (Inmunidad al ruido) ↑ velocidad trabajo↑ velocidad trabajo ↑ j↑ j ↓ consumo↓ consumo ↓coste (mayor densidad integración en un chip)↓coste (mayor densidad integración en un chip) ↑ precisión añadiendo más circuitos↑ precisión añadiendo más circuitos ↑ precisión añadiendo más circuitos↑ precisión añadiendo más circuitos

InconvenientesInconvenientesC i t d l l l ló i (C i t d l l l ló i (ll t T )t T ) Casi todos los valores reales son analógicos (Casi todos los valores reales son analógicos (l,m,vl,m,v, t ,T…), t ,T…)

Son necesarios convertidores ASon necesarios convertidores A--D y DD y D--AA

5

ClasificaciónClasificación

Decimal

Sistemas de numeración

Binario

Sistemas de numeración

Octal

Hexadecimal

ConversionesConversiones

66

Sistemas de NumeraciónSistemas de Numeración

Sistema de numeraciónSistema de numeración: es un conjunto de reglas, : es un conjunto de reglas, i i ii i isignos y convenios que nos permiten expresar, signos y convenios que nos permiten expresar,

verbal y gráficamente, las cantidades de las verbal y gráficamente, las cantidades de las magnitudes o valores numéricos.magnitudes o valores numéricos.magnitudes o valores numéricos.magnitudes o valores numéricos.

BaseBase: es el número de signos distintos que se: es el número de signos distintos que seBaseBase: es el número de signos distintos que se : es el número de signos distintos que se emplean en el sistema.emplean en el sistema.

AlfabetoAlfabeto: son todos y cada uno de los signos que : son todos y cada uno de los signos que se emplean en el sistema.se emplean en el sistema.

Notación matemáticaNotación matemática: : NúmeroNúmero (B(B

7Ejemplo: El sistema de numeración decimal utiliza 10 dígitos

Base = 10Alfabeto = 0,1,2,3,4,5,6,7,8,9

Sistema Egipcio: 3000 A CSistema Egipcio: 3000 A CSistema Egipcio: 3000 A.C.Sistema Egipcio: 3000 A.C.

88

Sistema Chino: 1500 A CSistema Chino: 1500 A CSistema Chino: 1500 A.C.Sistema Chino: 1500 A.C.

99

Sistema Griego: 600 A CSistema Griego: 600 A CSistema Griego: 600 A.C.Sistema Griego: 600 A.C.

1010

Sistemas de Numeración: clasificaciónSistemas de Numeración: clasificación

Posicionales: Posicionales: cada cifra (acada cifra (aii) de un valor numérico ) de un valor numérico

contribuye al valor final dependiendo de su valor contribuye al valor final dependiendo de su valor

y de la posición que ocupa dentro de él.y de la posición que ocupa dentro de él.

No posicionales: No posicionales: la contribución o peso de cada la contribución o peso de cada

cifra no depende del lugar que ocupa.cifra no depende del lugar que ocupa.

11

Sistemas de Numeración no posicionalesSistemas de Numeración no posicionales

EjemploEjemplo:: NúmerosNúmeros romanosromanos (XXI)(XXI)j pj p ( )( )

InconvenientesInconvenientes::

-- ParaPara escribirescribir valoresvalores numéricosnuméricos grandesgrandes sonsonnecesariosnecesarios muchosmuchos símbolossímbolos..

-- ResultaResulta difícildifícil efectuarefectuar operacionesoperaciones aritméticasaritméticas conconppellos,ellos, cosacosa queque nono sucedesucede concon loslos posicionalesposicionales..

12

Sistemas posicionalesSistemas posicionales

Representación del número:Representación del número:

n-1i

iN (dígito) *(base) i = posición respecto a la comai = posición respecto a la coma

ii m

N (d g o) (base)

p pp p

m = dígitos a la derecha de la comam = dígitos a la derecha de la coma

n = dígitos a la izquierda de la coman = dígitos a la izquierda de la coma

Existen tantos símbolos como la base del sistema (B)Existen tantos símbolos como la base del sistema (B)

N tN t El l fi l d l úEl l fi l d l ú AA AA AA AA A A A ááNotaNota: El valor final del número : El valor final del número AAnAAn-1…A…A1AA0,A-1A-2…A-m será una será una suma de potencias de la base B:suma de potencias de la base B:

1313

NN = = AAn·B·Bn + + AAn-1·B·Bn-1 + ... + + ... + AA1·B·B1 + + AA0·B·B0 + + AA-1·B·B-1 +…+ +…+ AA-m·B·B-m

Sistema decimalSistema decimal

-- Es el sistema que utilizamos todos de forma habitual.Es el sistema que utilizamos todos de forma habitual.

–– BaseBase:: 1010

–– AlfabetoAlfabeto:: 00,,11,,22,,33,,44,,55,,66,,77,,88,,99

-- Cumple la fórmula anterior (B=10):Cumple la fórmula anterior (B=10):

N = AN = Ann·10·10nn + A+ Ann--11·10·10nn--11 + ... + A+ ... + A11·10·1011 + A+ A00·10·100 0 + A+ A--11·10·10--1 1 + ... + A+ ... + A--pp·10·10--pp

2252251010 = 2·10= 2·1022 + 2·10+ 2·1011 + 5·10+ 5·1000 = 200 + 20 + 5= 200 + 20 + 5

14

Sistema decimalSistema decimalB 10B 10 Base: 10. Base: 10.

Símbolos 0 1 2 9Símbolos 0 1 2 9 Símbolos: 0,1,2,…9Símbolos: 0,1,2,…9

4 1 3 Valor numérico Peso

10 0 = 1 x 3 = 310 1 10 1 1010 1 = 10 x 1 = 1010 2 = 100 x 4 = 4000 00 00

Total 413Exponente: posición del dígito

1515Base: símbolos del sistemaExponente: posición del dígito.

Sistema BINARIOSistema BINARIO

BB 22BaseBase: : 22

AlfabetoAlfabeto: : 0, 10, 1

InconvenientesInconvenientes: :

–– Necesita muchas cifras para la representación de un número grande.Necesita muchas cifras para la representación de un número grande.

–– Es muy engorroso para un humano.Es muy engorroso para un humano.

VentajasVentajas::VentajasVentajas: :

–– Representan y procesan información mediante circuitos electrónicos de 2 estados.Representan y procesan información mediante circuitos electrónicos de 2 estados.

-- Es el más adecuado para las máquinas electrónicas.Es el más adecuado para las máquinas electrónicas.

–– Seguridad y rapidez de respuesta (ON/OFF).Seguridad y rapidez de respuesta (ON/OFF).

–– Operaciones aritméticas sencillas.Operaciones aritméticas sencillas.16

Sistemas de NumeraciónSistemas de NumeraciónSistemas de NumeraciónSistemas de Numeración DígitoDígito == bitbit //// 88 bitsbits == bytebyte //// 1616 óó 3232 bitsbits == palabrapalabra TablaTabla dede equivalenciaequivalencia decimaldecimal yy binariobinario

DecimalDecimal BinarioBinario DecimalDecimal BinarioBinario00 00000000 88 1000100011 00010001 99 1001100122 00100010 1010 1010101022 00100010 1010 1010101033 00110011 1111 1011101144 01000100 1212 1100110044 01000100 1212 1100 1100 55 01010101 1313 1101 1101 66 01100110 1414 1110111066 01100110 1414 1110 1110 77 01110111 1515 11111111

17

Conversión de binario a decimalConversión de binario a decimal

UtilizandoUtilizando lala fórmulafórmula generalgeneral dede desarrollodesarrollo parapara loslos sistemassistemasposicionalesposicionales (suma(suma dede potenciaspotencias dede lala base)base) parapara B=B=22posicionalesposicionales (suma(suma dede potenciaspotencias dede lala base),base), parapara BB 22

N = AN = Ann·2·2nn + A+ Ann--11·2·2nn--11 + ... + A+ ... + A11·2·211 + A+ A00·2·20 0 + A+ A--11··22--1 1 + ... + A+ ... + A--pp··22--pp

Parte entera Parte fraccionaria

18

El sistema binarioEl sistema binario

n-1i 5 2 0

iN (dígito) *(base) 1 2 1 2 1 2 32 4 1 37x x x ii m

N (dígito) (base) 1 2 1 2 1 2 32 4 1 37x x x

1 0 0 1 0 1 1 0 0 1 0 1 2)2) Valor numéricoValor numéricoPesoPeso

2200 = 1= 1 xx 11 = 1= 12211 = 2= 2 xx 00 = 0= 02222 = 4= 4 xx 11 = 4= 42233 = 8= 8 xx 00 = 0= 02244 = 16 = 16 xx 00 = 0= 02255 = 32 = 32 xx 11 = 32= 32T lT l 3737

1919

TotalTotal 3737

EjemploEjemploEjemploEjemplo

¿El número binario 1001,1¿El número binario 1001,1(2(2 a qué decimal equivale?a qué decimal equivale?

11 xx 223 3 + + 00 xx 222 2 + + 00 xx 221 1 + + 11 xx 2200 + + 11 xx 22--1 1 ==

8 + 0 + 0 + 1 + 0,5 = 8 + 0 + 0 + 1 + 0,5 =

9,59,5(10(10

2020

Conversión de decimal a binarioConversión de decimal a binario

ParteParte enteraentera:: dividirdividir porpor 22 (la(la base)base) hastahasta queque elelParteParte enteraentera:: dividirdividir porpor 22 (la(la base)base) hastahasta queque elelcocientecociente seasea 00 óó 11.. TomarTomar elel últimoúltimo cocientecociente yyloslos restosrestos obtenidosobtenidos enen ordenorden inversoinverso aa susuloslos restosrestos obtenidosobtenidos enen ordenorden inversoinverso aa susuobtenciónobtención..

ParteParte fraccionariafraccionaria:: multiplicarmultiplicar porpor 22 (la(la base)base) dedeformaforma sucesivasucesiva laslas partespartes fraccionariasfraccionarias..TomamosTomamos laslas partespartes enterasenteras enen elel mismomismo ordenordendede susu obtenciónobtención

UnirUnir loslos resultadosresultados 21

EjemploEjemploj pj p¿El número decimal 109,625¿El número decimal 109,625(10(10 a qué binario equivale?a qué binario equivale?

Parte entera: Parte entera: 109 2

1 54 2

0 27 2

1 13 2

109109 == 110110111011011 6 2

0 3 2

1 1

109109(10(10 = = 11011011101101((22

Parte fraccionaria:Parte fraccionaria:0,625 * 0,625 * 22 = = 11,250,250

1 1

0 6250 625 101101,, ,,

0,250 * 0,250 * 22 = = 00,5,50,5 * 0,5 * 22 = = 11,0,0

0,6250,625(10(10 = = 101101((22

2222109,625109,625(10(10 = = 1101101,1011101101,101((22

Sistema OctalSistema Octal

BaseBase: : 88

AlfabetoAlfabeto: : 0,1,2,3,4,5,6,70,1,2,3,4,5,6,7

-- ElEl interésinterés dede esteeste sistemasistema provieneproviene dede queque susuconversiónconversión alal binariobinario resultaresulta sencilla,sencilla, porpor serser 88 == 2233..

-- PermitePermite presentacionespresentaciones másmás compactascompactas queque concon elelsistemasistema binario,binario, yaya queque cadacada dígitodígito octaloctal equivaleequivale aa 33dígitosdígitos binariosbinarios..

23

Tabla de equivalencia octal y binarioTabla de equivalencia octal y binario

OctalOctal BinarioBinario

00 00000000 000000

11 001001

22 01001022 010010

33 011011

44 10010044 100100

55 101101

66 11011066 110110

77 111111

24

Conversión de octal a binariConversión de octal a binarioo

SustituimosSustituimos cadacada cifracifra octaloctal porpor sussus trestres cifrascifrasbinariasbinarias equivalentesequivalentes::

375,42375,4288 = 011 111 101 , 100 010= 011 111 101 , 100 0102288 22

ConversiónConversión dede binaribinarioo aa octaloctalSeSe realizarealiza aa lala inversainversa.. ComenzandoComenzando desdedesde lala comacomad i ld i l h ih i ll i i di i d h ih i ll d hd h (( lldecimaldecimal haciahacia lala izquierdaizquierda yy haciahacia lala derechaderecha (para(para lalaparteparte fraccionaria)fraccionaria) sustituimossustituimos cadacada 33 bitsbits porpor unundígitodígito octaloctal..dígitodígito octaloctal..

25

Conversión de octal a decimalConversión de octal a decimal

SeSe realizarealiza deldel mismomismo modomodo queque dede binariobinario aa decimal,decimal, peropero siendosiendo B=B=88..

N = N = AAnn··88nn + A+ Ann--11··88nn--11 + ... + A+ ... + A11··8811 + A+ A00··880 0 + A+ A--11··88--1 1 + ... + A+ ... + A--pp··88--pppp

345,5345,588 = 3 = 3 ··8822 + 4 + 4 ··8811 + 5 + 5 ··8800 + 5 + 5 ··88--11 ==

= 192 + 32 + 5 + 0 625 = 229 625= 192 + 32 + 5 + 0 625 = 229 6251010 192 32 5 0,625 229,625 192 32 5 0,625 229,6251010

Conversión de decimal a octalConversión de decimal a octalConversión de decimal a octalConversión de decimal a octal

SeSe realizarealiza deldel mismomismo modomodo queque dede decimaldecimal aa binario,binario, dividiendodividiendo lalaparteparte enteraentera dede formaforma sucesivasucesiva porpor 88 (la(la base)base) yy multiplicandomultiplicando lala parteparteparteparte enteraentera dede formaforma sucesivasucesiva porpor 88 (la(la base)base) yy multiplicandomultiplicando lala partepartefraccionariafraccionaria porpor 88 (la(la base)base)..

26

Sistema HexadecimalSistema Hexadecimal

BaseBase: : 1616

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

-- ElEl interésinterés dede esteeste sistemasistema provieneproviene dede queque susuconversiónconversión alal binariobinario resultaresulta sencilla,sencilla, porpor serser 1616 == 2244..

-- PermitePermite representacionesrepresentaciones másmás compactascompactas yy legibleslegiblesqueque concon elel sistemasistema binario,binario, yaya queque cadacada dígitodígitohexadecimalhexadecimal equivaleequivale aa 44 dígitosdígitos binariosbinarios..

27

Tabla de equivalencia hexadecimal y binarioTabla de equivalencia hexadecimal y binario

Hex.Hex. BinarioBinario Hex.Hex. BinarioBinario

00 00000000 88 1000100000 00000000 88 1000100011 00010001 99 1001100122 00100010 AA 1010101022 00100010 AA 1010101033 00110011 BB 1011101144 01000100 CC 1100110044 01000100 CC 1100 1100 55 01010101 DD 1101 1101 66 01100110 EE 1110 1110 77 01110111 FF 11111111

28

Conversión de hexadecimal a binariConversión de hexadecimal a binarioo

Se sustituye cada cifra hexadecimal por sus 4 cifras binarias equivalentes:Se sustituye cada cifra hexadecimal por sus 4 cifras binarias equivalentes:

9A7E9A7E1616 = 1001 1010 0111 1110= 1001 1010 0111 111022

Conversión de Conversión de binaribinarioo a hexadecimala hexadecimal

Se realiza a la inversa. Creando grupos de 4 bits empezando desde la Se realiza a la inversa. Creando grupos de 4 bits empezando desde la coma decimal hacia la izquierda y hacia la derecha y sustituyendo coma decimal hacia la izquierda y hacia la derecha y sustituyendo cada grupo de 4 bits por su dígito hexadecimal correspondiente:cada grupo de 4 bits por su dígito hexadecimal correspondiente:cada grupo de 4 bits por su dígito hexadecimal correspondiente:cada grupo de 4 bits por su dígito hexadecimal correspondiente:

1101010111100011100000001 1100011101010111100011100000001 110001 1ABC701 C41ABC701 C41101010111100011100000001,1100011101010111100011100000001,1100012 2 = 1ABC701,C41ABC701,C41616

0001 1010 1011 1100 0111 0000 0001 , 1100 01000001 1010 1011 1100 0111 0000 0001 , 1100 010022,, 22

1 A B C 7 0 1 , C 41 A B C 7 0 1 , C 429

Conversión de hexadecimal a decimalConversión de hexadecimal a decimal

Se realiza del mismo modo que de binario a decimal, pero con B = 16 y Se realiza del mismo modo que de binario a decimal, pero con B = 16 y

sustituyendo los símbolos A,B,C,D,E y F por su valor decimalsustituyendo los símbolos A,B,C,D,E y F por su valor decimal

N = N = AAnn··1616nn + A+ Ann--11··1616nn--11 + ... + A+ ... + A11··161611 + A+ A00··16160 0 + A+ A--11··1616--1 1 + ... + A+ ... + A--pp··1616--pp

Conversión de decimal a hexadecimalConversión de decimal a hexadecimal

Se realiza del mismo modo que de decimal a binario, dividiendo la Se realiza del mismo modo que de decimal a binario, dividiendo la parte entera de forma sucesiva por 16 (la base) y multiplicando la parte entera de forma sucesiva por 16 (la base) y multiplicando la parte fraccionaria por 16 (la base) Además debemos sustituir losparte fraccionaria por 16 (la base) Además debemos sustituir losparte fraccionaria por 16 (la base). Además, debemos sustituir los parte fraccionaria por 16 (la base). Además, debemos sustituir los valores 10, 11,…,15 por A,B,...,F.valores 10, 11,…,15 por A,B,...,F.

30

Conversión de una base cualquiera a base decimal Conversión de una base cualquiera a base decimal

ParaPara esteeste tipotipo dede conversiónconversión sese utilizautiliza lala fórmulafórmula generalgeneral dede desarrollodesarrollo dedepp ggunun númeronúmero comocomo lala sumasuma dede productosproductos dede potenciaspotencias dede lala basebase BB..

NN == AAnn·b·bnn ++ AAnn--11·b·bnn--11 ++ ...... ++ AA11·b·b11 ++ AA00·b·b00 ++ AA--11·b·b--11 ++ ...... ++ AA--pp·b·b--pp

13121312,,3344 == 11··4433 ++ 33··4422 ++ 11··4411 ++ 22··4400 ++ 33··44--11 ==== 6464 ++ 4848 ++ 44 ++ 22 ++ 00,,7575 == 118118,,75751010,, ,, 1010

31

Conversión de base decimal a cualquier base Conversión de base decimal a cualquier base 10 => b10 => b

Parte entera:Parte entera: di idir por la base (b) hasta q e eldi idir por la base (b) hasta q e elParte entera:Parte entera: dividir por la base (b) hasta que el dividir por la base (b) hasta que el cociente sea menor que la base (el divisor). Coger cociente sea menor que la base (el divisor). Coger el último cociente y los restos obtenidos en ordenel último cociente y los restos obtenidos en ordenel último cociente y los restos obtenidos en orden el último cociente y los restos obtenidos en orden inverso a su obtención.inverso a su obtención.

Parte fraccionaria:Parte fraccionaria: multiplicar por la base (b) de multiplicar por la base (b) de forma sucesiva las partes fraccionarias y coger lasforma sucesiva las partes fraccionarias y coger lasforma sucesiva las partes fraccionarias y coger las forma sucesiva las partes fraccionarias y coger las partes enteras en el mismo orden de su obtención.partes enteras en el mismo orden de su obtención.

Unir las partesUnir las partes

32

Conversión de una base bConversión de una base b11 a otra ba otra b22

ElEl procesoproceso constaconsta dede dosdos pasospasos::

–– ConvertirConvertir elel númeronúmero enen lala basebase bb11 aa lala basebase decimaldecimal

–– ConvertirConvertir elel númeronúmero decimaldecimal aa lala bb22

bb11 10 10 bb22

33

Suma

Aritmética

Resta

binaria

Multiplicación

División

3434

Aritmética binariaAritmética binaria

SumaSuma ((a+ba+b))SumaSuma ((a ba b))

aa bb ((a+ba+b)) AcarreoAcarreo

0 00 0 00 00

0 10 1 11 00

1 01 0 11 00

1 11 1 00 11 y me llevo unay me llevo una1 11 1 00 1 1 y me llevo unay me llevo una

Nota: La suma se realiza igual q en el sistema decimal:Nota: La suma se realiza igual q en el sistema decimal:

1+1+1 = 1 y acarreo 11+1+1 = 1 y acarreo 1 (me llevo una )(me llevo una )1+1+1 1 y acarreo 1 1+1+1 1 y acarreo 1 (me llevo una )(me llevo una )

35

Aritmética binariaAritmética binaria

RestaResta (a(a--b)b)RestaResta (a(a b)b)a b (aa b (a--b) Acarreob) Acarreo

0 00 0 00 00

0 10 1 11 1 (1 (NegativoNegativo)) d bd b0 10 1 11 1 (1 (NegativoNegativo) ) y debo unay debo una

1 01 0 11 001 11 1 00 001 11 1 00 00

Nota: Existen dos formas de realizarla:Nota: Existen dos formas de realizarla:

-- Modificando el Modificando el Minuendo (restando)Minuendo (restando)

-- Modificando elModificando el SustraeSustraendondo (sumando)(sumando)

36

Modificando el Modificando el SustraeSustraendondo (sumando)(sumando)

Aritmética binariaAritmética binaria

MultiplicaciónMultiplicación (a · b)(a · b)MultiplicaciónMultiplicación (a b)(a b)a b (a · b)a b (a · b)

0 00 0 000 00 0 00

0 10 1 00

1 01 0 00

1 11 1 111 11 1 11

Nota:Nota: se realiza de la misma forma que en sistema decimal Esse realiza de la misma forma que en sistema decimal EsNota: Nota: se realiza de la misma forma que en sistema decimal. Es se realiza de la misma forma que en sistema decimal. Es más sencilla puesto que sólo tenemos 0’s y 1’s.más sencilla puesto que sólo tenemos 0’s y 1’s.

37

Aritmética binariaAritmética binaria

DivisiónDivisión (a(a // b)b)DivisiónDivisión (a(a // b)b)a b (a / b)a b (a / b)

0 00 0 N d fi idN d fi id0 00 0 No definidoNo definido

0 10 1 00

1 01 0 ImposibleImposible

1 11 1 111 11 1 11

N tN t El l it d t i tidEl l it d t i tidNota: Nota: El algoritmo se reduce a sustracciones repetidas El algoritmo se reduce a sustracciones repetidas del divisor, como en decimal.del divisor, como en decimal.

38

Números con

Información en

Números con signo

los computadores Operaciones aritméticas de números con números con

signo

3939

¿Qué información necesitamos representar?¿Qué información necesitamos representar?¿Qué información necesitamos representar?¿Qué información necesitamos representar?

Caracteres Alfabéticos A B Z a bCaracteres Alfabéticos A B Z a b C t•• Caracteres Alfabéticos: A, B, ..., Z, a, b, ..., zCaracteres Alfabéticos: A, B, ..., Z, a, b, ..., z

•• Caracteres numéricos: 0, 1, ..., 9Caracteres numéricos: 0, 1, ..., 9

CaracteresAlfanuméricos

•• Caracteres especiales: ( ) ñ Ñ : ; +Caracteres especiales: ( ) ñ Ñ : ; + -- / * < > ¿ ? ¡ ! ^ “ ”/ * < > ¿ ? ¡ ! ^ “ ”Caracteres especiales: ( ) ñ Ñ : ; , Caracteres especiales: ( ) ñ Ñ : ; , / < > ¿ ? ¡ ! / < > ¿ ? ¡ !

•• Caracteres de control: Enter Nul Caracteres de control: Enter Nul \\n BOT EOT n BOT EOT \\bb

•• Caracteres gráficosCaracteres gráficos

4040

Datos alfanuméricosDatos alfanuméricosDatos alfanuméricosDatos alfanuméricos

Caracteres alfabéticosCaracteres alfabéticos-- Letras mayúsculas.Letras mayúsculas.yy

-- Letras minúsculasLetras minúsculas

Dígitos (0,…,9)Dígitos (0,…,9)

Caracteres especialesCaracteres especialesP t t t i tP t t t i t-- Punto, coma, punto y coma, asterisco, etc.Punto, coma, punto y coma, asterisco, etc.

-- Órdenes de control: NUL, CR, ACK, etc.Órdenes de control: NUL, CR, ACK, etc.

4141

Códigos alfanuméricosCódigos alfanuméricosCódigos alfanuméricosCódigos alfanuméricos

-- Cada computadora tiene su propio código de caracteres Cada computadora tiene su propio código de caracteres definidos por el fabricante.definidos por el fabricante.pp

--Cada letra o carácter generalmente se representa por un Cada letra o carácter generalmente se representa por un conjunto de 8 bits (1 byte); aunque existen algunos códigos de conjunto de 8 bits (1 byte); aunque existen algunos códigos de 6 y 7 bits (pueden representar 64 y 128 caracteres).6 y 7 bits (pueden representar 64 y 128 caracteres).

-- Un conjunto de 8 bits permite representar 256 caracteres.Un conjunto de 8 bits permite representar 256 caracteres.

4242

Códigos alfanuméricosCódigos alfanuméricosCódigos alfanuméricosCódigos alfanuméricos

FIELDATAFIELDATA

ASCIIASCII

EBCDICEBCDIC EBCDICEBCDIC

UNICODEUNICODE

4343

Código ASCIICódigo ASCIICódigo ASCIICódigo ASCII

AA SS CC II IIAAmerican merican SStandar tandar CCode for ode for IInformation nformation IInterchangenterchange

•• La primera versión utilizaba 7 bits.La primera versión utilizaba 7 bits.

•• Las versión actual utiliza 8 bits, para representar:Las versión actual utiliza 8 bits, para representar:

signos ortográficos adicionales (p e diéresis)signos ortográficos adicionales (p e diéresis)•• signos ortográficos adicionales (p.e. diéresis)signos ortográficos adicionales (p.e. diéresis)

•• letras no utilizadas en inglés (p. e. la ñ)letras no utilizadas en inglés (p. e. la ñ)

•• Permite codificar 2Permite codificar 288 = 256 caracteres distintos.= 256 caracteres distintos.

4444

Código ASCII (8 bits)Código ASCII (8 bits)g ( )g ( )

CarCar EnteroEntero BinarioBinario CarCar EnteroEntero BinarioBinario

3232 0010000000100000 AA 6565 0100000101000001

!! 3333 0010000100100001 BB 6666 0100001001000010!! 3333 0010000100100001 BB 6666 0100001001000010

““ 3434 0010001000100010 CC 6767 0100001101000011

…… …… …… …… …… ……

00 4848 0011000000110000 xx 120120 0111100001111000

11 4949 0011000100110001 yy 121121 0111100101111001

22 5050 0011001000110010 zz 122122 011110100111101022 5050 0011001000110010 zz 122122 0111101001111010

…… …… …… …… …… ……

4545

Representación en ASCIIRepresentación en ASCIIRepresentación en ASCIIRepresentación en ASCII

RepresentaciónRepresentación de la de la palabrapalabra “Hello” en ASCII“Hello” en ASCII

HH ee ll ll oo

7272 101101 108108 108108 111111

0100100001001000 0110010101100101 0110110001101100 0110110001101100 0110111101101111

4646

Codificación de la informaciónCodificación de la información

ASCIIASCII

Ejemplo: “Hoy no”Ejemplo: “Hoy no”

1001000 1101111 1111001 0100000 1101110 11011111001000 1101111 1111001 0100000 1101110 1101111

yy ii ooHH oo yy espacioespacio nn oo

4747

Unicode: cUnicode: característicasaracterísticasUnicode: cUnicode: característicasaracterísticas

–– Cada carácter se representa por 16 bits, Cada carácter se representa por 16 bits, 221616 = 65.536 símbolos distintos.= 65.536 símbolos distintos.

–– No tiene caracteres de controlNo tiene caracteres de controlNo tiene caracteres de control.No tiene caracteres de control.

–– Incluye caracteres combinados, Incluye caracteres combinados, e.g. e.g. ¨̈ + a = ä+ a = ä

–– IncrementaIncrementa lala compatibilidadcompatibilidad yy elel intercambiointercambio dede informacióninformaciónIncrementaIncrementa lala compatibilidadcompatibilidad yy elel intercambiointercambio dede informacióninformación

4848

RepresentaciónRepresentación de de otrosotros datosdatospp

•• En una computadora también tenemos queEn una computadora también tenemos queEn una computadora también tenemos que En una computadora también tenemos que

representar:representar:

•• Imágenes ( BMP JPEG GIF )Imágenes ( BMP JPEG GIF )•• Imágenes ( BMP, JPEG, GIF, … )Imágenes ( BMP, JPEG, GIF, … )

•• Sonido ( MP3, WAVE, MIDI, AU, … )Sonido ( MP3, WAVE, MIDI, AU, … )

•• Video ( MPG, AVI, MP4, …) Video ( MPG, AVI, MP4, …)

•• Se utilizan diferentes formatos pero todos utilizan elSe utilizan diferentes formatos pero todos utilizan el•• Se utilizan diferentes formatos, pero todos utilizan el Se utilizan diferentes formatos, pero todos utilizan el

sistema binario.sistema binario.

4949

R t ió d l úR t ió d l úRepresentación de los númerosRepresentación de los números

, 2,0, 3, -5, 2.3, 3/4, 10/3,

5050

Datos numéricosDatos numéricos

Los datos numéricos pueden ser: Los datos numéricos pueden ser:

Enteros: … Enteros: … --3,3,--2,2,--1, 0, 1, 2, 31, 0, 1, 2, 3

Racionales: 3/4, 10/3, Racionales: 3/4, 10/3,

0,750,75 0,333…0,333…

, 2,RealesReales:

5151

Representación números enterosRepresentación números enterosLos computadores digitales deben ser capaces de manejar nº Los computadores digitales deben ser capaces de manejar nº positivos y negativos.positivos y negativos.

El signo “El signo “--” no se puede representar en binario.” no se puede representar en binario.

Utilizan cuatro métodos para representar números enteros:Utilizan cuatro métodos para representar números enteros:(el signo se representa con un bit adicional a la (el signo se representa con un bit adicional a la izdaizda del nº. “0”:+ y “1”:del nº. “0”:+ y “1”:-- ))

• Módulo y Signo (MS)Módulo y Signo (MS)

Complemento a 1 (CComplemento a 1 (C 1)1)•• Complemento a 1 (CComplemento a 1 (C--1)1)

•• Complemento a 2 (CComplemento a 2 (C--2)2)Complemento a 2 (CComplemento a 2 (C 2)2)

•• Exceso a 2Exceso a 2nn--11

5252

Módulo y signo (MS)Módulo y signo (MS)

El primer bit situado de la izquierda representa el signo:El primer bit situado de la izquierda representa el signo:-- 0 para el signo +0 para el signo +-- 1 para el signo 1 para el signo ––

El resto de bits (nEl resto de bits (n--1) representan el módulo del número. 1) representan el módulo del número.

0 +0 + BS Magnitud

1 bit (n-1) bits

0 = +0 = +1 = 1 = --

NOTA: El máximo número representado para n bits será NOTA: El máximo número representado para n bits será

-- 22 nn--1 1 + 1 <=+ 1 <= XX <=<= 22 nn--1 1 -- 11

( )

-- 2 2 + 1 <= + 1 <= XX <= <= 2 2 -- 11

Para computadoras de 8 bits:Para computadoras de 8 bits:

5353

pp--127 <= X <= 127127 <= X <= 127

Módulo y signo (MS)Módulo y signo (MS)

Inconvenientes:Inconvenientes:

--Antes de cualquier operación hay que comprobar el signoAntes de cualquier operación hay que comprobar el signoAntes de cualquier operación hay que comprobar el signo Antes de cualquier operación hay que comprobar el signo para sumar o restarpara sumar o restar

--Complejidad en el diseño de circuitos lógicos que realicenComplejidad en el diseño de circuitos lógicos que realicenComplejidad en el diseño de circuitos lógicos que realicen Complejidad en el diseño de circuitos lógicos que realicen op’sop’s aritméticasaritméticas

--Hay 2 representaciones para el nº “0”:Hay 2 representaciones para el nº “0”:--Hay 2 representaciones para el n 0 :Hay 2 representaciones para el n 0 :

++001010 = = 00 000 0000000 0000

00 == 11 000 0000000 0000-- 001010 = = 11 000 0000000 0000

5454

Representación de enteros con signoRepresentación de enteros con signo

•• ¿Cómo representa una computadora de 16 bit el número ¿Cómo representa una computadora de 16 bit el número --14?14?

11 00 00 00 00 00 00 00 00 00 00 00 11 11 11 00

Cú l l t d t ?Cú l l t d t ?

Bit de signo. 0: + (positivo), 1: - (negativo)

•• ¿Cúal es el mayor entero que se puede representar?¿Cúal es el mayor entero que se puede representar?

00 11 11 11 11 11 11 11 11 11 11 11 11 11 11 1100

= 1x2= 1x21414 + 1x2+ 1x21313 + … + 1x2+ … + 1x211 + 1x2+ 1x200 = = 32,76732,767

•• Problema Problema Hay dos representaciones para el valor 0.Hay dos representaciones para el valor 0.–– Las computadoras representan los números enLas computadoras representan los números en complemento a doscomplemento a dos

5555

Las computadoras representan los números enLas computadoras representan los números en complemento a dos.complemento a dos...

NOTASNOTAS

¿Cuántos bits utiliza el ¿Cuántos bits utiliza el Pentium Pentium para almacenar para almacenar los números enteros?los números enteros?los números enteros?los números enteros?

32 bits32 bits

¿Qué pasaría si tratamos de almacenar un número ¿Qué pasaría si tratamos de almacenar un número

223131 11entero mayor del máximo posible (entero mayor del máximo posible (2231 31 -- 11 )?)?

Error de Error de OverflowOverflow

5656

Complemento a 1Complemento a 1Complemento a 1Complemento a 1

La diferencia con MS (módulo y signo) es que el número La diferencia con MS (módulo y signo) es que el número

negativo se obtiene complementando todos sus dígitos negativo se obtiene complementando todos sus dígitos

(incluyendo el bit del signo)(incluyendo el bit del signo)(incluyendo el bit del signo).(incluyendo el bit del signo).

COMPLEMENTAR: cambiar los ceros por unos y los unos COMPLEMENTAR: cambiar los ceros por unos y los unos

por cerospor cerospor ceros.por ceros.

5757

Ejemplo complemento a 1Ejemplo complemento a 1Ejemplo complemento a 1Ejemplo complemento a 1

Supongamos que utilizamos un byte (8 bits) y queremos representar Supongamos que utilizamos un byte (8 bits) y queremos representar

los números 15 y los números 15 y ––15.15.

1 00 00 00 00 11 11 11 11+15

11 11 11 11 00 00 00 0015 11 11 11 11 00 00 00 00-15

5858

Representación del CERORepresentación del CEROen complemento aen complemento a 11

00 00 00 00 00 00 00 00+ 0

0 11 11 11 11 11 11 11 11- 0

Nota: para evitar esta doble representación se utiliza

5959

el complemento a 2

Complemento a 2Complemento a 2Complemento a 2Complemento a 2

Los enterosLos enteros positivospositivos se representan igual que en losse representan igual que en losLos enteros Los enteros positivospositivos se representan igual que en los se representan igual que en los métodos anteriores.métodos anteriores.

Los enteros Los enteros negativosnegativos se obtienen en dos pasos:se obtienen en dos pasos:

11 S l l l l t 1S l l l l t 11.1. Se calcula el complemento a 1.Se calcula el complemento a 1.

2.2. Al resultado se le suma 1 (en binario) despreciando el Al resultado se le suma 1 (en binario) despreciando el

último acarreo si existeúltimo acarreo si existeúltimo acarreo si existe.último acarreo si existe.

--a = a = CCbb = = bbnn -- |a||a|bb == BaseBasebb BaseBasenn == NúmeroNúmero dede dígitosdígitos incluidoincluido elel dede signosigno|a||a| == ValorValor absolutoabsoluto deldel valorvalor

6060

Para b=2 (complemento a 2): Para b=2 (complemento a 2): --a = Ca = C22 = 2= 2nn -- |a||a|

Procedimiento para complementar a 2 Procedimiento para complementar a 2 p pp pun número binarioun número binario

0 1 1 00 1 1 01.1. Copiar los bits deCopiar los bits de1. 1. Copiar los bits de Copiar los bits de derecha a izquierda derecha a izquierda hasta el primer “1” hasta el primer “1”

2. 2. Se complementan Se complementan los demás bitslos demás bits

inclusiveinclusive

1 0 1 01 0 1 01 0 1 01 0 1 0

Ejemplo:Ejemplo: codificación en cuatro bits decodificación en cuatro bits de 6 en notación de complemento a 26 en notación de complemento a 2

6161

Ejemplo:Ejemplo: codificación en cuatro bits de codificación en cuatro bits de -- 6 en notación de complemento a 2.6 en notación de complemento a 2.

Ejemplo complemento a 2Ejemplo complemento a 2Ejemplo complemento a 2Ejemplo complemento a 2

Supongamos que utilizamos un byte (8 bits) y queremos representar Supongamos que utilizamos un byte (8 bits) y queremos representar

los números 15 y los números 15 y ––15.15.

1 00 00 00 00 11 11 11 11+15

11 11 11 11 00 00 00 1115 11 11 11 11 00 00 00 11-15

6262

Complemento a 2Complemento a 2Complemento a 2Complemento a 2

La principal ventaja es que el CERO tiene La principal ventaja es que el CERO tiene una sola representación:una sola representación:una sola representación:una sola representación:

00 00 00 00 00 00 00 00+ 0 00 00 00 00 00 00 00 00 0

6363

Exceso a 2Exceso a 2nn--11

•• NoNo utiliza ningún bit para el signoutiliza ningún bit para el signo•• NoNo utiliza ningún bit para el signo. utiliza ningún bit para el signo.

•• Los bits representan un valor que corresponde al del Los bits representan un valor que corresponde al del número número representado más el excesorepresentado más el exceso, que para n bits viene dado por 2, que para n bits viene dado por 2nn--1.1.

•• El rango de representación es: El rango de representación es: -- 22nn--11 <= X <= 2<= X <= 2nn--1 1 -- 11

EjemploEjemplo: para el caso de n=8 bits sería:: para el caso de n=8 bits sería:j pj p pp

-- elel exceso exceso es dees de 2288--11 = 2= 277 == 128128

-- elel rango de representaciónrango de representación eses --128 <=128 <= XX <= 127<= 127

6464

elel rango de representación rango de representación eses 128 128 X X 127 127

Ejemplo de Exceso a 2Ejemplo de Exceso a 288--11

15 iti 15 128 143 ( bi i )15 iti 15 128 143 ( bi i )+ 15 positivo: 15 + 128 = 143 (en binario)+ 15 positivo: 15 + 128 = 143 (en binario)

-- 15 Negativo: 15 Negativo: --15 + 128 = 113 (en binario)15 + 128 = 113 (en binario)

11 00 00 00 11 11 11 11+15

00 11 11 11 00 00 00 11- 15

6565

NOTAS sobre el exceso a 2NOTAS sobre el exceso a 288--11NOTAS sobre el exceso a 2NOTAS sobre el exceso a 288 11

El cero tiene una única representación. Para n = 8 El cero tiene una única representación. Para n = 8 bits es 0 + 128 = 128bits es 0 + 128 = 128bits es 0 128 128bits es 0 128 128

11 00 00 00 00 00 00 0011 00 00 00 00 00 00 00

Todo número representado con este método tiene la Todo número representado con este método tiene la

misma representación que en complemento a 2 con misma representación que en complemento a 2 con p q pp q p

el bit de signo cambiado.el bit de signo cambiado.

6666

Representación de losRepresentación de losRepresentación de los Representación de los

números realesnúmeros reales

ee,…,…, 2,

¿punto flotante o coma flotante?¿punto flotante o coma flotante?¿punto flotante o coma flotante?¿punto flotante o coma flotante?

6767

Representación en punto (coma)Representación en punto (coma) flotanteflotante

Todo número Todo número NN se puede representar en la forma:se puede representar en la forma:

NN == M M BBEE

MM es la mantisaes la mantisa–– MM es la mantisa.es la mantisa.–– BB es la base.es la base.–– EE es el exponente.es el exponente.

-- Esta notación se conoce como notaciónEsta notación se conoce como notación científicacientífica o notación eno notación en-- Esta notación se conoce como notación Esta notación se conoce como notación científicacientífica o notación en o notación en coma flotantecoma flotante..

-- En 1985 IEEE desarrolla la norma IEEE 754: una notación para En 1985 IEEE desarrolla la norma IEEE 754: una notación para representar números representar números realesreales en este formato,.en este formato,.

6868

Notación CientíficaNotación Científica

Representar el número 2345,234 en notación científica Representar el número 2345,234 en notación científica

con base 10:con base 10:con base 10:con base 10:

2345 234 =2345 234 = 0 2345234 x 100 2345234 x 10442345,234 = 2345,234 = 0,2345234 x 100,2345234 x 1044

Representar el número 0,0745 en notación científica con Representar el número 0,0745 en notación científica con

base 10:base 10:

0,0745 = 0,0745 = 0,745 x 100,745 x 10--11,, ,,

La notación exponencial o científica es adecuada paraLa notación exponencial o científica es adecuada para

6969

La notación exponencial o científica es adecuada para La notación exponencial o científica es adecuada para operar con números muy grandes.operar con números muy grandes.

RepresentaciónRepresentación del del binariobinario 101.11 (5,75101.11 (5,751010) ) en comaen coma flotanteflotanteen coma en coma flotanteflotante

Base 2 implicita

++ .10111 x .10111 x 22++33Base 2 implicita

00 11 00 11 11 11 00 00 00 00 00 00 00 00 11 11

Exponente (6 bits)Mantisa (10 bits)

Punto binario

7070

Punto binario

RepresentaciónRepresentación enen puntopunto flotante flotante NN == MM 22EENN == M M 22

El estándar IEEE especifica dos formatos:El estándar IEEE especifica dos formatos:

-- La base es 2 y no se almacena.La base es 2 y no se almacena.

El estándar IEEE especifica dos formatos: El estándar IEEE especifica dos formatos:

-- El orden de la representación es: El orden de la representación es:

signo exponente mantisasigno exponente mantisa

L t ti t ñ fijL t ti t ñ fij-- Los tres campos tienen tamaño fijo:Los tres campos tienen tamaño fijo:•• Signo Signo 1 bit1 bit

•• ExponenteExponente 8 u 11 bits8 u 11 bits•• Exponente Exponente 8 u 11 bits8 u 11 bits

•• mantisa mantisa 23 ó 52 bits.23 ó 52 bits.

7171

-- El número de bits influye en la precisión.El número de bits influye en la precisión.

Representación punto flotanteRepresentación punto flotanteRepresentación punto flotanteRepresentación punto flotante

Si l i ióSi l i ió (32 bit )(32 bit )Simple precisión Simple precisión (32 bits):(32 bits):

SignoSigno ExponenteExponente MantisaMantisaSignoSigno ExponenteExponente MantisaMantisa

3232 31 2431 24 23 123 1

Doble precisiónDoble precisión (64 bits):

SignoSigno ExponenteExponente MantisaMantisa

6464 63 5363 53 52 152 1

7272

6464 63 5363 53 52 152 1

Notas sobre la representaciónNotas sobre la representaciónNotas sobre la representaciónNotas sobre la representación

E ponenteE ponente tt ód l iód l i•• Exponente:Exponente: se representa en se representa en módulo y signo módulo y signo ooen exceso de 2en exceso de 2nn--11, siendo siempre un número , siendo siempre un número

t L t ió d it L t ió d ientero. La representación en exceso se denominaentero. La representación en exceso se denominacaracterística.característica.

•• Mantisa:Mantisa: se representa ense representa en módulo y signomódulo y signo o bieno bien•• Mantisa:Mantisa: se representa en se representa en módulo y signo, módulo y signo, o bieno bienenen complemento a 1 complemento a 1 oo complemento a 2complemento a 2..

•• Base de exponenciación:Base de exponenciación: es una potencia de 2 es una potencia de 2

7373

determinada por el fabricante de la computadora.determinada por el fabricante de la computadora.

EjemploEjemploEjemploEjemplo

Representar los números +12 y Representar los números +12 y --12 en coma flotante en 12 en coma flotante en una computadora que sigue el siguiente criterio:una computadora que sigue el siguiente criterio:

•• 8 bits para el 8 bits para el exponenteexponente en en exceso a 128exceso a 128..

•• 23 bits para la 23 bits para la mantisamantisa en en complemento a 1complemento a 1..

•• 1 bit para el1 bit para el signosigno de la mantisade la mantisa•• 1 bit para el 1 bit para el signosigno de la mantisa.de la mantisa.

•• La La basebase de exponenciación es de exponenciación es 22..

SignoSigno ExponenteExponente MantisaMantisa

7474

3232 31 2431 24 23 123 1

El número + 12El número + 12ú e oú e o

E t ió li d 1100E t ió li d 1100 0 11 20 11 244En notación normalizada 1100En notación normalizada 1100(2 (2 = = 0.11 x 20.11 x 244

El El exponenteexponente 4 en exceso a 1284 en exceso a 128 es el binario 132 =es el binario 132 = 10000100 10000100

La La mantisamantisa eses 0.110.11(2(2

El bit de El bit de signosigno es el es el 00

El número 12 en coma flotante quedaría:El número 12 en coma flotante quedaría:

0 10000100 110000000000000000000000 10000100 11000000000000000000000

Signo +Signo + Exponente 4Exponente 4 Mantisa 0 11Mantisa 0 11Signo + Signo + Exponente 4 Exponente 4 Mantisa 0.11Mantisa 0.11

7575

Nota: solo se complementan los nº NEGATIVOS

El númeroEl número -- 1212El número El número 1212

En notación normalizadaEn notación normalizada 11001100 == 0 11 x 20 11 x 244En notación normalizada En notación normalizada --11001100(2 (2 = = -- 0.11 x 20.11 x 24 4

El El exponenteexponente 4 en exceso a 128 4 en exceso a 128 es 132 =es 132 = 10000100 10000100

La La mantisamantisa 0.110.11(2(2 en complemento a 1 es en complemento a 1 es 0.001111111111111111111110.00111111111111111111111

El bit de El bit de signosigno eses 11

El número El número --12 en coma flotante quedaría:12 en coma flotante quedaría:

1 10000100 001111111111111111111111 10000100 00111111111111111111111

SignoSigno -- Exponente 4Exponente 4 Mantisa 0 11 en complemento a 1Mantisa 0 11 en complemento a 1Signo Signo Exponente 4 Exponente 4 Mantisa 0.11 en complemento a 1Mantisa 0.11 en complemento a 1

7676

Nota: solo se complementan los nº NEGATIVOS

55 Op’s aritméticas de nº con signoOp’s aritméticas de nº con signo55. . Op s aritméticas de n con signoOp s aritméticas de n con signo

SumaSuma (a+b)(a+b):: casoscasos posiblesposibles::SumaSuma (a b)(a b):: casoscasos posiblesposibles::–– aa yy bb positivospositivos

bb titi–– aa yy bb negativosnegativos

–– aa positivopositivo yy bb negativonegativo (a(a >> |b|)|b|)

–– aa positivopositivo yy bb negativonegativo (|b|(|b| >> a)a)

EnEn cualquiercualquier casocaso:: sumarsumar yy descartardescartar bitbitdd fi lfi l ( i( i ll h )h )dede acarreoacarreo finalfinal (si(si lolo hay)hay)..

78

55 Op’s aritméticas de nº con signoOp’s aritméticas de nº con signo55. . Op s aritméticas de n con signoOp s aritméticas de n con signo

RestaResta::RestaResta::(a(a--b) = a + (b) = a + (--b)b)

Ambos nº con igual cantidad de bitsAmbos nº con igual cantidad de bits

Para cambiar el signo utilizamos C1 o C2Para cambiar el signo utilizamos C1 o C2

En ambos casos calc lamos el complementoEn ambos casos calc lamos el complementoEn ambos casos, calculamos el complemento En ambos casos, calculamos el complemento del sustraendo y lo sumamos al minuendodel sustraendo y lo sumamos al minuendo

Si el bit de signo del resultado es “1” Si el bit de signo del resultado es “1” (negativo), el resultado está complementado(negativo), el resultado está complementado

79

55 Op’s aritméticas de nº con signoOp’s aritméticas de nº con signo55. . Op s aritméticas de n con signoOp s aritméticas de n con signo

RestaResta -- ComplementoComplemento aa 11::RestaResta ComplementoComplemento aa 11::

SiSi alal sumarsumar::–– HayHay acarreoacarreo:: sese sumasuma alal bitbit LSBLSB dede lala sumasuma

–– NoNo hayhay acarreoacarreo:: resultadoresultado negativonegativo yy debemosdebemosyy gg yycomplementarcomplementar aa 11 elel resultadoresultado dede lala sumasuma..

ProblemaProblema::ProblemaProblema::–– DosDos formasformas dede expresarexpresar elel 00:: ++00 yy --00..

80

55 Op’s aritméticas de nº con signoOp’s aritméticas de nº con signo55. . Op s aritméticas de n con signoOp s aritméticas de n con signo

RestaResta -- Complemento a 2:Complemento a 2:Resta Resta Complemento a 2:Complemento a 2:

Si al sumar:Si al sumar:–– Hay acarreo: éste se desprecia.Hay acarreo: éste se desprecia.

–– Si no hay acarreo: resultado negativo y Si no hay acarreo: resultado negativo y y g yy g ydebemos complementar a 2 el resultado debemos complementar a 2 el resultado de la suma.de la suma.

81

55 Op’s aritméticas de nº con signoOp’s aritméticas de nº con signo55. . Op s aritméticas de n con signoOp s aritméticas de n con signo

Multiplicación (Multiplicación (axbaxb))Multiplicación (Multiplicación (axbaxb))

M lti li d lti li d i l tM lti li d lti li d i l t–– Multiplicando y multiplicador sin complementarMultiplicando y multiplicador sin complementar

–– Se ignora el signo y se realiza la operaciónSe ignora el signo y se realiza la operación

–– Al final: añadir bit signoAl final: añadir bit signo

Si los dos tienen mismo signo: +Si los dos tienen mismo signo: +Si los dos tienen mismo signo: Si los dos tienen mismo signo:

(bit MSB = 0)(bit MSB = 0)

Si d dif t iSi d dif t iSi son de diferente signo: Si son de diferente signo: --

obtener complemento del resultadoobtener complemento del resultado

(bit MSB = 1)(bit MSB = 1)82

55 Op’s aritméticas de nº con signoOp’s aritméticas de nº con signo55. . Op s aritméticas de n con signoOp s aritméticas de n con signo División (a/b):División (a/b):( )( )

–– Dividendo y divisor sin complementarDividendo y divisor sin complementar

–– Se ignora el signo y se inicializa a 0 el cocienteSe ignora el signo y se inicializa a 0 el cociente

–– Restar el divisor al dividendo (sumando el CRestar el divisor al dividendo (sumando el C22 del divisor)del divisor) Acarreos finales se pierdenAcarreos finales se pierden

Resultado resta es negativo: finResultado resta es negativo: fin

Resultado resta> = 0 incrementar cociente y restarResultado resta> = 0 incrementar cociente y restar Resultado resta> = 0 incrementar cociente y restarResultado resta> = 0 incrementar cociente y restar

–– Al final: añadir bit signoAl final: añadir bit signo Si los dos tienen mismo signo: +Si los dos tienen mismo signo: +Si los dos tienen mismo signo: +Si los dos tienen mismo signo: +

(bit MSB = 0)(bit MSB = 0)

Si son de diferente signo: Si son de diferente signo: --bt l t d l lt dbt l t d l lt dobtener complemento del resultadoobtener complemento del resultado

(bit MSB = 1)(bit MSB = 1)83

Tema 1Tema 1Tema 1Tema 1

REPRESENTACIÓNREPRESENTACIÓNREPRESENTACIÓN REPRESENTACIÓN DE LA INFORMACIÓNDE LA INFORMACIÓNDE LA INFORMACIÓNDE LA INFORMACIÓN

8484