Vous êtes sur la page 1sur 18

27/02/17

Facultad de Física

Métodos Numéricos

Dr. Antonio Marín Hernández


Centro de Investigación en Inteligencia Artificial
Universidad Veracruzana
Sebastían Camacho # 5
Xalapa,Veracruz

Temario
•  Unidad 1:Manejo de errores e
incertidumbre en la computadora
– Sistemas numéricos
– Almacenamiento de datos en la computadora
– Errores e Incertidumbre
– Algoritmos y estabilidad

1
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
Sistemas numéricos
–  Sistema decimal
•  Sistema de numeración posicional
–  Sistema duodecimal
–  Sistema babilónico base 60
–  Sistemas no posicionales:
•  Maya, Romano, Egipcio
–  Sistemas octal, hexadecimal y binario

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Sistema binario
– 1 y 0
•  Hacer robusto el computo
•  Voltajes entre 0 y 5 volts
•  Presencia o ausencia de voltaje
•  2n

2
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Unidad de medida en la computadora
•  Bit
– acrónimo de Binary digit (dígito binario)
– Se especifíca por “b”
•  Un bit por lo tanto puede tomar valores:
– 0 ó 1
•  Byte
– Unidad de información equivale a 8 bits
– Se especifíca por “B”

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Un b no es un B
•  No es lo mismo Mb que MB
– El primero es más utlizado en las redes de
comunicación
•  ¿porqué 1B = 8 b?
– Taréa

3
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Unidades mas comunes

– kilobyte kB 103 = 1000


– Megabyte MB 106 = 1 000 000
– Gigabyte GB 109 = 1 000 000 000
– Terabyte TB 1012 = 1 000 000 000 000

Unidad 1: Manejo de errores e


incertidumbre en la computadora
–  Byte B 2 0= 1
–  Kibibyte KiB 210 = 1024
–  Mebibyte MiB 220 = 1 048 576
–  Gibibyte GiB 230 = 1 073 741 824
–  Tebibyte TiB 240 = 1 099 511 627 776
–  Pebibyte PiB 250 = 1 125 899 906 842 624
–  Exbibyte EiB 260 = 1 152 921 504 606 846 976
–  Zebibyte ZiB 270 = 1 180 591 620 717 411 303
424
–  Yobibyte YiB 280 = 1 208 925 819 614 629 174
706 176

4
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Ejemplo:
–  1 0 0 1 1 0 1 0
•  ¿qué número decimal representa?

•  Compuerta lógica
– No hay posibilidad de representar el punto

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Bits más y menos significativos
|7 |6 |5 |4 |3|2|1|0|
•  |128|64 |32 |16 | 8 | 4 | 2 | 1 |

•  El bit más significativo es el que tiene la


posición con mayor valor en este caso la
posición 7
•  El bit menos significativo es el que tiene el
menor valor en este caso 0

5
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
• Little endian y Big endian
– Orden que las máquinas asignan a los bytes
•  Una máquina little endian asigna los bytes
menos significativos en el extremo más
bajo de la memoria,
•  Una máquina big endian asigna los bytes
menos significativos en el extremo más
alto.

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  En las computadoras cada byte
se identifica con su posición en la
memoria (dirección).
•  Los bytes también deben estar
ordenados de menor a mayor,
indicando la posición del byte
menos significativo y del byte más
significativo

6
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Los bytes se ordenan diferente de
cada arquitectura
•  Arquitecturas tipo “Intel” el byte
situado en la dirección más baja de la
memoria el menos significativo, little
endian
•  Arquitecturas tipo RISC o Motorola el
byte más significativo esta en la
posición más baja (big endian).

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Ventajas y desventajas
•  Little Endian
– Representación natural
– Byte más significativo nos da una idea de la
magnitud de la cantidad
•  Big Endian
– Recorrido inverso, operaciones más sencillas

7
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Arquitecturas
– 4, 8, 16, 32 y 64 bits
•  Tamaño de palabra
•  Computadoras personales
– 2, 4 y 8 bytes
•  GPU’s
– Procesamiento en paralelo
– Dimensión 4
– 4 floats

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Representación de datos en una
computadora
•  Los datos se alamacenan en un
número entero de bytes
•  Relación estrecha con el tamaño de
palabra

8
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Representación de números enteros
|128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
0 0 0 0 0 0 0 0 =0
0 0 0 0 0 0 0 1 =1
1 0 0 0 0 0 0 0 = 128
1 0 0 0 0 0 0 1 = 129
1 1 1 1 1 1 1 1 = 255
¿y el signo?

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Representación de reales
•  Similar a la representación científica
•  Límitada presición
•  Se dividen los bits en base y un exponente
cada uno con su signo

