u4_a1_luisantoniojaimescuevas

Upload: luis-antonio-jaimes-cuevas

Post on 19-Feb-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/23/2019 U4_a1_LuisAntonioJaimesCuevas

    1/6

    INSTITUTO TECNOLOGICO SUPERIOR PUREPECHA

    INGENIERIA EN SISTEMAS COMPUTACIONALES

    ENSAYO

    PROFESOR:

    ING. OBED SALATIEL DIAZ MARTINEZ

    ALUMNO:

    LUIS ANTONIO JAIMES CUEVAS

    SEMESTRE:

    SEPTIMO

    Chern, Mich. Diciembre 2015.

  • 7/23/2019 U4_a1_LuisAntonioJaimesCuevas

    2/6

    REGISTROS:

    Qu son?

    Los registros son espacios fsicos dentro del microprocesador con capacidad de 4 bitshasta 64 bits dependiendo del microprocesador que se emplee.

    Quines lo utilizan?Antes de nada, para el desarrollo de esta parte hablaremos indistintamente de registrosde activacin o de marcos de pila. Esto se debe a que en la documentacin encontradasobre el manejo de los registros ebpy espse hace mencin a dicho concepto de marco depila. Puesto que el lenguaje permite recursividad, los registros de activacin seasignan dinmicamente.

    Qu asen?

    Los registros del procesador se emplean para controlar instrucciones en ejecucin,manejar direccionamiento de memoria y proporcionar capacidad aritmtica

    Los registros son direccionables por medio de una vieta, que es una direccin dememoria. Los bits, por conveniencia, se numeran de derecha a izquierda (15, 14,13. 3, 2,1,0)

    Tipos

    Registros de segmento

    Registros de apuntadores de instrucciones

    Registros apuntadores

    Registros de propsitos generales

    Registro ndice

    Registro de bandera.

    Cuales su aplicacin en la generacin de cdigos?

    1. usar el registro de y si est en un registro que no tiene otra variable, y adems y noest viva ni tiene uso posterior. Si no:

    2. usar un registro vaco si hay. Si no:

    3. usar un registro ocupado si op requiere que x est en un registro o si x tiene usoposterior. Actualizar el descriptor de registro. Si no:

    4. usar la posicin de memoria de x

  • 7/23/2019 U4_a1_LuisAntonioJaimesCuevas

    3/6

    LENGUAJE ENSAMBLADOR

    Qu es?

    El lenguaje Assembly (a veces mal llamado "Ensamblador" por su traduccin literal alespaol) es un tipo de lenguaje de bajo nivel utilizado para escribir programasinformticos, y constituye la representacin ms directa del cdigo mquina especficopara cada arquitectura de computadora.

    La comunicacin en lenguaje de mquina es particular de cada procesador que se usa, yprogramar en este lenguaje es muy difcil y tedioso, por lo que se empez a buscarmejores medios de comunicacin con sta. Los lenguajes ensambladores tienen ventajassobre los lenguajes de mquina.

    Este lenguaje fue usado ampliamente en el pasado para el desarrollo de software, peroactualmente slo se utiliza encontradas ocasiones, especialmente cuando se requiere lamanipulacin directa del hardware o se pretenden rendimientos inusuales de los equipos.

    Funcionalidad?

    Ahorran tiempo y requieren menos atencin a detalles. Se incurren en menos errores y losque se cometen son ms fciles de localizar. Adems, los programasen lenguajeensamblador son ms fciles de modificar que los programas en lenguaje de mquina.

    Lenguajes de alto nivel

    Lenguajes de tercera generacin (3GL)

    Estructuras de control, Variables de tipo, Recursividad, etc.

    Ej.: C, Pascal, C++, Java, etc

    Lenguajes orientados a problemas.

    Lenguajes de cuarta generacin (4GL)

    Operaciones bsicas

    Las operaciones bsicas en un lenguaje ensamblador son la suma la resta lamultiplicacin y la divisin y Necesitara un poco mas de informacin sobre la arquitecturay SO para el cual programas.

    Pero la idea bsica es:

    --definir que parmetros tendr la funcin

    --hacer el programa, propiamente dicho, en assembler

    Siguiendo la convencin de pasaje de parmetros, manejar registros y posiciones dememoria, devolviendo los resultados en donde deba (una posicin de memoria, el registroeax, etc.)

  • 7/23/2019 U4_a1_LuisAntonioJaimesCuevas

    4/6

    LENGUAJE MAQUINA

    Son los lenguajes de ms bajo nivel: secuencias binarias de ceros y unos. Se denominalenguaje mquina a la serie de datos que la parte fsica de la computadora o hardware, escapaz de interpretar. El lenguaje mquina fue el primero que empleo el hombre para laprogramacin de las primeras computadoras. Una instruccin en lenguaje mquina puederepresentarse de la siguiente forma: 011011001010010011110110. Esta secuencia es

    fcilmente ejecutada por la computadora, pero es de difcil interpretacin, siendo aun msdifcil la interpretacin de un programa (conjunto de instrucciones) escrito de esta forma.Esta dificultad hace que los errores sean frecuentes y la correccin de los mismoscostosa, cuando no imposible, al igual que la verificacin y modificacin de los programas.

    Operaciones bsicas

    Los lenguajes de computadora se utilizan para resolver problemas, y ha habido miles deaos de trabajo en matemticas para este fin. Los lenguajes de programacin estnespecificados por reglas para formar instrucciones correctas, organizndolas en mdulos,someterlas hacia un compilador, el cual traduce el cdigo en un lenguaje comprensiblepara una mquina en particular, y finalmente ejecutar el programa, es decir, someter laentrada hacia la computadora, la cual transforma en una salida de acuerdo con lasinstrucciones en el programa.

    Cuando usamos una computadora, estamos intentados resolver un problema. Puede serun problema de negocios, que involucra ganancias y prdidas; un problema cientfico queemplea modelos de comportamiento fsico; una investigacin estadstica que evala laposibilidad de que ocurra algn evento; etc.

    En general, una computadora, slo es capaz de realizar tres operaciones bsicas:

    Sumar, restar, multiplicar y dividir dos valores numricos.

    Comparar dos valores numricos o alfabticos (comprobar sin son iguales, determinarsi el primero es mayor que el segundo, si son diferentes, etc.).

    Almacenar o recuperar informacin.

    Con estas sencillas operaciones utilizadas y combinadas de manera adecuada, mediantelo que se denomina Programa de computadora, se pueden llegar a realizar tareasincreblemente complejas que aporten la solucin a un determinado problema, ya seaadministrativo, cientfico, o de cualquier otro tipo.

    Dentro del campo de la computacin, un PROBLEMA consiste en la necesidad detransformar un grupo de datos iniciales (entrada) en un grupo diferente de datos finales(Resultados).

    De este modo, una computadora podr resolver un problema si alguien desarrolla unprograma que contenga las instrucciones adecuadas que permitan transformar los datos,

    esta actividad la realizan los Programadores (seres humanos) y se ledenomina PROGRAMACIN.

  • 7/23/2019 U4_a1_LuisAntonioJaimesCuevas

    5/6

    Correspondencia con el lenguaje ensamblador

    Son lenguajes totalmente dependientes de la mquina, es decir que el programa que serealiza con este tipo de lenguajes no se pueden migrar o utilizar en otras maquinas.

    Al estar prcticamente diseados a medida del hardware, aprovechan al mximo lascaractersticas del mismo.

    Dentro de este grupo se encuentran:

    El lenguaje maquina: este lenguaje ordena a la mquina las operaciones fundamentalespara su funcionamiento. Consiste en la combinacin de 0's y 1's para formar las ordenesentendibles por el hardware de la maquina.Este lenguaje es mucho ms rpido que los lenguajes de alto nivel.La desventaja es que son bastantes difciles de manejar y usar, adems de tener cdigosfuente enormes donde encontrar un fallo es casi imposible.

    El lenguaje ensamblador es un derivado del lenguaje maquina y est formado porabreviaturas de letras y nmeros llamadas mnemotcnicos. Con la aparicin de estelenguaje se crearon los programas traductores para poder pasar los programas escritosen lenguaje ensamblador a lenguaje mquina. Como ventaja con respecto al cdigomquina es que los cdigos fuentes eran ms cortos y los programas creados ocupaban

    menos memoria. Las desventajas de este lenguaje siguen siendo prcticamente lasmismas que las del lenguaje ensamblador, aadiendo la dificultad de tener que aprenderun nuevo lenguaje difcil de probar y mantener.

    ADMINISTRADOR DE MEMORIA

    La memoria principal puede ser considerada como un arreglo lineal de localidades dealmacenamiento de un byte de tamao. Cada localidad de almacenamiento tieneasignada una direccin que la identifica.

    POLITICAS Y FILOSOFIA DE LA ADMINISTRACION DE LA MEMORIA.La memoria principal es el lugar donde el CPU lee las instrucciones a ejecutar, as comoalgunos datos a emplear. Una de las funciones bsicas que debe implementar un SO esla administracin de la Memoria para tener un control sobre los lugares donde estnalmacenados los procesos y datos que actualmente se estn utilizando. Se distinguen lossiguientes propsitos del sistema de administracin de memoria:

    Proteccin.Si varios programas comparten la memoria principal, se debera asegurar que elprograma no sea capaz de cambiar las ubicaciones no pertenecientica l. Aunque unaaccin de escritura puede tener efectos ms graves que una de lectura, esta ltimatampoco debera estar permitida, para proporcionar algo de privacidad al programa.

    Compartimiento.Este objetivo parece contradecir al anterior, sin embargo a veces es necesario para losusuarios poder compartir y actualizar informacin (por ejemplo, en una base de datos) y,si se organiza la tarea de entrada a la misma, se puede evitar el tener varias copias de larutina.

  • 7/23/2019 U4_a1_LuisAntonioJaimesCuevas

    6/6

    Reubicacin.La tcnica de multiprogramacin requiere que varios programas ocupen la memoria almismo tiempo. Sin embargo no se sabe con anticipacin donde ser cargado cadaprograma por lo que no es prctico usar direccionamiento absoluto de memoria.

    Organizacin fsica.Debido al costo de una memoria principal rpida, ste se usa en conjunto con unamemoria secundaria mucho ms lenta (y por consiguiente, barata) a fines de extender sucapacidad.

    Organizacin lgica.Aunque la mayor parte de las memorias son organizadas linealmente con un

    direccionamiento secuencial, esto difcilmente concuerde con el camino seguido por elprograma, debido al uso de procedimientos, funciones, subrutinas, arreglos, etc.

    MECANISMOS DE ASIGNACION.

    Un mecanismo de asignacin determina la cantidad de bloques (particiones) que sernadministrados en la memoria.

    1. ASIGNACIN DE UNA PARTICIN. En la memoria se considera la existencia de unasola particin, esto es, se tiene la capacidad de ejecutar un proceso. La particin es todala memoria, cuya administracin corre por cuenta del usuario, o sea, no hay un sistemaoperativo.

    2. ASIGNACIN DE DOS PARTICIONES. La memoria se divide en 2 bloques. En unaparticin se carga el Sistema Operativo y en la otra el programa del usuario. Es elconcepto de Sistema Operativo Mono usuario.

    3. ASIGNACIN DE MULTIPLES PARTICIONES. La memoria es dividida en variasparticiones una para el Sistema Operativo y las dems para los procesos de usuarios uotras funciones especiales del Sistema Operativo.