1 / 20

Seminario de Computación

Seminario de Computación. FORTRAN 90/95. Diagrama de una computadora. Memoria principal. Memoria secundaria. Memoria interna (registros). Unidad de control. Periféricos de entrada. Periféricos de salida. Unidad aritmética y lógica. Unidad Central de procesamiento (CPU).

winona
Download Presentation

Seminario de Computación

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Seminario de Computación FORTRAN 90/95

  2. Diagrama de una computadora Memoria principal Memoria secundaria Memoria interna (registros) Unidad de control Periféricos de entrada Periféricos de salida Unidad aritmética y lógica Unidad Central de procesamiento (CPU)

  3. La CPU es el alma de la computadora: • Unidad de Control: controla todas las otras partes de la computadora. • Unidad Aritmética y lógica: realiza los cálculos matemáticos lógicos • Memoria Interna: almacena temporariamente de los resultados intermedios durante los cálculos. Memoria Principal: es utilizada para almacenar temporariamente el programa que está ejecutando la computadora y los datos que el programa requiere. Memoria secundaria: almacena los programas y los datos por el tiempo requerido por el usuario. Ej.: Disco rígidos, CD etc.

  4. Las memorias de la computadora está compuesta de millones de interruptores Cada interruptor representa in digito binario (bit) SI=1 NO=0 • Varios bits agrupados pueden ser usados para representar un número en el sistema de numeración binario. • Un byte= 8bit es la agrupación mas pequeña de bits para representar un número en sistema binario. • Los bytes son usados para medir la capacidad de memoria de una computadora. • Ej Memoria Principal 256 megabytes (256 millones de bytes) • Disco Rígido 40 Gigabytes (40 billones de bytes ) • Actualmente las CPU usan agrupaciones de 32 bits (4 bytes) o 64 bits (8 bytes, windows vista) . A esta agrupación dependiente de cada computadora se lo llama word (no es un valor fijo → 2n bytes)

  5. El sistema de numeración binario Sistema decimal Sistema binario 2 x 100 2 x 101 • 122 • Dos dígitos 0 y 1 Ej: 12210 26 → 64 122 – 64 = 58 25 → 32 58 – 32 = 26 24 → 16 26 – 16 = 10 23 → 8 10 – 8 = 2 22 → 4 2 – 4 = Excede el 122 21 → 2 2 – 2 = 0 20 → 1 0 – 1 =Excede el 122 11110102 = 1 x26 + 1 x 25 +1 x 24 + 1 x 23 + 0 x 22 + 1 x 21 + 0 x 20 Usamos 7 bits para representar al 122 1 x 102 12210= 1 x 102 +2 x 101 + 2 x 100

  6. En general, si se agrupan n bits se pueden representar 2n posibles valores. • Ej: • 8bits = 1 byte puede representar 256 valores numéricos desde -128 a +127 inclusive (la mitad valores negativos y la otra mitad el 0 mas los valores positivos). • 16 bits = 2 bytes pueden representar 65536 posibles valores (-32768 a +32767)} • 32 bits = 4 bytes pueden representar 4294967296 posibles valores.

  7. Elementos Básicos del FORTRAN Caracteres del FORTRAN El Fortran no distingue entre mayúsculas y minúsculas. Ej: Alfa=ALFA=alfa

  8. LasSentenciasFortran Un programa FORTRAN consiste en una serie de sentencias u “ordenes“ destinadas a cumplir objetivo del programador Sentencias no ejecutables Sentencias ejecutables Provee información necesaria para la ejecución del programa. Describen acciones como operaciones aritméticas etc. • La sentencias en Fortran 90/95 pueden ser escritas en cualquier lugar de una línea y superar los 132 caracteres. • Si una línea es muy larga para continuar en la línea siguiente debe finalizar con un amperson (&) ( se puede empezar en la siguiente con también con un amperson). • Puede continuarse hasta 40 líneas

  9. Ej: 3 formas de escribir la misma sentencia • Sum = entra1+ entra2 ! Suma los valores de entra1 y entra2 • Sum = entra1 & • + entra2 ! Suma los valores de entra1 y entra2 • 999 Sum = entra1 & ! Suma los valores de entra1 y entra2 • &+ entra2 Los textos que se encuentran después del signo de admiración son comentarios. Son ignorados por el FORTRAN y ayudan para la documentación del programa. Se utilizan al final de la sentencia. La última sentencia esta precedida por un número . Éste es como el “nombre” se la sentencia, se llama nivel y puede tener un número entre 1 y 99999. Se utiliza para invocar a esa sentencia desde otro lugar del programa. No es el número de línea.

  10. La estructura de un programa FORTRAN • La sección de declaración: Grupo de sentencias no ejecutables al comienzo del programa que define el nombre del programa y el numero y tipo de variables utilizadas en el programa. • La sección de ejecución: Sentencias que describen las acciones a ser realizadas por el programa • La sección de terminación: Sentencias que paran la ejecución del programa y le indican al compilador que el programa esta completo Ej: Leer 2 números enteros multiplicarlos e imprimir su resultado PROGRAM mi_primer_programa ! Objetivo: Ejemplificar las secciones de un programa FORTRAN ! Declaro las variables usadas en el programa INTEGER : : i, j, k ! Leo los números que hay que multiplicar y los guardo en las variables i y j WRITE(*,*) ´entrar los numeros que hay que multiplicar´ !Cartel READ(*,*) i, j k = i * j ! Multiplico los números WRITE(*,*) ‘resultado=‘, k ! Imprimo el resultado ! Finalización STOP END PROGRAM mi_primer_programa

  11. Compilar, Conectar (linking → “linkeditar”) Ejecutar un Programa FORTRAN ProgramaFORTRAN Archivo Objeto Programa Ejecutable Compilar “linkeditar” nombre.for nombre.obj nombre.exe Compilador FORTRAN Sistema de librerías Ayuda a identificar errores del lenguaje FORTRAN

  12. Constantes y Variables en FORTRAN • Constantes: Se definen al comienzo del programa. El compilador le asigna un valor constante en la memoria y luego se la puede invocar en cualquier punto del programa. • Variables: Se le asigna un lugar variable en la memoria. Los nombres de las variables pueden tener hasta 31 caracteres y pueden ser alfabéticos, numéricos y el guión bajo pero deben comenzar con un carácter alfabético. • Ej: • mes, z500, vorti_300 • Buenas Costumbres: • Poner nombres que nos ayuden a identificar las variables. • Ej: mes • Hacer un diccionario de los nombres de las variables. • Ej: z500 geopotencial en 500 Hpa • vorti_300 vorticidad relativa en 300 HPa

  13. Hay 5 tipos de constantes y variables FORTRAN Enteras Reales Complejas Lógicas Character (grafía) Constantes y variables enteras: “No pueden tener ni puntos ni comas” No representan números con fracciones Se almacenan enuna word ⇒ la magnitud del valor del entero que se pueda almacenar va a depender de la computadora (si trabaja en 16, 32 o 64 bits). Constantes y variables reales:“Pueden tener punto decimal pero no comas” Representan números con fracciones Pueden ser escritos con o sin exponente entero (1.2e-5, 0.000012, 0.12E1) La mantisa debe tener el punto decimal. La mantisa (precisión) y el exponente (rango) se almacenan en 2 partes. (Ver Tabla )

  14. * Indica longitud opcional Constantes y variables character: Sucesión de símbolos alfanuméricos. Constantes → se escriben entre ‘ o “ Ej: ‘Resultado = ‘ o “Resultado =“.

  15. Definición implícita o explícita de Variables: Implícita: Las variables que comienzan con la letras I, J, K, L, M y N son consideradas enteras Las que comienzan con alguna otra letra es considerada real. Explícita: Las variables son definidas al comienzo del programa en la sección de declaración (sentencias no ejecutables) Integer : : var1, var2, var3 REAL : : var4, var5 Los dobles 2 puntos son opcionales pero se usan para funciones más complejas En los programa Fortran, es posible no declarar algunas variables y dejar que el compilador asuma su tipo a partir de la primera letra de su nombre. Esto es muy poco recomendable por lo que vamos a utilizar la modalidad en la que todas las variables son declaradas y le vamos a indicar al compilador que vamos a trabajar de esta manera utilizando la sentencia IMPLICIT NONE Esta sentencia se ubica luego del nombre del programa y antes de empezar con la declaración de variables.

  16. Las variables Character: deben ser definidas explícitamente y especificar su longitud. CHARACTER (len= <longitud>) : : var1, var2, var3 Ej: CHARACTER (len=20) : : presion, temperatura, humedad CHARACTER (20) : : presion, temperatura, humedad Puede usarse: CHARACTER*20 presion, temperatura, humedad (FORTRAN 77) Esta última forma fue declarada obsoleta en Fortran 95 por lo cual no se recomienda su utilización en nuevos programas Otra forma para declarar constantes: Tipo, PARAMETER : : nombre = valor Ej: REAL, Parameter : : PI=3.141593, Omega= 7.28E-5

  17. Setencias de asignación: El signo = significa una asignación. La expresión a la derecha de una igualdad esta asignando ese valor a la que está a la izquierda. Ej: i = i + 1 → significa que al valor almacenado en la memoria con el nombre i se le suma 1. Cálculos aritméticos: Son: + → adición, - → sustracción, * → multiplicación, / → división, ** → potenciación Los cálculos: No pueden aparecer 2 operadores seguidos: K= 2* -2 → No K= 2* (-2) → Correcto Las operaciones deben se explicitas p= x(y + z) → No p = x * (y + z) → Correcto Los paréntesis se resuelven de adentro hacia afuera: q = 2**((8+2)/5) = 2**(10/5) = 2**2 = 4

  18. Aritmética Entera El resultado de una operación entre números enteros es un entero ! El resultado fraccionario de un cociente entre enteros es truncado Aritmética Real El resultado de una operación entre números reales es un real ! Tener en cuenta los errores de precisión

  19. ! Las operaciones entre reales y enteros se llaman mixtas y resultan confusas. Ej: 1+ 1/4 =1 1.+ 1/4 =1. 1+ 1./4=1.25 La operación entre un real y un entero da un real. El FORTRAN 90/95 tiene funciones para transformar los números enteros en reales y los reales en enteros.

  20. ! En la función exponencial usar siempre que sea posible números enteros. Nunca elevar un número negativo a una potencia real.

More Related