Documentos de Académico
Documentos de Profesional
Documentos de Cultura
I. INTRODUCCIÓN
Los números en una computadora se representan en forma binaria, es decir, con
solo dos símbolos, el “1” y “0”, que para la computadora significan encendido y
apagado respectivamente. Por ejemplo, el número binario 101, representa el número
5 en el sistema decimal.
Los valores numéricos se almacena en una computadora en forma binaria en una
unidad de memoria llamada “palabra”, constituida por una cadena de bits, por
ejemplo la palabra puede ser de 8 bits (1 byte) o 16 bits (2 bytes) o 24 bits (3 bytes) o
32 bits (4 bytes), etc.
Otro ejemplo, dado el numero 99,2 expresar en forma binario. Para este efecto se
debe transformar la parte entera y decimal en forma separada o independiente al
sistema binario.
El número binario de 99 es 1100011.
El número binario de 0,2 es 0.00110011001100110011….
1100011.0011001100110011…
Por ejemplo, el número binario 0,0101110 se expresa en la forma decimal por medio
de la expresión:
0,010101110 = 0x2-1 + 1x2-2+0x2-3 +1x2-4 + 0x2-5 +1x2-6 + 1x2-7 + 1x2-8 + 0x2-9 = 0.0
+ 0,25 + 0.0 + 0,0625 + 0.0 + 0,015625 + 7,8125x10-3 + 3,90625x10-3 + 0 =
0,33984375
1 0 0 0 0 0 0 0 1 0 1 0 1 1 0 1
Signo Número
Para determinar la cantidad de números enteros que caben en una palabra dada,
consideremos una palabra de 5 bits, uno para el signo y cuatro para el número
entero.
Los valores extremos que se obtienen con cuatro bits están dadas por:
1 1 1 1 1 = - 15
1 0 0 0 0 =-0
0 0 0 0 0 =+0
0 1 1 1 1 =+15
1 0 0 0 0
Por tanto, el máximo número que se puede representar con una palabra de 4 bits
esta dada por la expresión (24-1)=15 enteros positivos y 24 =16 números enteros
negativos.
De manera general, si la palabra tiene 16 bits, 15 bits se utilizan para representar la
magnitud del numero entero cuyo máximo valor positivo corresponde a 215-1=32767
y 215=32768 enteros negativos, es decir, con una palabra de 16 bits se puede
representar los enteros desde -32768 a 32767.
V. REPRESENTACIÓN DE NÚMEROS DE PUNTOS FLOTANTES EN UNA
COMPUTADORA
Para guardar un número de punto flotante en una computadora, se debe expresar
en su forma normalizada y expresada en el siguiente formato:
0. b1 b2 b3 b4 b5 .... 2 e1 e2 e3
0 0 e1 e2 e3 e4 e5 e6 b1 b2 b3 b4 b5 b6 b7 b8
Por ejemplo, para representar el número real -125.32 en una palabra de 16 bits, se
sigue los siguientes pasos:
Se representa la parte entera en binario, es decir: 125 = 1111101.
Se representa la parte decimal en binario, es decir: 0.32=0.010100011110101...
Por tanto, el número -125.32 en forma binaria está dada por:
1111101.010100011110101
Este número se debe normalizar, para lo cual se debe observar que el punto flotante
debe recorrer 7 posiciones a la izquierda, expresando el número 7 en forma binaria,
se tiene:
7= 1x22 + 1x21 +1x20 = 4+2+1 =7
-0,11111010100011110101 x 2+111
1 0 0 0 0 1 1 1 1 1 1 1 1 0 1 0
Exponente mantisa
Como el punto flotante debe recorrer dos lugares hacia la derecha, que en binario se
expresa por 10, entonces el número 0.2 normalizado esta dada por la expresión:
Exponente mantisa
Expresando este número de punto flotante binario en forma de punto flotante
decimal, se tiene:
La mantisa:
1 x 2-1 + 1 x 2-2 + 0 x 2-3 + 0 x 2-4 +1 x 2-5 + 1 x 2-6 + 1 x 2-7 + 1 x 2-8 =
0,5 + 0,25 + 0 + 0 + 0,03125 + 0,015625 + 0 + 0 = 0,796875
El exponente 10 = 1 x 21 + 0 x 20 = 2
Por tanto el número en su forma real será:
+ 0,796875 x 2-2 = 0.19921875
Cuyo resultado muestra que existe una diferencia con el valor original, cuya
diferencia surge debido al truncamiento.
VI. PROBLEMAS
1. Convertir el número entero decimal 27032013 al sistema binario.
2. Convertir el número real 12.122012 al sistema binario.
3. Convertir el número entero binario 1010111101 al sistema decimal.
4. Convertir el número real binario 111000.110011 al sistema decimal.
5. Considerando una palabra de 64 bits, determina: a) el rango de enteros positivos
y negativos que se puede obtener, b) el rango de enteros positivos que se puede
obtener.
6. Considerando una palabra de 10 bits, de los cuales 2 se utilizan para los signos
del numero y el exponente respectivamente, 3 para el exponente y 5 para la mantisa,
determina: a) el mínimo real que se puede expresar, b) el máximo real que se puede
expresar, c) realizar un listado de los primeros 20 numero reales positivos que se
pueden expresar con esta palabra de 10 bits.
7. Realizar un programa en C, para convertir un numero entero en decimal a binario
y viceversa, aplica con una palabra de 16 bits.
8. Realizar un programa en C, para convertir un numero real en decimal a binario y
viceversa, aplica con una palabra de 32 bits, dos para los signos, 12 bits para el
exponente, y el resto para la mantisa.
TEMA II
TEORÍA DE ERRORES
II.1 INTRODUCCIÓN
Los métodos numéricos, son técnicas matemáticas mediante las cuales es posible
resolver problemas utilizando operaciones aritméticas.
Los métodos numéricos son una herramienta poderosa para resolver problemas que
no se pueden resolver analíticamente, tales como: sistemas de ecuaciones lineales
de un número grande de incógnitas, sistemas de ecuaciones no lineales, sistema de
ecuaciones diferenciales con geometrías complicadas, etc.
Se debe mencionar que los métodos numéricos dan solo una aproximación a la
solución de los problemas, a diferencia de los métodos analíticos que resuelve la
solución exacta, por tanto se concluye que los métodos numéricos están afectados
de cierto grado de error, que no es posible determinar por no conocerse la solución
analítica.
En realidad, los métodos numéricos proporcionan soluciones aproximadas a los
problemas reales de la cual solo se puede estimar su error y en el mejor de los casos
limitar el valor del error.
II.2 CIFRAS SIGNIFICATIVAS
El número de cifras significativas de un número cualquiera es igual a la cantidad de
dígitos que tiene el número, por ejemplo, el número 45,8 tiene 3 cifras significativas.
Se debe observar que:
Los ceros al inicio de un número no se consideran como cifras significativas, por
ejemplo, 0,056 tiene dos cifras significativas.
Los ceros al final de un número, pueden o no ser cifras significativas, dependiendo
de la exactitud del número, por ejemplo, 65.3500 puede tener: 4 cifras significativas
si la precisión del instrumento es del orden de las centésimas, 5 cifras significativas
si la precisión del instrumento es del orden de las milésimas, 6 cifras significativas
si el instrumento tiene una precisión del orden de las diez milésima. Para salir de
esta incertidumbre, el número se debe escribir en notación científica, llamado forma
normalizada, es decir:
m = 0,6535 x 102 tiene cuatro cifras significativas
m = 0,65350 x 102 tiene cinco cifras significativas
Si cierto número tiene n cifras significativas las primeras n-1 cifras significativas
son la seguras o correctas, y el ultimo digito es el dudoso o afectado de error, por
ejemplo si el numero es 0.345, los dígitos 3 y 4 son los dígitos seguros y el digito 5
es el dudoso.
Considerando varias medidas o calculadas, se dice que son precisas, cuando estas
se encuentran cerca unas de otras. El termino impreciso o incertidumbre se refiere a
la magnitud de la dispersión de las medidas o calculadas. La precisión está
determinada por el número de cifras significativas.
Estos conceptos se pueden ilustrar con una serie de tiros al blanco, mostrados en el
siguiente gráfico, donde el valor verdadero es el punto central. En el caso a y c son
igualmente inexactos por cuanto los lanzamientos se encuentran en la esquina
superior izquierdo, en cambio los casos b y d son igualmente exactos porque están
igualmente centradas respecto del blanco, aunque d es más precisa porque los
disparos están agrupados en forma compacta.
(a) (b)
(c) (d)
Figura 1.1 Esquematización de los conceptos exactitud y precisión a) Inexacto e impreciso, b) Exacto
e impreciso, c) Inexacto y preciso, d) Exacto y preciso.
Finalmente, se debe mencionar que los valores calculados con los métodos
numéricos deben ser lo suficientemente exactos, como también deben ser
suficientemente precisos.
El reto de los métodos numéricos es obtener el valor aproximado del error, que
según sea el cao se puede determinar por métodos iterativos, que consiste en
encontrar el valor aproximado de manera sucesiva, calculando el ultimo valor
mejorado en función del anterior, en este caso, el error porcentual se puede estimar
por la aproximación.
Aproximación actual Aproximación anterior
E% 100
Aproximación actual
Las computadoras comerciales que utilizan el formato IEEE, permiten usar 24 bits
para la mantisa, la cual se traduce en cerca 7 cifras significativas de precisión en
base 10 con un rango de 10-38 a 1039. También para casos que requieran mayor
precisión se puede utilizar las de doble precisión que dan un precisión de 15 a 16
dígitos decimales y un rango aproximado de 10-308 a 10308. Si bien las de doble
precisión reducen en gran medida el error de redondeo, pero el precio que se paga se
traduce en mayores requerimientos de memoria, como también mayor tiempo de
ejecución, por lo cual es necesario realizar un análisis detallado respecto del orden
de precisión que requiere el problema a resolver.
Para ilustrar los siguientes casos, se considera que la computadora trabaja con una
mantisa de cuatro cifras significativas.
0,000002 x 103
0,600000 x 103
0,600002 x 103
Como la computadora trabaja con 4 cifras significativas, las dos ultimas cifras
significativas son eliminadas y la respuesta es 0,6000 x 103, por lo que se concluye
que esta suma nunca se realizo. Este tipo de errores es muy común y se
recomienda de ser posible, no sumar ni restar dos números muy diferentes.
0,3545 x 100
0,3544 x 100
0,0001 x 100
Expresado en su forma normal se tiene 0,1 x 10-3 que solo tiene una cifra
significativa, se pierde 3 cifras significativas que en algunos casos puede ser
dramático como se muestra en el siguiente ejemplo:
x A B C
La división entre un número muy grande con otro muy pequeño puede generar un
error considerable, además, si este cociente se resta de otro número del mismo
tamaño relativo, puede magnificarse mas aun el error en la respuesta final.
Por ejemplo, considerando los valores de A = 0,1120 x 109, B = 0,1000 x 106 y C =
0,9000 x 10-3, se desea calcular la expresión x = A – B/C considerando una
computadora de cuatro dígitos.
El cociente B/C = 0,111111111 x 109 que con una computadora de 4 cifras será
B/C = 0,1111 x 109 de la misma manera el valor de x con 4 cifras será x = 0,9 x 106.
d) Overflow y underflow
e) El error de discretización
0, 0001 1, 000054
i1
III. PROBLEMAS
1. Elaborar un programa C, de modo que el número: a) 0.0001 se sume 10000 veces
consigo mismo, b) 0.00001 se sume 100000 veces consigo mismo, c) 0.000001 se
sume 1000000 veces consigo mismo, d) 0.0000001 se sume 10000000 veces consigo
mismo, e) analice estos resultados.
2. Evalué la expresión 1/ (1 cos x) para un valor de x próximo a 0º, Probar por
ejemplo x=0.5º. Determinar un método para evitar la resta de dos números casi
iguales en el denominador.
3. Se desea evaluar la expresión f ( x) e5 x en el punto x=1.0, si el valor de x se midió
con un pequeño error, obteniéndose el valor de 1.1, determina el error porcentual
que se cometerá al evaluar f ( x) .
4. Resolver el sistema de ecuaciones usando dos decimales para guardar los
resultados intermedios y finales, y calcula sus errores correspondientes.
21.76 x 24.34 y 1.24
14.16 x 15.84 y 1.15
El valor correcto para la solución con cinco decimales es de: x=-347.89167
y=311.06667.
5. Realice el Programa C para el siguiente código:
Paso 1: Leer A
Paso 2: Mientras A > 0, Repetir los pasos 3 y 4.
Paso 3: Imprimir ln(Exp(A)) –A, Exp(ln(A)) –A
Paso 4: Leer A
Paso 5: Terminar
a) Realizar este programa utilizando precisión simple, b) Realizar este programa
utilizando precisión doble.