Representación computacional de tipos de datos numéricos
|
|
- Arturo Rey Figueroa
- hace 7 años
- Vistas:
Transcripción
1 Errorres Representación computacional de tipos de datos numéricos Nuestras bombas inteligentes cometen errores no mayores a los cm. (Guerra de Irak) Franco Guidi Polanco Pontificia Universidad Católica de Valparaíso, Chile Escuela de Ingeniería Industrial fguidi@ucv.cl Actualización: 4 de marzo de Errores: definiciones Error absoluto: Error relativo: Porcentaje de error: (valor obtenido) (valor correcto) (error absoluto) (valor correcto) (error relativo) * 00 [%] Errores: Roundoff Es la diferencia entre un valor exacto y el valor mediante el cual se lo puede representar. Ejemplo: si utilizamos el tipo de dato float: /2 / /4 / / /7 0, 0,4 0,2 0,2 0,7 0,4287 4
2 Errores: Cancelación Occurre cuando la mayoría de los dígitos significativos se pierde durante la sustracción de dos números muy similares. Por ejemplo, teóricamente: = Números decimales Los números decimales nos permiten representar fracciones. Algunas fracciones tienen representación exacta como numero decimal (en base 0): en su expresión simplificada, sus denominadores dividen en forma exacta alguna potencia de 0. Ejemplos: Debe ser: 0, Fracción Número decimal Potencia de 0 Pero si las operaciones se realizan con datos float: /2 0, 0 (0/2=) 0, , =,9044E8 =,7772E8 /4 / 0,2 0,2 0 2 (00/4=2) 0 (0/=2) Porcentaje error:,% /8 0,2 0 (000/8=2) Representación inexacta de fracciones reales Las fracciones simplificadas cuyos denominadores no dividen en forma exacta alguna potencia de 0, no tienen representación exacta como número decimal (en base 0). Ejemplos: Fracción / / /7 /9 Número decimal 0,... (0,) 0,... (0,) 0, (0,4287) 0,... (0,) Representación de fracciones en computadores La Java Virtual Machine representa los valores numéricos en base 2. Las variables numéricas para almacenar valores en punto flotante son de capacidad limitada. Por lo tanto pueden ser representadas exactamente aquellas fracciones (simplificadas) cuyo denominador divida exactamente una potencia de 2, y cuya cantidad de decimales no exceda la capacidad del tipo. Ejemplos: /2 /4 / 7 8
3 Precisión y exactitud Para los valores en punto flotante se define: Precisión: representa la cantidad de dígitos significativos que tiene su mantisa ( significand ). En Java los valores double son más precisos que los float. Matemática pura v/s matemática computacional Los números reales: Son infinitos (no hay primero ni último) Los números en punto flotante: Son acotados Exactitud: representa qué tan próximo se encuentra un valor en punto flotante, respecto de su valor correcto. Valor real / / 0,f 0, (double) Más exacto Más preciso Son contínuos (entre dos números reales existe siempre otro número real) Tienen precisión infinita (tienen la cantidad de decimales que sean necesarios) Son discretos Tienen precisión limitada 9 0 Tipos de datos enteros en Java Java ofrece los siguientes tipos de datos enteros: Valores Enteros Tipo byte Tamaño (Bits) 8 Valor mínimo 28 Valor máximo 27 short int long char 0. 2
4 Representación interna (positivos) Para el tipo byte: = 0 * 2 0 = = * 2 0 = = *2 + 0*2 0 = = *2 + *2 0 = = * *2 +0*2 0 = = *2 + * *2 4 + *2 + *2 2 + *2 +*2 0 = 27 0 Operaciones en Java Recordar que: Operaciones de dos variables byte o short generan un resultado int. Operaciones de dos valores int generan como resultado un int. Operaciones que involucran al menos un long generan como resultado un long. 4 Representación de números negativos Supongamos la existencia de un tipo de dato entero llamado by (la mitad de un byte), que almacena números enteros de 4 bits. Utilizaremos bits para representar la parte numérica y uno (el primero de la izquierda) para el signo: Representación de números negativos: signed magnitude Signed magnitude (magnitud con signo) es una forma de codificar los número negativos : Números positivos: bit de signo igual a 0 Números negativos: bit de signo igual Ejemplo: Inconvenientes?
5 Problemas al utilizar signed magnitude Dos características indeseables: Existen dos ceros, uno positivo y otro negativo No se puede utilizar la lógica normal de suma de enteros: + = + 2 = x x Representación de números negativos: two scomplement Two scomplement (complemento de dos) codifica los números negativos de la siguiente forma: Los números positivos se representan normalmente Los números negativos se representan complementando cada bit del número positivo correspondiente, y luego sumando al resultado En cualquier caso, el bit de la izquierda representa el signo (0: positivo, : negativo) Ejemplo: representación del número Número positivo correspondiente () Complementar cada bit Sumar Valor negativo ( ) Representación de números negativos: two scomplement Entonces los by serán los siguientes: Representación de números negativos: two scomplement Operaciones de suma: = + 2 =
6 Java y representación de enteros En Java se representan utilizando two scomplement los siguientes tipos enteros: short byte int long El conjunto de los números enteros En los números enteros: El conjunto de los enteros es cerrado respecto de la adición y sustracción ( y éstas no fallan!) El tipo char no tiene bit de signo, todos sus bits representan 0 ó un número positivo = = Los números enteros en Java Podemos imaginar los by ordenados en círculo: Los números enteros en Java Ejemplo de suma: 2 + =
7 Los números enteros en Java Ejemplo de suma: + 2 = 8? Los números enteros en Java Una resta: 4 =! Overflow! 2 2 Los números enteros en Java La aritmética de enteros no genera tipo de aviso alguno (mensaje de error, excepción, etc.) cuando las operaciones de enteros producen resultados incorrectos (no hay excepciones de overflow). Pensar en los ciclos iterativos que incrementan contadores, en simples operaciones de aritméticas que pasan por valores positivos y negativos sin control alguno etc. Los números enteros en Java Entonces mis programas anteriores funcionaban correctamente? Overflows can be silent killers of integer arithmetic! Ronald Mak 27 28
8 Wrapper classes para tipos enteros en Java Java ofrece wrapper classes para almacenar valores enteros: Byte Ejemplo: Short Integer Long Integer num = new Integer( 40 ); Valores en punto flotante Estas clases ofrecen constantes y métodos útiles. Entre éstos las constantes MIN_VALUE y MAX_VALUE, que representan valor mínimo y máximo de cada tipo. 29 Los números en punto flotante Supongamos la existencia de un formato punto flotante que tiene una mantisa (f) de dígito, y un exponente (e) de dígito, todos en base 0: Los números en punto flotante La distribución de los anteriores en la recta numérica sería: e= f e = e = 0 e = 0 0 * 0 = 0 * 0 = 0, 0 * 0 0 = 0 * 0 0 = 0 * 0 = 0 * 0 = 0 0 0, 0,2 0, 0,4 0, 0, 0,7 0,8 0,9 2 2 * 0 = 0,2 2 * 0 0 = 2 2 * 0 = 20 e=0 * 0 = 0, * 0 0 = * 0 = * 0 = 0,4 4 * 0 0 = 4 4 * 0 = 40 7 * 0 = 0, * 0 = 0, 7 * 0 = 0,7 * 0 0 = * 0 0 = 7 * 0 0 = 7 * 0 = 0 * 0 = 0 7 * 0 = , e= 8 8 * 0 = 0,8 8 * 0 0 = 8 8 * 0 = * 0 = 0,9 9 * 0 0 = 9 9 * 0 =
9 Los números son representados en forma binaria Considerar significante de de 2 bits y exponente de 2 bits Conceptos revisitados Error de redondeo (roundoff): diferencia entre un valor exacto y el valor que lo puede representar. f e = = = = = e = = = = = e = = = = = e = 00 e=0 e=0 e=.00 2 = = = = = = = 0. 2 = = = = 0 2 = = = = = 4 0 Precisión (precision): es la medida del número de dígitos significativos de la mantisa de un valor en punto flotante. Exactitud (accuracy): representa qué tan correcto es un valor en punto flotante, esto es, qué tan cercano a su valor exacto. 4 Las Leyes del Algebra: Propiedad Asociativa El álgebra de los números reales cumple la propiedad asociativa de la suma y la multiplicación: (a + b) + c = a + (b + c) (ab)c = a(bc) La aritmética de punto flotante en Java no cumple con tales propiedades (ver ejemplo en siguiente transparencia). Las Leyes del Algebra: Propiedad Asociativa (cont.) Ejemplo: Sea a =.0f ( ) b =.0E8f ( ) c = 4.0E8f ( )? (a + b) + c = a + (b + c) (.0 +.0E8) + 4.0E8 =?.0 + (.0E E8) (roundoff)? E8 = E8 (roundoff) (roundoff).0 =
10 Las Leyes del Algebra: Propiedad Asociativa (cont.) Ejemplo: Sea a = 0.f b =.0E4f c =.0E8f? (a * b) * c = a * (b * c)? (0.f *.0E4) *.0E8 = 0. * (.0E4 *.0E8) 0. *.4E4.4E4 *.0E8 (underflow)? 0.0 *.0E8 = 0. * E7 Propiedad Asociativa: Porcentaje de fallas? Ronald Mak muestra un simple experimento en el cual se prueba la propiedad asociativa de la suma y multiplicación de tres números float 2 : 7% de fallas en la suma 4% de fallas en la multiplicación Java Number Cruncher. The Java Programmer s Guide To Numerical Computing 2 Números float generados al azar, de pruebas 0.0 = E7 7 8 Las Leyes del Algebra: Propiedad Distributiva e Inverso Multiplicativo Propiedad distributiva: Falla! Inverso multiplicativo: a*(b + c ) = a*b + a*c Las Leyes del Algebra: Propiedad Conmutativa Sobre la suma: a + b = b + a Sobre la multiplicación: a * b = b * a Si a!=0 a*(/a ) = (/a)*a = Falla! Ejercicio: generar ejemplos Funciona! 9 40
11 El estándar Floating Point IEEE 74 Inicialmente había diferentes formatos de valores punto flotante implementados en hardware y software Resultados de operaciones variaban al cambiar de plataforma En 98 se estableció el estándar IEEE 74, al cual hoy adhieren muchos sistemas. El estándar Floating Point IEEE 74 Especifica: formatos numéricos operaciones conversiones excepciones Java adhiere al estándar: tipo float: formato 2 bit de precisión simple tipo double: formato 4 bit de doble precisión IEEE: Institute of Electrical and Electronics Engineers 4 42 IEEE 74: Formato Numérico Cada número se divide en tres partes: Bit de signo (s) Exponente (e) Fracción (f) s e f bit s e f 2 4 bit 4 IEEE 74: Formato Numérico (cont.) Bit de signo: 0 (positivo) y (negativo) Exponente: No tiene signo (siempre positivo) En float toma valores entre 0 y 2 (pero ambos son reservados) En double toma valores entre 0 y 2047 (pero ambos son reservados) El valor almacenado es sesgado El valor auténtico, insesgado, (E) se obtiene restando el sesgo al valor sesgado: Sesgo formato float: 27 Sesgo formato double: 02 Ejemplo (float): e = E = 27 = 88 e = 2 E = 2 27 = 02 44
12 IEEE 74 Formato Numérico: exponente Tabla de valores posibles del exponente: IEEE 74 Números Normalizados s e f 8 2 (float) float double Valor sesgado Valores reservados sesgados 0 y +2 0 y Valores admisibles sesgados Sesgo Valores (admisibles) insesgados bit Si el exponente no es valor reservado (0 ó 2 para float, 0 ó 2047 para double), el número se interpreta de la siguiente forma: El bit de signo determina el signo del número (: negativo, 0: positivo) Se asumen un y un punto decimal implícitos delante del primer bit de la fracción:.f Se mueve el punto decimal tantas posiciones (a la derecha o izquierda) como lo indique el valor del exponente insesgado (positivo o negativo). 4 4 IEEE 74 Números Normalizados Ejemplo: s = 0 e = 00 2 = 2 0 f = Entonces: E = = 2 0 Significante = Número = Número = 0 * * 2 + * * 2 = /4 + /8 = = 0.7 IEEE 74 Números Normalizados Ejemplo: el menor float positivo s = 0 e = = 0 f = Entonces: E = = 2 0 Significante = Número = 0 * * * * 2 2 = (aprox).7e
13 IEEE 74 Números Normalizados Ejemplo: el máximo float s = 0 e = 0 2 = 24 0 f = 2 Entonces: E = = 27 0 Mantisa =. 2 Número = aprox..4e8 Java y los Números Desnormalizados El número normalizado positivo más pequeño tipo float es aprox..7e8 Luego, el número inmediatamente anterior es 0 Los números desnormalizados explotan los valores reservados del exponente para generar nuevos rangos de valores Java y los Números Desnormalizados Número desnormalizado (o subnormal): e = 0 (valor reservado), y f!= 0 Se interpreta: Se asumen un 0 y un punto decimal implícitos delante del primer bit de la fracción: 0.f En el caso de un float, se mueve el punto decimal implícito 2 posiciones a la izquierda En el caso de un double, se mueve el punto decimal implícito 022 posiciones a la izquierda El valor del bit de signo determina el signo del numero (0: positivo, : negativo) Java y los Números Desnormalizados El número desnormalizado positivo más pequeño tipo float es: s = e = 0 f = mantisa = Número = 2 49 = aprox =.4E4 El número desnormalizado positivo más grande tipo float es: s = e = 0 f = 2 mantisa = 0. 2 Número = aprox.2e8 2
14 Java y los Números Desnormalizados Mediante los números desnormalizados se logra una aproximación más suave a 0. float Números desnormalizados Números normalizados Operaciones en punto flotante Expresiones binarias o unarias en las que participa un double, generan como resultado un double. Expresiones binarias o unarias en las que participa un float, pero no un double, generan como resultado un float. Al sumar al máximo float (Float.MAX_VALUE) se obtiene como resultado +Infinity (Float.POSITIVE_INFINITY), no un double. 0.2E8.4E8 4 Operaciones en punto flotante Al operar dos valores punto flotante el resultado será del tipo correspondiente, y que contendrá: Un valor normalizado, o Un valor desnormalizado, o El valor +0 o 0 El valor +Infinity o Infinity, o El valor NaN (NotaNumber) Características de los valores especiales +0 =0 NaN operado con cualquier otro valor genera NaN Cualquier división de ±0 por ±0 genera NaN La suma o resta de ±Infininity con otros números genera ±Infininity La suma de +Infinity con Infinity genera NaN El producto de ± Infininity con ±0 genera NaN...y otras
15 IEEE 74 y sus Excepciones IEEE 74 define tipos de excepciones: Invalid Operation División por cero Overflow Underflow Valor inexacto Genera como resultado NotaNumber Genera como resultado ±oo Asigna como resultado el mayor número normalizado posible o ±oo Asigna como resultado ± 0, el número normalizado más próximo a 0, o un número desnormalizado Asigna como resultado el valor redondeado más próximo posible Cuando ocurre una excepción, el computador debe advertir este hecho, setendo el status de una variable indicadora. El status no se modificará hasta que el programa haga el reset de esta variable. Excepciones de IEEE 74 v/s Java Java no adhiere al estándar en materia de notificación de excepciones (es decir... no las notifica). Los programas deben chequear las excepciones, preguntando si se han generado resultados NotaNumber (NaN), +Infinity o Infinity (ej. usar Float.isNaN() o Double.isNaN() ) 7 8 Conversión por ampliación de float a double Supongamos la variable a de tipo float: a = /f El valor impreso de a es 0.4 Qué ocurre si el valor de la variable a se asigna la variable b de tipo double?...? El valor impreso de b es Por qué no es ? Basura aleatoria??? Notar además que.0/ = 0. (double) Conversión por ampliación de float a double Notar que /f: s = 0 E = 2 mantisa = Y además que al hacer la asignación del valor float a la variable double: s = 0 E = 2 mantisa = Pero si hubiésemos hecho.0/: s = 0 E = 2 mantisa = Valor en base 0=
16 Aproximación Considerar por ejemplo que /f no es representable exactamente como punto flotante: /f Java utiliza la aproximación al más cercano (round to nearest): Cuando un valor exacto se encuentra entre dos valores representables, se toma el valor punto flotante más próximo al valor exacto. Si el valor exacto se encuentra exactamente a la misma distancia de dos valores representables, se toma el valor punto flotante cuyo bit menos significativo (de la derecha) sea 0. El Épsilon (ε) de la Máquina El épsilon de la máquina es el mayor valor positivo que al sumarlo a, produce un resultado igual a. En otras palabras, buscamos ε tal que por redondeo: + ε = Todo ε mayor producirá: + ε > En el caso de datos float: Tarea Estudiar las clases BigInteger y BigDecimal de Java, pertenecientes al package java.math. Caso de estudio: el sistema de misiles Patriot Patriot: Sistema defensivo antimisiles de EE.UU. En la batalla del Golfo Pérsico, el 2 de febrero de 99, uno de estos sistemas falló en la interceptación de un misil Iraquí Scud. El misil Scud dio muerte a 28 soldados que permanecían en una barraca e hirió a otras 00 personas, en la ciudad de Dharhan, Arabia Saudita. 4
17 Caso de estudio: el sistema de misiles Patriot La investigación de los hechos estableció que: El radar del sistema Patriot identificó correctamente al misil enemigo, sin embargo, luego de su detección lo consideró una falsa señal y lo descartó como objetivo. El sistema consideró al misil como falsa señal porque, tras predecir correctamente su trayectoria, en la siguiente observación inspeccionó un área del cielo equivocada. El error en de zona de inspección se debió a inexactitudes en el control del tiempo en el sistema Patriot: el sistema maneja intervalos de /0 de segundo, los cuales son contados y almacenados en una variable entera. Por su parte, el valor correspondiente a /0 de segundo es almacenado en una variable de punto fijo de 24 bits. El tiempo actual es calculado como el producto de ambos valores. Al momento de la falla, el sistema se encontraba en torno a las 00 horas de operación continua. Caso de estudio: el sistema de misiles Patriot El valor /0 no tiene representación exacta en base 2, y el sistema lo trunca a 24 bits. Valor /0 = /2 4 + /2 + /2 8 + /2 9 + /2 2 + /0 en base 2 = Registro del Patriot = Error en el registro = Error en el registro = (aprox.) El pequeño error de exactitud se vuelve significativo cuando se lo multiplica por cantidades grandes (por ej. a las 00 horas de operación del sistema): Error en 00 horas de operación= =0.4 seg Un misil Scud viaja a.7 m/seg, en 4 s recorre aprox. 70 m. Por lo anterior, el sistema no encontró al objetivo en lugar esperado. Caso de estudio: el sistema de misiles Patriot El problema había sido identificado por investigadores israelitas y comunicado al ejército de EE.UU. La solución provisoria consistía en resetear los sistemas cada cierto tiempo, sin embargo esto no fue correctamente aplicado por los operadores del ejército. Para saber más sobre tramiento computacional de números Mack Ronald. Java Number Cruncher. The Java Programmer s Guide To Numerical Computing Prentice Hall PTR, Upper Saddle River, New Jersey, 200. El patch para el software estuvo disponible al día siguiente de la tragedia. 7 8
1.4.3 Errores de redondeo y la aritmética finita de las computadoras
1.4.3 Errores de redondeo y la aritmética finita de las computadoras Como la computadora sólo puede almacenar un número fijo de cifras significativas, y cantidades como π, e, 3, 2 no pueden ser expresadas
Más detallesUniversisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas
Universisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas Aritmética Punto Flotante Basada en: What Every Computer Scientist Should Know About Floating-Point Arithmetic Por: David Goldberg Prof.
Más detallesAritmética de Enteros y
1 Aritmética de Enteros y Flotantes 2013 Transversal de Programación Básica Proyecto Curricular de Ingeniería de Sistemas 2 1. Introduccion La aritmética de enteros es aritmética modular en complemento
Más detallesComputación I Representación Interna Curso 2011
Computación I Representación Interna Curso 2011 Facultad de Ingeniería Universidad de la República Estándar IEEE 754 Primero se definen tres formatos s e F Total (bits) (bits) (bits) (bytes) simple precisión
Más detallesComputación I Representación Interna Curso 2011
Computación I Representación Interna Curso 2011 Facultad de Ingeniería Universidad de la República Temario Representación de Números Enteros Representación de Punto Fijo Enteros sin signo Binarios puros
Más detallesRepresentación de datos y aritmética básica en sistemas digitales
Representación de datos y aritmética básica en sistemas digitales DIGITAL II - ECA Departamento de Sistemas e Informática Escuela de Ingeniería Electrónica Rosa Corti 1 Sistemas de Numeración: Alfabeto:
Más detallesRepresentación de Números Reales
Representación de Números Reales María Elena Buemi 15 abril de 2011 Introducción a la Computación Representación de Números Reales Cómo se representa un número real? Un numeral con parte entera y parte
Más detallesRepresentación de datos y aritmética básica en sistemas digitales
Representación de datos y aritmética básica en sistemas digitales DIGITAL II - ECA Departamento de Sistemas e Informática Escuela de Ingeniería Electrónica Rosa Corti 1 Sistemas de Numeración: Alfabeto:
Más detallesSistemas de Numeración
Sistemas de Numeración Parte 2: Representación de Reales Lic. Andrea V. Manna Sistemas posicionales: Repaso N= d k-1 d k-2 d 1 d 0,d -1 d -l = d k-1 *p k-1 + d k-2 *p k-2 +.+ d 0 *p 0,+ d -1 *p -1 +...+
Más detallesInstituto Tecnológico de Morelia
Instituto Tecnológico de Morelia Microcontroladores Representación de datos en las computadoras M.C.Miguelangel Fraga Aguilar http://sagitario.itmorelia.edu.mx/mfraga mfraga@itmorelia.edu.mx Representaciones
Más detallesRepresentación de la Información
Representación de la Información Bit: (Binary Digit) Un bit es un dígito binario. Como tal, puede tener 2 valores posibles, y 0. Como los circuitos de una computadora pueden asumir 2 estados, los bits
Más detallesAritmética de Enteros
Aritmética de Enteros La aritmética de los computadores difiere de la aritmética usada por nosotros. La diferencia más importante es que los computadores realizan operaciones con números cuya precisión
Más detallesPráctica 1 - Representación de la información
Práctica 1 - Representación de la información Organización del Computador 1 Primer Cuatrimestre 2014 Ejercicio 1 a) Utilizando el método del cociente, expresar en bases 2, 3 y 5 los números 33, 100 y 1023.
Más detallesComputación 1. Representación en Punto Flotante
Computación 1 Representación en Punto Flotante Contenido Representación en Punto Flotante Ejemplos en base 10 Punto flotante en binario Normalización Estándar IEEE 754 Representación de Números Reales
Más detallesTipo de datos. Montse Bóo Cepeda. Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain.
Tipo de datos Montse Bóo Cepeda Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain. Estructura del curso 1. Evolución y caracterización de los computadores.
Más detalles+- S x B +-E. Este estándar presupone una representación normalizada. Es decir, los números a representar obedecen a la siguiente forma:
3.6 Codificación Punto Flotante Esta codificación nace por la necesidad de tener un rango más amplio de representatividad numérica, o cobertura. Los esquemas antes mencionados ofrecen un rango limitado
Más detallesArquitectura de Computadoras
Arquitectura de Computadoras Representación de la Información J. Irving Vásquez ivasquez@ccc.inaoep.mx Centro de Innovación y Desarrollo Tecnológico en Cómputo 17 de febrero de 2016 1 / 41 Table of contents
Más detallesOrganización de Computadoras. Clase 3
Organización de Computadoras Clase 3 Temas de Clase Representación de números en Punto Flotante Notas de clase 3 2 Números en punto fijo Todos los números a representar tienen exactamente la misma cantidad
Más detallesDatos y tipos de datos
Datos y tipos de datos Dato Representación formal de hechos, conceptos o instrucciones adecuada para su comunicación, interpretación y procesamiento por seres humanos o medios automáticos. Tipo de dato
Más detallesEstructura de Computadores Tema 2. Representación de la información
Estructura de Computadores Tema 2. Representación de la información Departamento de Informática Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas UNIVERSIDAD CARLOS III DE MADRID Contenido!
Más detallesUnidades Aritméticas. Full Adder de un Bit. Sumador/Restador. Full Adder de 32 Bits. Carry Lookahead de 4 Bits. Suma Rápida con Carry Lookahead.
Unidades Aritméticas Full Adder de un Bit a i b i a i b i c i s i c i+1 c i+1 s i s i = a i b i c i + a i b i c i + a i b i c i + a i b i c i c i+1 = a i b i + a i c i + b i c i c i 0 0 0 0 0 0 0 1 1 0
Más detallesComputación 1. Representación Interna de Números
Computación 1 Representación Interna de Números Contenido Representación de Enteros Sin Signo Representación de Enteros Con Signo con magnitud y signo exceso a M Complemento a 1 Números Enteros Representación
Más detallesComputadora MA2008. Análisis Numérico: Artimética de una. Computadora. Computación / Matemáticas. Intro. Idea. IEEE estándar. Errores.
Análisis MA2008 ducción El objetivo de esta lectura es tener idea aproximada de cómo se realiza la aritmética de punto flotante en computadora. Esta idea deberá poner sobre aviso de las potenciales dificultades
Más detallesNúmero, algoritmo y errores
Número, algoritmo y errores Índice 1.! Introducción 2.! Errores absolutos y relativos 3.! Almacenamiento de números en un ordenador! Números enteros! Números reales 4.! Concepto de algoritmo 5.! Clasificación
Más detallesNúmeros. un elemento perteneciente al conjunto D b. de los dígitos del sistema. D b
1 Un número es un ente que permite representar simbólicamente las veces que la unidad está presente en la cantidad observada o medida. Números representados por una cantidad finita de dígitos o cifras.
Más detallesAritmetica del Computador
Pantoja Carhuavilca Métodos Numérico Agenda Sistema de Numeración Representación de enteros Base Binaria (2) 2 bits [0,1] 3 1011 en base 2 = 1 2 3 + 0 2 2 + 1 2 1 + 1 2 0 = 8 + 0 + 2 + 1 = 11 en base decimal
Más detallesUniversidad de San Buenaventura - Facultad de Ingeniería
Aproximaciones Para trabajar con números decimales que tienen muchas cifras decimales, o infinitas, hacemos aproximaciones. Decimos que la aproximación de un número es por defecto cuando es menor que el
Más detallesAritmetica del Computador
Facultad de Ingeniería Industrial Universidad Nacional Mayor de San Marcos Métodos Computacionales Contenido Introducción 1 Introducción 2 3 Introducción al estudio de métodos computacionales Aproximación
Más detallesRepresentación de Números
Representación de Números Maximiliano Geier 4/10/2017 Maximiliano Geier Representación de Números 4/10/2017 1 / 21 Cómo se representan los números? Cada número se puede representar de varias maneras. Por
Más detalles2. Representación de números 1
2. Representación de números 1 Julio C. Carrillo E. Escuela de Matemáticas, UIS 2. Representación de números 2 1. Representación de punto flotante normalizada La notación científica es un tipo de representación
Más detallesLección 5. Punto flotante
Lección 5. Punto flotante MIGUEL ANGEL UH ZAPATA 1 Análisis Numérico I Facultad de Matemáticas, UADY Agosto 2014 1 Centro de Investigación en Matemáticas, Unidad Mérida En esta lección aprenderemos lo
Más detallesRepresentación de Números Reales. Organización del Computador 1 Verano 2016
Representación de Números Reales Organización del Computador 1 Verano 2016 En un mundo de 0 s y 1 s Qué sabemos representar en forma de ceros y unos? Números naturales/magnitudes (notación sin signo) Números
Más detallesLógica Computacional. Aritmética binaria
Lógica Computacional Aritmética binaria Aritmética binaria - Suma Para sumar dos (o más) números en sistema binario seguimos el mismo procedimiento que para sistema decimal, teniendo en cuenta que: 1 +
Más detallesContenido. Introducción a los Computadores Conceptos básicos. Sistema de numeración CNM-130
Contenido Introducción a los Computadores Conceptos básicos 1 Sistemas numéricos CNM-130 Instituto de Matemáticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia 2 Tipos de datos 3 Operadores
Más detallesComputación 1. Punto Flotante y Errores
Computación 1 Punto Flotante y Errores Aritmética de Punto Flotante Suma y Resta Para sumar o restar dos números en punto flotante es necesario que los exponentes sean iguales. La operación de suma o resta
Más detallesCursada Segundo Cuatrimestre 2017 Guía de Trabajos Prácticos Nro. 2
Temas: Programación en MATLAB: Sentencias, expresiones y variables. Estructuras de control. Operadores relacionales y lógicos. Programación de funciones. Aritmética finita: Representación de números en
Más detallesAritmética finita y análisis de error
Aritmética finita y análisis de error Contenidos Sistemas decimal y binario Representación de enteros Representación de los números reales Aproximación y error de redondeo Referencias Sistemas decimal
Más detallesTitulación: Grado en Ingeniería Informática Asignatura: Fundamentos de Computadores
Titulación: Grado en Ingeniería Informática Asignatura: Fundamentos de Computadores Bloque 1: Introducción Tema 2: Sistema binario de representación numérica Pablo Huerta Pellitero ÍNDICE Bibliografía.
Más detallesEstructura de Computadores
Estructura de Computadores Tema 2. Representación de la información Departamento de Informática Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas UNIVERSIDAD CARLOS III DE MADRID Contenido
Más detallesAgenda. 0 Operaciones aritméticas 0 ASCII 0 UTF-8 0 Código Gray. 0 Números de punto flotante
Agenda 0 Operaciones aritméticas 0 ASCII 0 UTF-8 0 Código Gray 0 BCD 0 Números de punto flotante Operaciones aritméticas Suma de números binarios 0 0 1 1 + 0 + 1 + 0 + 1 0 1 1 10 1 Sumando + 1 Sumando
Más detallesRepresentación de números binarios en punto fijo y punto flotante.
Apuntes de Clases Representación de números binarios en punto fijo y punto flotante. Realizado por Sergio Noriega Introducción a los Sistemas Lógicos y Digitales Departamento de Electrotécnia Facultad
Más detallesJava posee dos grandes categorías de tipos para las variables:
Declaración identificador tipo int i; i entero String s; s referencia a string int a[]; a referencia a arreglo de enteros int[] b; b referencia a arreglo de enteros Java posee dos grandes categorías de
Más detallesOrganización del Computador 1. Representación binaria de Números Reales Sistemas de Representación
Organización del Computador 1 Representación binaria de Números Reales Sistemas de Representación Representación de la Información Ø Bit: (Binary Digit) Un bit es un dígito binario. Como tal, puede tener
Más detallesIntroducción al análisis numérico
Introducción al análisis numérico Javier Segura Universidad de Cantabria Cálculo Numérico I. Tema 1 Javier Segura (Universidad de Cantabria) Introducción al análisis numérico CNI 1 / 22 Contenidos: 1 Sistemas
Más detallesTema 2 Representación de la información
Grupo ARCOS Universidad Carlos III de Madrid Tema 2 Representación de la información Estructura de Computadores Grado en Ingeniería Informática A recordar 1. Estudiar la teoría asociada: } Repasar lo visto
Más detallesConceptos previos. Revisión de Sistemas Lógicos Formatos Numéricos. Dpto. Ingeniería Electrónica y Comunicaciones
Conceptos previos Revisión de Sistemas Lógicos Formatos Numéricos Revisión de Sistemas Lógicos Álgebra de Boole Base matemática de la Electrónica Digital Consta de dos elementos: 0 lógico y 1 lógico Tecnología
Más detallesOperaciones en Datos
Universidad Nacional de Ingeniería Facultad de Ciencias Introducción a la Ciencia de la Computación Operaciones en Datos Prof: J. Solano 2011-I Objetivos Despues de estudiar este cap. el estudiante sera
Más detallesTipos de Datos y Representaciones. Circuitos Digitales, 2º de Ingeniero de Telecomunicación. EITE ULPGC.
Tipos de Datos y Representaciones Circuitos Digitales, 2º de Ingeniero de Telecomunicación. EITE ULPGC. Índice 1. Sistemas numéricos posicionales 2. Números octales y hexadecimales 3. Conversiones entre
Más detallesPráctica 1: Representación de números
Práctica 1: Representación de números Organización del Computador I DC - UBA 2do. Cuatimestre 2014 Menú del día Hoy vamos a ver: Representación de numeros Aritmética en otras bases (no decimales) Cambios
Más detallesAritmética finita y análisis de error
Aritmética finita y análisis de error Escuela de Ingeniería Informática de Oviedo (Dpto. de Matemáticas-UniOvi) Computación Numérica Aritmética finita y análisis de error 1 / 47 Contenidos 1 Sistemas decimal
Más detallesDatos y tipos de datos
Datos y tipos de datos Dato Representación formal de hechos, conceptos o instrucciones adecuada para su comunicación, interpretación y procesamiento por seres humanos o medios automáticos. Tipo de dato
Más detallescomo les va con las practicas?
como les va con las practicas? Problemas NP-completos y Estructuras de datos básicas (representación de datos) mat-151 1 Una maquina de Turing Aceptation state Una maquina de Turing Maquina de Turing Determinística,
Más detalles4. Operadores Operador asignación
Programación orientada a objetos con Java 43 4. Operadores Objetivos: a) Describir los operadores (aritméticos, incrementales, de relación, lógicos y de asignación) y los tipos de dato primitivos sobre
Más detallesAlgoritmos Multiplicación División
Algoritmos Multiplicación División 1 Algoritmos de Multiplicación Producto = Multiplicando * Multiplicador P : producto R: Multiplicando Q: Multiplicador P = R * Q 2 Algoritmos de Multiplicación Primer
Más detallesCurso de Programación Avanzada en C
Curso de Programación Avanzada en C Copyright, 1996 Universidad Sim on Bol ivar 1 Prof. Mariela J. Curiel Contenido del Curso Conceptos BásicosB Estructuras de Control Arreglos Otros tipos de datos derivados
Más detallesESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I CAPÍTULO III ARITMÉTICA Y CODIFICACIÓN
ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I CAPÍTULO III ARITMÉTICA Y CODIFICACIÓN TEMA 3. Aritmética y codificación 3.1 Aritmética binaria 3.2 Formatos de los números y su representación 3.3 Definiciones
Más detallesExpresiones y sentencias
Expresiones y sentencias Expresión Construcción (combinación de tokens) que se evalúa para devolver un valor. Sentencia Representación de una acción o una secuencia de acciones. En Java, todas las sentencias
Más detallesEnteros: números pertenecientes a un subconjunto finito de los números enteros. Lógicos: los dos valores lógicos, VERDADERO (true) o FALSO (false).
Tema 2 Datos y variables Versión: 16 de febrero de 2009 2.1 Tipos de datos Se denomina dato a cualquier objeto manipulable por el ordenador. Un dato puede ser un carácter leído de un teclado, información
Más detallesREPRESENTACION DE LA INFORMACION
CAPITULO SEGUNDO. REPRESENTACION DE LA INFORMACION Estructura de Ordenadores. Departamento de Automática Juana Mª López Dpto. Automática. Estructura de computadores. Capítulo 2. Página 1 INTRODUCCION Clasificación
Más detallesSistemas de Numeración. I semestre 2011
Sistemas de Numeración I semestre 2011 Sistema Decimal 7392 7 10 3 + 3 10 2 + 9 10 1 + 2 10 0 10 símbolos: 0 9 Un número decimal puede ser expresado por una serie de coeficientes: a 3 a 2 a 1 a 0, a 1
Más detallesExpresiones y sentencias
Expresiones y sentencias Expresión Construcción (combinación de tokens) que se evalúa para devolver un valor. Sentencia Representación de una acción o una secuencia de acciones. En C, todas las sentencias
Más detallesOrganización del Computador 1. Representación binaria de Números Reales Sistemas de Representación
Organización del Computador 1 Representación binaria de Números Reales Sistemas de Representación Representación de la Información Bit: (Binary Digit) Un bit es un dígito binario. Como tal, puede tener
Más detallesTipos de datos y Operadores Básicos
Módulo I: Conceptos Básicos Tema 1. Qué es un ordenador? Tema 2. Cómo se representan los datos en un ordenador? Tema 3. Qué es un lenguaje de programación? Tema 4. Cómo se hace un programa informático?
Más detallesOrganización del Computador. Prof. Angela Di Serio
Punto Flotante Muchas aplicaciones requieren trabajar con números que no son enteros. Existen varias formas de representar números no enteros. Una de ellas es usando un punto o coma fijo. Este tipo de
Más detallesELO311 Estructuras de Computadores Digitales. Números
ELO311 Estructuras de Computadores Digitales Números Tomás Arredondo Vidal Este material está basado en: material de apoyo del texto de David Patterson, John Hennessy, "Computer Organization & Design",
Más detallesSistemas Numéricos. Introducción n a los Sistemas Lógicos y Digitales 2009
Sistemas Numéricos Introducción n a los Sistemas Lógicos y Digitales 2009 Sergio Noriega Introducción a los Sistemas Lógicos y Digitales - 2009 MSB = Most Significative Bit LSB = Less Significative Bit
Más detallesSistemas de Representación. Organización del Computador 1 Verano 2016
Sistemas de Representación Organización del Computador 1 Verano 2016 Los computadores comprenden el lenguaje de los números La organización de un computador depende (entre otros factores) del sistema de
Más detallesTema 2. Sistemas de representación de la información
Tema 2. Sistemas de representación de la información Soluciones a los problemas impares Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Tema 2: Hoja: 2 / 36 Tema 2: Hoja:
Más detallesPrincipios de Computadoras II
Departamento de Ingeniería Electrónica y Computadoras Operadores y Expresiones rcoppo@uns.edu.ar Primer programa en Java 2 Comentarios en Java Comentario tradicional (multi-línea) Comentario de línea Comentario
Más detallesRepresentación de la Información.... en los Computadores
Representación de la Información... en los Computadores 1 Información e Informática Un computador es una máquina que procesa información. La ejecución de un programa implica el tratamiento de los datos.
Más detallesTEMA Nº 1. Conjuntos numéricos
TEMA Nº 1 Conjuntos numéricos Aprendizajes esperados: Utilizar y clasificar los distintos conjuntos numéricos en sus diversas formas de expresión, tanto en las ciencias exactas como en las ciencias sociales
Más detallesRealizar la siguiente suma y expresar el resultado en hexadecimal: Teniendo los 3 valores expresados en la misma base, podemos realizar la suma:
Realizar la siguiente suma y expresar el resultado en hexadecimal: 83/ d + 33/ 4 + 0/ b El primer paso consiste en expresar todos lo valores con la misma base. Para eso convertiremos los dos primeros valores
Más detallesEstructura de Computadores
Estructura de Computadores Nociones Básicas Nociones básicas En este tema se repasan conceptos que aunque deberían ser conocidos se consideran importantes y se utilizan a lo largo de la asignatura, especialmente
Más detalles7.1 Números Racionales: números enteros, propiedades de los números y orden de operaciones. Prof. Kyria A. Pérez
7.1 Números Racionales: números enteros, propiedades de los números y orden de operaciones Prof. Kyria A. Pérez Estándares de contenido y expectativas N.SO.7.2.1- Modela la suma, Resta, multiplicación
Más detallesIntroducción a la Programación 11 O. Humberto Cervantes Maceda
Introducción a la Programación 11 O Humberto Cervantes Maceda Recordando En la sesión anterior vimos que la información almacenada en la memoria, y por lo tanto aquella que procesa la unidad central de
Más detallesAPUNTES DE CATEDRA: SISTEMAS DE NUMERACION - REPRESENTACION INTERNA DE NUMEROS Y CARACTERES
Cátedra de COMPUTACION Carreras: Licenciatura en Matemática Profesorado en Matemática Profesora: Mgr. María del Carmen Varaldo APUNTES DE CATEDRA: SISTEMAS DE NUMERACION - REPRESENTACION INTERNA DE NUMEROS
Más detallesSemana 1: Números Reales y sus Operaciones
Semana 1: Números Reales y sus Operaciones Taller de Preparación para Prueba PLANEA Ing. Jonathan Quiroga Tinoco Conalep Tehuacán P.T.B. en ADMO, SOMA y EMEC UNIDAD 04 Los números enteros y sus operaciones
Más detallesRepresentación de números fraccionarios: Punto Flotante
Representación de números fraccionarios: Organización de computadoras Universidad Nacional de Quilmes http:// 1 Signo Magnitud (Binario con signo) Representación en Signo-Magnitud Rango 2 Bit impĺıcito
Más detallesConjunto de Números Racionales.
Conjunto de Números Racionales. El conjunto de los números racionales está formado por: el conjunto de los números enteros (-2, -1, 0, 1, 2, ) y los números fraccionarios y se representan con una Q. Números
Más detallesTEMA 2. CODIFICACIÓN DE LA INFORMACIÓN
TEMA 2. CODIFICACIÓN DE LA INFORMACIÓN 1. INTRODUCCIÓN. SISTEMAS DE NUMERACIÓN EN. Sistema binario. Sistema octal. Sistema hexadecimal. 2. REPRESENTACIÓN DE TEXTOS.. Números naturales. Números enteros.
Más detallesTema 4: Sistemas de Numeración. Codificación Binaria. Escuela Politécnica Superior Ingeniería Informática Universidad Autónoma de Madrid
Tema 4: Sistemas de Numeración. Codificación Binaria Ingeniería Informática Universidad Autónoma de Madrid 1 O B J E T I V O S Sistemas de Numeración. Codificación Binaria Conocer los diferentes sistemas
Más detallesCONJUTOS NÚMERICOS NÚMEROS NATURALES
CONJUTOS NÚMERICOS NÚMEROS NATURALES El conjunto de números naturales tiene gran importancia en la vida práctica ya que con sus elementos se pueden encontrar elementos u objetos de otros conjuntos. El
Más detalles01. A qué se denomina conjunto de punto flotante? Conjunto de números racionales utilizado para representar a los números reales.
PREGUNTAS PARA ORIENTAR EL ESTUDIO DEL CAPITULO 1. Subtemas: 1.1. Representación de un número real en punto flotante y operaciones. 1.2. Underflow y Overflow. 01. A qué se denomina conjunto de punto flotante?
Más detallesLECTURA 4 REPRESENTACIÓN DE NÚMEROS EN PUNTO FIJO Y FLOTANTE.
UNIVERSIDAD TÉCNICA FEDERICO SANTA MARÍA DEPARTAMENTO DE ELECTRÓNICA LECTURA 4 REPRESENTACIÓN DE NÚMEROS EN PUNTO FIJO Y FLOTANTE. CURSO SIGLA LABORATORIO DE PROCESAMIENTO DIGITAL DE SEÑALES ELO 385 PROFESOR
Más detalles75.12 ANÁLISIS NUMÉRICO I GUÍA DE PROBLEMAS 1. ERRORES
75.12 ANÁLISIS NUMÉRICO I FACULTAD DE INGENIERÍA UNIVERSIDAD DE BUENOS AIRES GUÍA DE PROBLEMAS 1. ERRORES 1. Calcular las siguientes expresiones, incluyendo sus cotas de error absoluto, donde x = 2,00,
Más detallesCapítulo 5. Los números reales y sus representaciones Pearson Education, Inc. Diapositiva 5-2-1
Capítulo 5 Los números reales y sus representaciones 2012 Pearson Education, Inc. Diapositiva 5-2-1 Capítulo 5: Los números reales y sus representaciones 5.1 Números reales, orden y valor absoluto 5.2
Más detallesOrganización de Computadoras. Clase 2
Organización de Computadoras Clase 2 Temas de Clase Representación de datos Números con signo Operaciones aritméticas Banderas de condición Representación de datos alfanuméricos Notas de Clase 2 2 Representación
Más detallesOPEN KNOWLEDGE CURSO DE METODOS NUMERICOS
OPEN KNOWLEDGE CURSO DE METODOS NUMERICOS Juan F. Dorado Diego F. López Laura B. Medina Juan P. Narvaez Roger Pino Universidad de San Buenaventura, seccional Cali OPEN KNOWLEDEGE CURSO DE METODOS NUMERICOS
Más detallesProgramación estructurada (Tipos, operadores y expresiones)
Programación estructurada (Tipos, operadores y expresiones) M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 15-I Sergio Luis Pérez (UAM CUAJIMALPA) Curso de programación estructurada
Más detallesEscuela Politécnica Superior Ingeniería Informática Universidad Autónoma de Madrid
Tema 3: Sistemas de Numeración. Codificación Binaria Ingeniería Informática Universidad Autónoma de Madrid 1 O B J E T I V O S Sistemas de Numeración. Codificación Binaria Conocer los diferentes sistemas
Más detallesOrganización de Computadoras 2014. Apunte 2: Sistemas de Numeración: Punto Flotante
Organización de Computadoras 2014 Apunte 2: Sistemas de Numeración: Punto Flotante La coma o punto flotante surge de la necesidad de representar números reales y enteros con un rango de representación
Más detallesDesde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.
Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los
Más detallesTema 2: Desarrollo de Algoritmos. E.E. de Algorítmica
Tema 2: Desarrollo de Algoritmos E.E. de Algorítmica Temas a tratar Identificadores Variables Constantes Tipos de Datos Separadores Operadores Aritméticos Unarios Relacionales y Condicionales Nivel de
Más detallesMétodos Numéricos: los números reales y su representación
Métodos Numéricos: los números reales y su representación Eduardo P. Serrano Versión previa Feb 2012 1. Números reales Empleamos los números reales para expresar cantidades, valores, medidas o magnitudes.
Más detallesDiagrama de una computadora. Unidad Central de procesamiento (CPU)
2008 FORTRAN 90/95 Diagrama de una computadora Memoria principal Memoria secundaria Memoria interna (registros) Periféricos de entrada Unidad de control Periféricos de salida Unidad aritmética y lógica
Más detallesSistemas Numéricos Cambios de Base Errores
Cálculo Numérico Definición: es el desarrollo y estudio de procedimientos (algoritmos) para resolver problemas con ayuda de una computadora. π + cos ( x) dx 0 Tema I: Introducción al Cálculo Numérico Sistemas
Más detallesCurso de Java Introducción a la Programación II
Curso de Java Introducción a la Programación II Jaime Fernández Martín Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Tipos Java 2 Decalaración de variables 3 Operadores aritméticos Índice
Más detallesMATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS
MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS SUMA DE DOS CANTIDADES EN COMPLEMENTO A 2. AUTOR: JOSÉ ALFREDO JIMÉNEZ MURILLO AVC APOYO VIRTUAL PARA EL CONOCIMIENTO SUMA DE DOS CANTIDADES
Más detallesExpresiones Aritméticas. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz
Expresiones Aritméticas Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz Expresiones Aritméticas El computador puede realizar cálculos además de mostrar datos por pantalla.
Más detallesFundamentos de Informática E.U.P. Universidad de Sevilla
rea de Arquitectura y Teoría de Computadores Fundamentos de Informática E.U.P. Universidad de Sevilla Capítulo : INTRODUCCIÓN A LA INFORMÁTICA epartamento de Álgebra. INDICE INFORMÁTICA E INGENIERÍA DEFINICIÓN
Más detalles