ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

TRABAJO COMPUTACIONAL Nº 2 LENGUAJES DE PROGRAMACIÓN


Enviado por   •  22 de Julio de 2017  •  Trabajo  •  3.211 Palabras (13 Páginas)  •  163 Visitas

Página 1 de 13

UNIVERSIDAD TECNOLÓGICA METROPOLITANA

                       FACULTAD DE INGENIERÍA                                                                         Profesores:                   Luis Herrera Henríquez

    DEPARTAMENTO DE INFORMÁTICA Y COMPUTACIÓN                                                                                    Héctor Pincheira Conejeros

TRABAJO COMPUTACIONAL Nº 2

LENGUAJES DE PROGRAMACIÓN

SEGUNDO SEMESTRE DE 2016

Asignatura

Lenguaje de Programación

Profesor

Héctor Pincheira Conejeros

Integrantes

Fernanda Vera 19.702.940-4

Shu-yi Wong 19.557.329-8

Fecha de Entrega

16-Enero-2017

Índice

 

  • Índice.                                                                                        Pag   1
  • Introducción.                                                                                Pag   2
  • Marco Teórico.                                                                        Pag   3
  • Análisis de los resultados de la ejecución.                                                 Pag 11
  • Conclusiones.                                                                                Pag 19
  • Referencias.                                                                                Pag 20

Introducción

Durante el semestre se ha ido aprendido cada vez más acerca de la memoria interna utilizada por los programas que utilizamos en el dia a dia, cada uno de estos necesita una cierta cantidad de memoria del ordenador para poder ser ejecutado exitosamente.

En esta oportunidad, nos hemos enfocado en trabajar con funciones recursivas matemáticas, resolviendo diferente tipos de problemas de este ámbito, como por ejemplo, la cantidad de ceros que contiene una función en representación binaria, la multiplicacion y division por potencias de dos a través de la función computacional Shift, la obtención del coeficiente binomial de cierto número entero, el enésimo número de una sucesión Fibonacci, y otros más. De esa manera, aprender de este sistema, como trabajar con él, entre otros objetivos.

Marco Teorico

Registros de Activación.

El Registro de Activación o Stack Frame se suele usar para almacenar tanto parámetros como variables de ámbito local a una función. Esto es interesante porque evita colisiones de nombres de variable, entre otras cosas, así como mayor aislamiento del código.

Cuando un programa se ejecuta sobre un sistema operativo existe un proceso previo llamado cargador que suministra al programa un bloque contiguo de memoria sobre el cual ha de ejecutarse. El programa resultante de la compilación debe organizarse de forma que haga uso de este bloque. Para ello el compilador incorpora al programa objeto el código necesario.

Las técnicas de gestión de la memoria durante la ejecución del programa difieren de unos lenguajes a otros, e incluso de unos compiladores a otros. En este capítulo se estudia la gestión de la memoria que se utiliza en lenguajes procedurales como FORTRAN, PASCAL, C, MODULA-2, etc. La gestión de la memoria en otro tipo de lenguajes (funcionales, lógicos, ...) es en general diferente de la organización que aquí se plantea. Para lenguajes imperativos, los compiladores generan programas que tendrán en tiempo de ejecución una organización de la memoria

Es la zona donde se almacenan las instrucciones del programa ejecutable en código máquina, y también el código correspondiente a los procedimientos y funciones que utiliza. Su tamaño puede fijarse en tiempo de compilación. Algunos compiladores fragmentan el código del programa objeto usando “overlays”. Estos “overlays” son secciones de código objeto que se almacenan en ficheros independientes y que se cargan en la memoria central (RAM) dinámicamente, es decir, durante la ejecución del programa. Los overlays de un programa se agrupan en zonas y módulos, cada uno de los cuales contiene un conjunto de funciones o procedimientos.

Durante el tiempo de ejecución sólo uno de los módulos de cada uno de los overlays puede estar almacenado en memoria. El compilador reserva en la sección de código una zona contigua de memoria para cada overlay. El tamaño de esta zona debe ser igual al del mayor módulo que se cargue sobre ella. Es función del programador determinar cuántas zonas de overlay se definen, qué funciones y procedimientos se encapsulan en cada módulo, y cómo se organizan estos módulos para ocupar cada uno de los overlays. Una restricción a tener en cuenta es que las funciones de un módulo no deben hacer referencia a funciones de otro módulo del mismo overlay, ya que nunca estarán simultáneamente en memoria.

Números Binarios.

El sistema binario, llamado también sistema diádico en ciencias de la computación, es un sistema de numeración en el que los números se representan utilizando solamente dos cifras: cero y uno (0 y 1). Es uno de los sistemas que se utilizan en las computadoras, debido a que estas trabajan internamente con dos niveles de voltaje, por lo cual su sistema de numeración natural es el sistema binario (encendido 1, apagado 0).

Los números binarios se cuentan con números que crecen cada vez al doble de sí mismos, es decir, que comienza con 1, sigue con 2, aumentado a 4, luego a 8 y así por consiguiente hacia la izquierda, al igual que el sistema decimal, se pueden colocar números a la derecha de una coma para representar valores menores a 1.En el siguiente diagrama se explicará la forma en que se utilizan la posición de los mismos.

...

Descargar como (para miembros actualizados) txt (18 Kb) pdf (534 Kb) docx (622 Kb)
Leer 12 páginas más »
Disponible sólo en Clubensayos.com