Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Presentacin de la unidad
Bienvenido(a) al curso de Fundamentos de programacin, en esta primera unidad estudiaremos qu son las computadoras y cmo pueden ayudarnos para resolver problemas. Lo primero que debes tener claro es que las computadoras no poseen inteligencia alguna, ya que por s solas no son capaces de resolver ningn problema, su importancia est en la capacidad de datos que pueden almacenar y manipular; de tal manera que, para lograr nuestro fin resolver problemas mediante la computadora es necesario desarrollar programas escritos en un lenguaje de programacin para que puedan ser ejecutados por una computadora.
Propsito de la unidad
Identificars los conceptos bsicos relacionados con la computadora y los lenguajes de programacin. Distinguirs los elementos de una computadora que intervienen en la ejecucin de un programa a travs del modelo de Von Neumann. Distinguirs los paradigmas de programacin y los lenguajes asociados a stos. Reconocers las fases que se siguen para solucionar un problema mediante la computadora.
Competencia especifica
Describir los elementos de la computadora y el ciclo de vida del software mediante el anlisis de un programa simple, con el fin de identificar los pasos que se realizan para construirlo y determinar qu elementos de la computadora intervienen en su ejecucin. 1.1 Que es una computadora? Antes de comenzar, te invitamos a observar el siguiente video en el que se hace una breve narracin sobre la historia de la computadora, con el fin de brindar un panorama general de sus orgenes y de la manera en que ha evolucionado con el paso del tiempo hasta llegar al modelo actual de funcionamiento: Tomando en consideracin la informacin presentada en el video, a continuacin estudiaremos los siguientes temas que nos ayudarn a comprender mejor qu es y cmo funciona una computadora:
El Modelo de Von Neumann Los pasos para realizar un programa Los principales paradigmas y lenguajes de programacin utilizados actualmente. Para fines de este curso entenderemos que una computadora es una mquina electrnica que recibe datos de entrada y los procesa de acuerdo al conjunto de instrucciones, llamado programa, para obtener nuevos datos que son el resultado del proceso, tal como se ilustra en la siguiente figura: Lo anterior nos lleva a clasificar los componentes de una computadora en dos clases: hardware y software. Los recursos de hardware Son todos aquellos elementos de la computadora que se pueden palpar, como por ejemplo: el monitor, el teclado, el disco duro, la memoria, entre otros. Los recursos de software Son aquellos elementos intangibles sin los cuales la computadora no funcionara, esto es, el soporte lgico: programas y datos, entre los cuales se encuentran los sistemas operativos, editores de texto, compiladores, bases de datos, videojuegos, entre otros. Como puedes darte cuenta, ambos elementos son necesarios para que una computadora funcione, ya que si los aislamos no pueden funcionar; por ejemplo, si tuviramos una computadora con todos los componentes de hardware ms avanzados que existen (procesador, tarjeta madre, monitor, teclado, etc.), pero sin Sistema Operativo instalado, de poco servira pues al prenderla, nicamente veramos una pantalla negra y, por consiguiente, no podramos interactuar con ella. Para comprender mejor lo que acabamos de decir, avanza al siguiente tema en el que conocers la forma en que se estructura y funciona una computadora.
dispositivos es que no son tan rpidos como la memoria RAM. Los discos duros, los discos pticos (CD o DVD), la memoria flash (USB) y las cintas magnticas, entre otras, son ejemplos de dispositivos de almacenamiento secundario. Dispositivos de entrada y salida Los dispositivos de entrada y salida (Input/Output) son responsables de la comunicacin con el usuario del sistema. Los dispositivos de entrada permiten introducir en la computadora datos e instrucciones, mismas que son transformadas en seales binarias de naturaleza elctrica para almacenarlas en la memoria. Por otro lado, los dispositivos de salida permiten enviar los resultados a los usuarios de las computadoras, transformando las seales elctricas binarias en informacin que stos puedan comprender. El teclado est considerado como el dispositivo de entrada estndar pero existen otros del mismo tipo, por ejemplo: el ratn, el escner, la lectora ptica, el micrfono o la tabla digital. A su vez, el monitor es el dispositivo de salida estndar; otros ejemplos de dispositivos de salida son: impresora, bocinas, plotter, etc.
Es as que todas las unidades de la computadora se comunican a travs del sistema de buses que son cables mediante los cuales se envan seales y dependiendo de la informacin que transmiten se clasifican en: El bus de direcciones transmite la direccin de memoria de la que se quiere leer o en la que se quiere escribir. El bus de control selecciona la operacin a realizar en una celda de memoria (lectura o escritura). El bus de datos transmite el contenido desde o hacia una celda de memoria seleccionada en el bus de direcciones segn la operacin elegida en el bus de control sea lectura o escritura. Ahora ya sabemos cmo est estructurada internamente la computadora, qu elementos la integran y cul es la funcin de cada uno de ellos; el siguiente paso es descubrir cmo colaboran para llevar a cabo la ejecucin de un programa, enseguida lo explicamos: Los datos de entrada que requiere un programa se introducen a la computadora, a travs de los dispositivos de entrada; posteriormente se almacenan en la memoria RAM, para que la CPU pueda procesarlos, conforme a las instrucciones del programa, hasta obtener el resultado deseado, mismo que enva al usuario por medio de los dispositivos de salida. Todas estas acciones son coordinadas por la unidad de control que enva las seales y datos a cada uno de los dispositivos de la computadora involucrados en la ejecucin de las instrucciones del programa a travs del sistema de buses. En la siguiente seccin se describe con mayor detalle este proceso.
Al perodo en el que se ejecuta una instruccin se le conoce como ciclo de instruccin o ciclo fetch.
Con el fin de ilustrar este procedimiento, analizaremos la ejecucin del siguiente programa escrito en un lenguaje de programacin ficticio. Programa 1: Calcula el rea de un rectngulo Ejemplo 1.1: El siguiente conjunto de instrucciones sirve para calcular el rea de un rectngulo. Imprimir Ingresa la base: Leer b Imprimir Ingresa la altura: Leer h area b*h Imprimir rea
Antes de definir paso a paso la ejecucin de este programa, describiremos la funcin de cada una de las instrucciones que lo integran. Instruccin Descripcin Imprime en el dispositivo de salida estndar los <Datos> Imprimir <Dato> indicados en la instruccin, que pueden ser un mensaje de texto o el valor de una variable. Lee por medio del teclado un dato, lo almacena en la variable Leer <X> <X> indicado y lo almacena en la memoria RAM. La flecha representa una asignacin, esta accin actualiza la <X> <Dato> direccin de memoria asignada a <X> con el valor <Dato>.
Cabe sealar que en los lenguajes de programacin, las direcciones de memoria se representan por medio de variables, para hacerlos ms legibles. De tal manera que <X> representa una variable y <Dato> puede ser un mensaje o cualquier valor. Ahora s, de acuerdo con la informacin anterior, describamos paso a paso las acciones que realiza la unidad de control junto con las otras unidades de la computadora involucradas en la ejecucin de cada una de las instrucciones del programa. Imprimir Ingresa la base: La unidad de control enva seales al monitor para que imprima el mensaje Ingresa base: Leer b La unidad de control coordina las acciones necesarias para que, por medio del teclado, el usuario introduzca un nmero y lo almacene en la memoria principal,