|128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
s f f f f s e e

9
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Ejemplo: 55.66
•  Notación científica = 5.566 x101
•  0.5566x102 o 0.05566x103
•  Se puede normalizar:
•  123.4567 = 1.234567x102
•  Binario
•  1010.1011B 1.010x23

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  IEEE-754 64-bit Double-Precision
Floating-Point Numbers

•  64 bits = 8 Bytes

1 bit,11 bits , 52 bits (1, 51)


s E F (s)

10
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
Nombre Descripción Tamaño Rango
bytes
char Character or small 1 byte signed: -128 to 127
integer. unsigned: 0 to 255

short int Short Integer. 2bytes signed: -32768 to 32767


(short) unsigned: 0 to 65535

int Integer. 4bytes signed: -2147483648 to


2147483647
unsigned: 0 to 4294967295

long int Long integer. 4bytes signed: -2147483648 to


(long) 2147483647unsigned: 0 to
4294967295

Unidad 1: Manejo de errores e


incertidumbre en la computadora
Nombre Descripción Tamaño Rango
bytes
bool Boolean value. It can 1 byte true or false
take one of two
values: true or false.
float Floating point 4bytes +/- 3.4e +/- 38 (~7 digits)
number.

double Double precision 8bytes +/- 1.7e +/- 308 (~15 digits)
floating point number.

long double Long double precision 8bytes +/- 1.7e +/- 308 (~15 digits)
floating point number. (10-12)

11
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Los números enteros son exactos
•  Las operaciones con números enteros son
exactas
•  Problemas de overflow y underflow
•  Desperdicio de datos

Unidad 1: Manejo de errores e


incertidumbre en la computadora
•  Los números reales son aproximados
•  Las operaciones con números reales son
precisas hasta cierto valor
•  Problemas de overflow y underflow
•  Problema mas común : no considerar la
precisión de los datos

12
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
Ejemplo:
•  Resolver la siguiente ecuación con una
precisión de 5 cifras decimales.

x 2 + 23456x + 7 = 0
•  Sus soluciones son:
– x1=-23455.999701568893
– x2=0.00029843110860383604

Unidad 1: Manejo de errores e


incertidumbre en la computadora
La solución esta dada por:

−b ± b 2 − 4ac
x=
2a


13
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
Resolviendo:

−23456 − 23456 2 − 4⋅ 1⋅ 7
x1 =
2⋅ 1

−23456 + 23456 2 − 4⋅ 1⋅ 7
x2 =
€ 2⋅ 1

Unidad 1: Manejo de errores e


incertidumbre en la computadora
Resolviendo:
−23456 − 550,183,936 − 28
x1 =
2
Sin embargo debido a la precisión se tiene:
−23456 − 550,180,000 − 28
x1 =
€ 2
y:
−23456 − 550,180,000
x1 =
2


14
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
Entonces:

−23456 − 23455.916
x1 =
2
y:
−23456 − 23455 46911
€x1 = 2
=−
2
= −23455.5

Unidad 1: Manejo de errores e


incertidumbre en la computadora
Resolviendo para x2:
−23456 + 550,180,000 − 28
x2 =
2
−23456 + 550,180,000
x2 =
2

15
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
Entonces:

−23456 + 23455.916
x2 =
2
Pero:
−23456 + 23455 1
€ x2 = = − = −0.5
2 2

Unidad 1: Manejo de errores e


incertidumbre en la computadora
Soluciones:
x1 = −23455
x 2 = −0.5
– x1=-23455.999701568893
– x2=0.00029843110860383604

16
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
¿cómo resolver el problema?
Utilizar los conjugados
−b + b 2 − 4ac −b − b 2 − 4ac
x= ⋅
2a −b − b 2 − 4ac
b 2 − (b 2 − 4ac ) −4ac
x= =
€ (
2a⋅ −b − b 2 − 4ac ) (
2a⋅ −b − b 2 − 4ac )

Unidad 1: Manejo de errores e


incertidumbre en la computadora
Quedando:

−2c
x=
−b − b 2 − 4ac
Evitando así la resta de números similares

17
27/02/17

Unidad 1: Manejo de errores e


incertidumbre en la computadora
Problemas adicionales:
•  Suma de números muy diferentes
•  Resta de números similares
•  División por números muy pequeños

Unidad 1: Manejo de errores e


incertidumbre en la computadora

¿Preguntas?

anmarin@uv.mx

18

Vous aimerez peut-être aussi