



Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Apuntes de Fundamentos de Programación sobre Conceptos básicos de programación, Periféricos, Conceptos y definiciones, Qué es un sistema operativo, Evolución y clasificación de lenguajes, Fases en la elaboración de un programa informático.
Tipo: Apuntes
1 / 7
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!




Tema 1: Conceptos básicos de programación
Un ordenador solo es capaz de ejecutar ordenes y de realizar operaciones tan básicas como sumar, restar, multiplicar y dividir valores numéricos, comparar valores numéricos o alfanuméricos, almacenar o recuperar la información.
Por tanto, su potencia y capacidad de calculo dependerá básicamente de su eficacia, fiabilidad, rapidez y precisión, así como de la memoria disponible (tanto principal como auxiliar (la principal es la RAM y la auxiliar los soportes de almacenamiento permanente)). Con la combinación de operaciones basicaza, un ordenador puede llegar a realizar operaciones o cálculos verdaderamente complejos, pero siempre existirá una estrecha dependencia de la maquina con el hombre, y sin la cual el ordenador es una herramienta carente de utilidad, pues el hombre es quien marca las pautas para su correcto funcionamiento a través de la lógica y el razonamiento.
En definitiva, un ordenador solo es capaz de aceptar datos de entrada, procesarlo y facilitar datos o resultados de salida.
Los datos son introducidos o recuperados de un ordenador a través de los denominados periféricos o dispositivos externos de entrada / salida, que son los elementos destinados a auxiliar a la CPU (Unidad Central de Proceso) y establece una estrecha relación entre dicha unidad y el mundo exterior.
Según la función que desempeñen los periféricos se pueden clasificar en:
Son aquellos capaces de suministrar o introducir datos y ordenes a un sistema informático, entre los más usuales destacan el teclado, el ratón, lectores de código de barra, escáner óptico, etc.
Son los encargados de sacar al exterior los resultados de proceso u operaciones realizadas por la CPU. Entre las más usuales destacan la pantalla con todas sus variantes, la impresora, el plotter.
Son aquellos capaces de realizar cualquiera de las dos operaciones anteriores indistintamente, entre ellos destacan las unidades de disco duro, unidades de CD−ROM, de DVD, Streamer, disqueteras.
Son aquellos encargados de establecer y facilitar el trasiego o intercambio de información entre dos o más
ordenadores y bien entre un ordenador y otro sistema físico.
Un claro ejemplo de este tipo de periféricos seria el MODEM, encargado de convertir señales digitales en señales analógicas y viceversa.
Por lo tanto, puede ser considerado como un conversor de señales gracias al cual podemos poner en comunicación dos ordenadores remotos poniendo como medio de transmisión la línea telefónica.
Datos: Son todos aquellos elementos considerados como unidades de tratamiento dentro de un sistema de proceso de datos. Los datos pueden ser básicamente de dos tipos, denominados datos de entrada que son aquellos pendientes de proceso o elaborar y datos de salida que son aquellos obtenidos tras el proceso de los datos de entrada. Al conjunto de los datos se le denomina información.
Programas: Son conjuntos de ordenes diseñados y creados a través del razonamiento lógico y almacenados en ficheros de texto respetando la sintaxis de un determinado lenguaje de programación. Estos conjuntos de ordenes se trasmiten al ordenador para la realización y ejecución de tareas concretas−
Sistema informático: Es un conjunto de elementos que permiten procesar información por medio de equipos informáticos y cuya finalidad es la de obtener nueva información a partir de la ya existente. Todo sistema informático queda dividido de forma global en cuatro capas o niveles que son:
♦ Hardware ♦ Sistema operativo ♦ Programas de aplicación Recursos humanos, que son aquellas personas encargadas del desarrollo, implantación, explotación y mantenimiento de un sistema informático.
Otros dos elementos fundamentales son los datos y los protocolos y procedimientos para el correcto uso y explotación del sistema.
SISTEMA INFORMATICO
Hardware: Se denomina así a la parte física de un sistema informático, por ejemplo, un disco duro, un monitor, una tarjeta gráfica, cables, etc.
Los principales elementos que constituyen el hardware son:
Unidad central de proceso ( UCP, CPU ), es el verdadero cerebro de la maquina, y la encargada de controlar, coordinar y realizar todas las operaciones de un sistema informático.
Los componentes básicos de una CPU son:
Unidad de control ( UC ): Es la parte capaz de detectar por medio de señales eléctricas el estado de cada uno de los elementos conectados al ordenador y gobernar las unidades de entrada, salida y entrada / salida, además de interpretar y ejecutar las instrucciones que constituyen los programas.
Unidad aritmético lógica ( U.A.L ): Es la parte del procesador encargada de realizar todas aquellas operaciones de tipo aritmético y tipo lógico.
Sistemas de multiproceso: Los sistemas operativos capaces de funcionar bajo ordenadores cuya arquitectura soporta 2 o más procesadores reciben el nombre de sistemas de multiproceso. A esta forma de trabajo se la suele llamar de proceso paralelo y asegura una mayor velocidad y seguridad.
En este tipo de sistemas cada vez que los usuarios se conectan al ordenador, abren una sesión, que es el periodo de tiempo transcurrido desde que el usuario se conecta hasta que se despide. Este hecho crea un proceso capaz de atender a ese usuario facilitándole la comunicación con el sistema operativo.
Sistemas de tiempo real: el tiempo de respuesta es el periodo de tiempo transcurrido desde que se realiza una petición o solicitud al sistema hasta que este responde. Si ese periodo de tiempo es muy breve (entre 1 msg. y 1 sg.) hablamos de tiempo real.
Estos sistemas también considerados multiprogramados e interactivos, caracterizados por su rápida reacción y por manejar información que debe ser continuamente actualizada según los cambios producidos en tiempo real, por lo que requieren grandes restricciones en el tiempo de respuesta. Son utilizados en grandes sistemas capaces de enlazar en tiempo real puntos muy distantes.
Sistemas monousuario: Son sistemas muy simples que solo permiten el acceso a un usuario cada vez, por lo que no se requieren ningún tipo de restricción o control en la gestión de los usuarios conectados. Este tipo de sistemas pueden basarse tanto en la monoprogramación como en la multiprogramación y suelen ser principalmente ordenadores personales.
Sistemas multiusuario: Son sistemas que se basan frecuentemente en sistemas multiprogramados permitiendo el acceso de varios usuarios a la vez. Estos tienen la posibilidad de ejecutar varios programas de forma concurrente, lo que permite rentabilizar al máximo el rendimiento del procesador.
Un lenguaje de programación es una notación o conjunto de símbolos y caracteres combinados entre sí de acuerdo con una sintaxis ya definida para posibilitar la transmisión de instrucciones a la CPU. Dichos símbolos y caracteres son traducidos a un conjunto de señales eléctricas representadas en código binario. La razón de convertir esos símbolos y caracteres a ceros y unos se debe a que el microprocesador solamente entiende ese lenguaje, que es el lenguaje binario o código maquina.
Son aquellos que por su característica se encuentran más próximos a la arquitectura de la maquina, englobándose en este tipo el lenguaje maquina y el lenguaje ensamblador.
Lenguaje ensamblador: Surge como sustituto del lenguaje maquina y esta basado en el uso de nemotécnicos (palabras abreviadas procedentes del inglés formadas por letras y a veces números). La
programación en lenguaje ensamblador precisa de un amplio conocimiento sobre la constitución, estructura, y funcionamiento interno de un ordenador, así como un hábil manejo de los códigos y sistemas de numeración, en especial el binario y el hexadecimal.
Los programas desarrollados en ensamblador se caracterizan por:
Los programas escritos en ensamblador no son transportables, es decir, un programa escrito para un microprocesador concreto no funcionará para un microprocesador diferente.
Son aquellos que por sus características se encuentran más próximos al usuario o programador y se consideran como tales lenguajes como por ejemplo Basic, Pascal, Cobol y C. Una de las características más importantes de estos lenguajes es que son independientes de la arquitectura del ordenador, lo que implica que los programas desarrollados en lenguajes de alto nivel pueden ser ejecutados sobre ordenadores con distinto procesador. Este hecho hace que el programador no necesite poseer amplios conocimientos sobre el funcionamiento interno del ordenador que esta programando. Por otro lado cabe destacar una mayor facilidad en el desarrollo, depuración y mantenimiento de los programas.
Un inconveniente es la necesidad de traducir los programas escritos en lenguaje de alto nivel a un lenguaje de programación tan primitivo como el lenguaje maquina para que pueda ser interpretado y ejecutado por la UCP, lo que significa disponer necesariamente de un traductor (Ensamblador, compilador o interprete).
El desarrollo de una aplicación o conjunto de programas para obtener una solución informática a un determinado problema se basa en un concepto denominado ciclo de vida, que establece una serie de etapas o fases que hay que seguir secuencialmente y de forma ordenada cuando se desea desarrollar un determinado producto de software. Estas fases son las siguientes: análisis, diseño, codificación o construcción, explotación y mantenimiento.
Análisis: En esta fase se establece cual es el producto que se va a desarrollar, siendo necesario especificar los procesos y estructuras de datos que se van a emplear para satisfacer la necesidad del usuario, por lo que debe existir una gran comunicación entre el usuario y el analista para conocer todas las necesidades y restricciones en el desarrollo de la aplicación.
Diseño: En esta fase se alcanza una solución optima, detallada y con la mayor precisión posible para el desarrollo de la aplicación, teniendo en cuenta los recursos físicos del sistema (tipo de ordenador, periféricos, comunicaciones, etc.). y los recursos lógicos (sistema operativo, programas de utilidad, compiladores, bases de datos, etc.).
Para la representación de los algoritmos diseñados, se pueden emplear ordinogramas o diagramas de flujo, notación seudocodificada, tablas de decisión.
Con la finalización de esta etapa se obtiene como documentación el llamado cuaderno de carga.
Las etapas del proceso de compilación son:
Edición: Consiste en la escritura del programa utilizando un lenguaje de programación precisamente seleccionado y su posterior grabación en un soporte de almacenamiento permanente. La edición del programa debe realizarse mediante un editor de textos que puede formar parte o no del compilador. En esta fase se obtiene el denominado programa fuente.
Compilación: En esta fase se traduce el programa fuente a su equivalente en código maquina, obteniendo en caso de no producirse ningún error el denominado programa o modulo objeto. En caso de producirse errores, el compilador los mostrará utilizando los mensajes correspondientes, lo cual nos permitirá corregir el programa fuente y proceder de nuevo a su compilación.
Linkado: Esta fase también recibe el nombre de montaje y consiste en unir o enlazar el programa objeto con determinadas rutinas internas del lenguaje. Si el método de compilación es modular se enlazarán los distintos módulos para obtener así el programa ejecutable.
Ejecución: Esta fase consiste en la llamada del programa ejecutable a través del sistema operativo. Inicialmente se debe comprobar el buen funcionamiento del programa mediante el uso de unos juegos de pruebas que especifican los resultados que se desean obtener en función de unos determinados datos de entrada.
Los principales errores en la ejecución de un programa son:
Datos de entrada incorrectos que puedan producir una parada del sistema, por ejemplo, un dividendo con valor 0 en una operación dará como resultado infinito y producirá el error.
♦ Bucles mal definidos que producen un funcionamiento continuo
Datos de salida o resultados incorrectos producidos por un mal desarrollo del programa o por la existencia de una cierta ambigüedad en las especificaciones del usuario.
(Periférico de entrada)
SALIDA DE DATOS
(Periférico de salida)
PROCESO DE DATOS