Vous êtes sur la page 1sur 9

Elementos de Programacin (1024) UNIDAD 1

Universidad Nacional de La Matanza


Departamento de Ingeniera e Investigacin Tecnolgica AO 2013

Introduccin
En las ltimas dcadas hemos vivido grandes cambios, sociales, polticos y tecnolgicos.
Estamos sometidos cotidianamente, en el trabajo, en el hogar, en el barrio, a recibir una
gran cantidad y volumen de datos. Adems, los cambios estructurales en las
Organizaciones, causados por los requerimientos de una globalizacin impuesta por el
mundo moderno. Hacen que tengamos la necesidad de contar con informacin, en forma
rpida y veraz, que nos permitan tomar decisiones, precisas y oportunas.
El progreso tecnolgico ms grande y ms amplio, despus de la rueda ha sido el
computador. Que en sus comienzos slo eran de aplicacin cientfica y militar, para luego
instalarse en mbito comercial y personal.
Sin ninguna duda los prximos aos estarn muy ligados con estas novedades, que
nos permitirn mejorar nuestra calidad de vida.

1 - El papel de la computadora en la actualidad

La tecnologa de avanzada en la estructura de los computadores dio por resultado el
desarrollo de sistemas de procesamiento de datos muy poco costosos pero sumamente
complejos. Tales progresos mejoraron las aplicaciones clsicas y abrieron la puerta al
mercado de las empresas pequeas y de los computadores personales. El mini y el
microcomputador brindan a los usuarios chicos, la posibilidad de utilizar el extraordinario
poder del computador por un costo sustancialmente inferior al de los beneficios
potenciales. Sera injusto no nombrar que junto al avance del computador, contamos con la
tecnologa de la comunicacin, que en la actualidad van de la mano y juntas permiten tener
resultados incapaces de imaginar hace unos aos atrs. Por ejemplo realizar una video
conferencia, simplemente conectndose en el mismo horario personas en distintos lugares
del planeta, tan slo con el recurso de Internet, un computador equipado y el software
necesario.
Modelo de Von Neumann
Esquema de Von Neumann que an es la base de la arquitectura de las computadoras de
nuestra generacin.





C
P
U
CPU. Unidad Central de Proceso compuesta por:
UC: Unidad de Control; se encarga del trfico de datos e instrucciones dentro del
computador, controla todos los dispositivos de E/S, coordina la entrada y salida de datos e
informacin de las diferentes memorias(auxiliar, ROM, RAM). Determina las direcciones

MEMORIA PRINCIPAL
UC ALU
ACUMULADOR
DISP.
I / O
Elementos de Programacin (1024) UNIDAD 1
Universidad Nacional de La Matanza
Departamento de Ingeniera e Investigacin Tecnolgica AO 2013
de las operaciones aritmticas y lgicas, selecciona, interpreta y manda a ejecutar las
instrucciones de los programas.
UAL:Unidad aritmtica Lgica: es la unidad que se encarga de ejecutar todos los
clculos matemticos (+.-,*,**,/) y todas las comparaciones lgicas.

Memoria: Un microcomputador posee bsicamente dos tipos de memoria: memoria
principal y memoria auxiliar.

Memoria Principal: Consta de dos reas de memorias: la que slo se permite
leer(ROM:read only memory), y la memoria que puede leerse, borrarse y actualizarse
(RAM:Randon Access memory).

Memoria Auxiliar: La capacidad de almacenamiento en la memoria principal es
limitada, situacin diferente para la memoria auxiliar que es ilimitada, como discos,
unidades de cinta, cd, dvd, pendrive, etc.

Acumulador : Registro donde se almacena en forma transitoria, los resultados o
datos intermedios de una operacin.

Dispositivos de entrada salida: Existen dispositivos de entrada salida de toda
ndole: pantallas, impresoras, unidades de disco, unidades de cinta, etc, Un computador
debe tener al menos un dispositivo de entrada y otro de salida o uno con las dos funciones.


2 - Introduccin a las computadoras

Las computadoras de hoy en da se presentan en una amplia variedad de formas,
tamaos y precios. Las grandes computadoras de propsito general se utilizan en muchos
negocios, universidades, hospitales y agencias gubernamentales para desarrollar
sofisticados clculos cientficos y financieros. Se conoce a estos grandes computadores o
grandes sistemas como mainframes, que necesitan de equipamiento y mobiliario especial,
en cuanto a espacio, electricidad, humedad, etc. Otras computadoras ms chicas en tamao,
como las computadoras personales que con la adaptacin en redes, permiten lograr recursos
importantes y a muy menores costos.
A comienzo de los cincuenta se dispone de grandes sistemas, aunque muy poca
gente saba cmo utilizarlos, lo hacan generalmente cientficos, ingenieros y analistas
financieros.
Durante los sesenta fue cada vez ms frecuente que aprendieran a programar
grandes sistemas los estudiantes, en las universidades, esto produjo la aparicin de jvenes
profesionales provocando la desaparicin del temor y recelo existentes hasta el momento,
con la utilizacin de los grandes equipos.
A finales de los sesenta y comienzos de los setenta se desarrollaron mini
computadoras, ms pequeas y menos caras, lo que permiti el acceso a las mismas de
comerciantes ms pequeos y en los hogares. Hasta llegar a nuestra poca donde podramos
Elementos de Programacin (1024) UNIDAD 1
Universidad Nacional de La Matanza
Departamento de Ingeniera e Investigacin Tecnolgica AO 2013
decir que es una herramienta imprescindible para cualquier profesional y comerciante para
que pueda realizar sus actividades con eficiencia.
Caractersticas generales

Todas las computadoras digitales, independientemente de su tamao, son
bsicamente dispositivos electrnicas que pueden transmitir, almacenar y manipular
informacin (datos). Una computadora puede procesar distintos tipos de datos. Esto incluye
datos numricos, alfanumricos (nombre, direcciones, etc.) datos grficos (mapas, dibujos,
fotografas, etc.) y sonido (msica, lectura de textos, etc.. Desde del punto de vista del
programador recin iniciado, los dos tipos de datos ms familiares son los nmeros y los
caracteres, involucrando frecuentemente las aplicaciones en negocios el tratamiento de
estos tipos de datos.
Para que la computadora procese un conjunto particular de datos es necesario darle
un conjunto apropiado de instrucciones llamado programa. Estas instrucciones se
introducen en la computadora y se almacenan en una parte de la memoria de la mquina.
Un programa almacenado se puede ejecutar en cualquier momento. La ejecucin de
un programa supone lo siguiente:

1. Un conjunto de informacin, los datos de entrada, se introduce en la computadora
(desde un teclado, un disquete, un C:D., un disco duro, etc.) y se almacena en una
porcin de memoria de sta.
2. Los datos de entrada se procesarn para producir ciertos resultados deseados,
que son los datos de salida.
3. Los datos de salida, y probablemente algunos de los datos de entrada, se
imprimirn en papel o se presentarn en un monitor.
Este procedimiento de tres pasos se puede repetir tantas veces como se desee. En
cualquier caso, se debe tener presente que estos pasos, especialmente el 2 y el 3, pueden ser
largos y complicados.

Ejemplo : Una computadora ha sido programada para calcular el rea de un crculo
utilizando la frmula: rea = PI r
2
, dando el valor numrico del radio como dato de entrada,
es necesario dar los siguientes pasos para efectuar el clculo:
1. Leer el valor numrico del radio del crculo.
2. Calcular el valor del rea utilizando la anterior frmula. Este valor se almacenar
entre los datos de entrada en la memoria de la computadora.
3. Imprimir (presentar en el terminal) los valores del radio y el rea correspondiente.
4. Parar.

Cada uno de estos pasos requiere de una instruccin o ms en un programa.
Lo anteriormente dicho ilustra dos caractersticas importantes de una computadora
digital: memoria y capacidad de ser programada. Otras caractersticas importantes son su
velocidad y fiabilidad.
Algoritmos

Elementos de Programacin (1024) UNIDAD 1
Universidad Nacional de La Matanza
Departamento de Ingeniera e Investigacin Tecnolgica AO 2013
Un algoritmo es un conjunto de pasos, instrucciones o acciones que se deben seguir
a realizar ordenadamente para llegar a un fin determinado, (solucin de un problema,
obtencin de una respuesta intermedia o realizacin de una tarea) de cualquier problema de
un mismo tipo.

3 Almacenamiento de Informacin

Variable:
Una variable es un espacio de memoria reservado para almacenar un valor que
corresponde a un tipo de dato soportado por el lenguaje de programacin. Una variable es
representada y usada a travs de una etiqueta (un nombre) que le asigna un programador o
que ya viene predefinida.
Por ejemplo: definimos una variable con el nombre NUM, en la cual se
almacena el nmero 8, NUM es la etiqueta que le asigna el
Programador y ocho es su contenido.
Lo que carguemos en NUM puede ser cualquier nmero, 1, 2 , 3, 0, 12, 33,
etc.(variable).
Una variable, por lo general, como su nombre lo indica, puede variar su valor
durante la ejecucin del programa. Dependiendo del lenguaje de programacin usado,
tambin puede cambiar el tipo de dato que almacena.
Ejemplo:
PAGO tiene un valor asociado en determinado momento de 256. El nombre de la
variable es PAGO, y el valor asignado a dicho nombre de variable es 256. Como su nombre
lo indica (variable) puede tomar a no distintos valores en el transcurso del algoritmo, pero
en un momento dado, solo puede tener o representar uno y solamente u n valor.

PAGO DESCU TASA INTE PORCE nombre
[___256___] [___34.8___] [___400___] [___.08___] [___48___] valor

Los nombres de variables deben ser nemotcnicos, es decir, que con solo leer el
nombre de la variable se pueda entender o determinar con facilidad lo que ella significa o
contiene. En el ejemplo anterior la variable con el nombre DESCU almacena el descuento,
se ve a simple vista, pero si a esta variable se le hubiese dado el nombre X o DS, estos
nombres pueden significar muchas cosas o, tal vez, no significar absolutamente nada.

Constante:
Constante son todos aquellos valores que no cambian en el transcurso de un
algoritmo y son introducidos en el momento de utilizarse.

Variables de tipo contador y acumulador

Significado de una variable contador
El trmino Contador est asociado con la actividad de contar. Cuando en el
enunciado de un problema solicitan contar algo, se dice que se necesita una variable
Contador. Siempre que se va a contar se empieza desde 0 esta es una de las razones por
Elementos de Programacin (1024) UNIDAD 1
Universidad Nacional de La Matanza
Departamento de Ingeniera e Investigacin Tecnolgica AO 2013
las cuales las variables Contador se inicializan generalmente en 0 al principio del
algoritmo.

Significado de una variable Acumulador
El trmino de Acumulador proviene de acumular (sumar cantidades).
En el desarrollo de un algoritmo muchas veces se tienen que obtener sumas totales de
cantidades (valores) que estn asociadas a una variable, para ello se utiliza una variable
acumulador que se debe inicializar en 0 al principio del algoritmo.

Tipos de Datos:
Los tipos de datos definen la manera de almacenamiento disponible para representar
informacin dentro del computador. El tipo de dato es indispensable determinarlo, para
saber qu tipo de declaracin de variable. Por ejemplo, si reconocemos que tenemos que
almacenar solo nmeros enteros y de un rango pequeo, debemos definir una variable de
tipo enteros. Si almacenamos valores con decimales debemos definir tipo flotante. Si
almacenamos letras definimos de carcter, etc.

Memoria principal
Cada fragmento de informacin almacenado en la memoria de la computadora es
codificado como una combinacin de ceros y unos. Estos ceros y unos se llaman bits
(dgitos binarios). Un dispositivo electrnico representa cada BIT, el cual estar de alguna
forma apagado (cero) o encendido (uno).
Las computadoras pequeas tienen la memoria organizada en grupos de 8 bit,
denominados bytes como se ve en el dibujo. Hay que advertir que cada bit esta numerado,
comenzando por el 0 ms a la derecha y terminando en 7 el bit ms a la izquierda.
Normalmente, un carcter (una letra, un dgito, un carcter especial) ocupara un byte de
memoria.


7 6 5 4 3 2 1 0 bit N


byte


Las computadoras de mayor tamao poseen memoria de 16, 32 y 64 bit, que les
permiten trabajar a mayor velocidad. El tamao de la memoria principal hoy se mide en
Megabytes.
4 -Aprender a programar
Una manera de utilizar los ordenadores en la educacin, es el de estudiar el
ordenador y aprender parcialmente a programar. A pesar de que aprender a programar no es
esencial para todos los estudiantes, hoy en da es uno de los usos ms comunes de los
ordenadores y mucha gente aprende a programar sin recurrir a cursos oficiales. Todos
estos cursos y los medios no oficiales de aprendizaje introducen a los estudiantes en el
Elementos de Programacin (1024) UNIDAD 1
Universidad Nacional de La Matanza
Departamento de Ingeniera e Investigacin Tecnolgica AO 2013
lenguaje o lenguajes de programacin de ordenadores. En muchos casos los alumnos
adquieren una serie de malos hbitos que posteriormente resultan extremadamente difciles
de corregir. Los primeros hbitos de programacin, adquiridos durante el estudio de uno de
los primeros lenguajes, pueden corregirse, pero si estn muy arraigados resulta una labor
muy difcil.
Las Universidades y los Organismos que se encargan de estudiar las demandas y
requerimientos de la sociedad, hacen notar, que surge de sus estudios un marcado
crecimiento en el mercado laboral de los programadores y tcnicos en el rea de
informtica. En el orden nacional como en el internacional, es conocida por todos los que
trabajamos en el medio, ya que es habitual el requerimiento de personal idneo en el tema,
ofreciendo remuneraciones interesantes. Por lo tanto es necesario que se ensee a
programar pero mas importante es que el alumno llegue ha advertir que el esfuerzo que
haga para aprender, volver de muchas maneras, y en formas positivas.
Qu es programar?

El problema que se establece al escribir un programa es bsicamente el de la
comunicacin entre un ser humano y un ordenador. Probablemente el ser humano sabe
cmo encarar el problema, o al menos sabe cmo resolver algunos problemas ms afines,
pero si el ordenador ha de ayudar a encontrar la solucin de este problema, los humanos
deben transmitirle su propsito. Los lenguajes humanos no son apropiados para la
comunicacin con los ordenadores, principalmente porque acarrean una notable serie de
ambigedades. De persona a persona la comunicacin puede tolerar esta ambigedad
debido a acuerdos tcitos y a que la comunicacin no verbal est tambin presente. Pero en
la comunicacin con una mquina todo se lleva a cabo de forma literal, de modo que
necesitamos ser muy precisos y especficos en describir la labor que se tenga que realizar,
De ah que la gente haya elaborado lenguajes especializados, denominados lenguajes de
programacin, para la comunicacin entre la persona y la mquina.
Programar es la actividad de comunicar al ordenador lo que se tiene que hacer (de forma
no oral, por ahora). Cualquiera que desee que el ordenador haga algunas cosas, deber
acoplarse a este tipo de comunicacin persona-ordenador utilizando un lenguaje de
ordenador concreto. Una manera de apreciar lo que es una programa es considerarlo como
si fuera un plan detallado para transformar informacin, aceptando informacin y
produciendo una nueva informacin. A las reglas de transformacin se las denomina
algoritmos.
5 - Lenguajes de programacin
Necesitamos un sistema para decir al ordenador lo que queremos que haga. La base para
la mayora de las descripciones para que el ordenador lleve a cabo una actividad es un
lenguaje de programacin. Se trata de un lenguaje especial que no incluye ambigedades.
Estos lenguajes deben tener descripciones precisas de las tareas que se deben realizar.
Un aspecto importante de la evolucin de los ordenadores es el gran nmero de
lenguajes distintos, algunos destinados a propsitos especiales, que han ido surgiendo. Esta
proliferacin de lenguajes empez con los primeros orgenes de los ordenadores y contina
en la actualidad. Para el principiante, parece extrao que debamos disponer de tantos
lenguajes. Se estn desarrollando cientos, quizs incluso miles de lenguajes. No hay una
Elementos de Programacin (1024) UNIDAD 1
Universidad Nacional de La Matanza
Departamento de Ingeniera e Investigacin Tecnolgica AO 2013
sola lista de lenguajes que pueda considerarse completa. Muchos no han sido vistos ms
que por su propio creador. No est del todo claro lo que deberamos denominar lenguaje.
Por eso el trmino dialecto es aceptable. Un dialecto es una ligera variante de una lengua
concreta, y normalmente no se le considera un idioma separado. La mayora de los
lenguajes para ordenador tienen dialectos; dos o ms realizaciones diferentes o versiones de
un lenguaje, quizs usados en diferentes ordenadores, que puede que no sean idnticos. Un
programa que funciona sin problemas en un ordenador es posible que no funcione en otro a
pesar de que se intente utilizar el mismo lenguaje; o incluso peor, un programa puede
producir resultados distintos en dos ordenadores.
Para evitar este problema, los expertos en lenguajes de ordenadores tratan de mantener
varias versiones de un lenguaje dado lo ms parecidas posibles. El proceso de paralizacin
de los dialectos de un lenguaje se denomina estandarizacin. Los diseadores de lenguajes
y los usuarios piden una serie de estndares para el lenguaje, e inquieren si el nombre del
lenguaje ha sido registrado legalmente, de modo que cada versin observe dichos
estndares.
No siempre es fcil determinar si la realizacin de un lenguaje en un ordenador
concuerda con los estndares. Quiz la mejor manera de determinar esto es desarrollando
una amplia serie de programas en dicho lenguaje, utilizando todas las caractersticas del
mismo, y una especificacin del funcionamiento de estos programas.
No todos lo lenguajes de programacin se han elaborado para un mismo propsito.
Algunos lenguajes son generales, mientras que otros han sido creados para usos
especficos. Muchos de los primeros lenguajes, desde el FORTRAN en adelante,
enfatizaron los clculos para otros propsitos especiales; sin embargo, la nocin del
lenguaje para un propsito general es an muy importante. La mayora de los programas
estn hechos en estos lenguajes.
La historia de los lenguajes es relativamente sencilla. Los primeros lenguajes para
ordenador eran muy parecidos a los de la propia mquina. A menudo eran una simple
transcripcin del cdigo que la mquina saba cmo interpretar, por eso, con frecuencia se
les denominaba lenguaje mquina o algunas veces cdigo natural. Hoy en da los seres
humanos casi nunca utilizan este lenguaje. Todos los ordenadores funcionan bajo el
principio de los traductores de lenguaje. Esto es: los ordenadores tienen un programa
bastante elaborado que traduce o interpreta lenguajes ms semejantes al de los humanos en
uno ms adecuado para la mquina, o cdigo nativo. El programa que realiza esta
traduccin se le denomina normalmente compilador o intrprete.
El cdigo natural difiere mucho de un ordenador a otro, por eso un intento de los
lenguajes de ms alto nivel es facilitar el traslado de programas de una mquina a otra.
Al igual que un lenguaje natural, un lenguaje de programacin tiene una gramtica,
una serie de reglas sintcticas que especifican las expresiones disponibles que deben ser
rigurosamente observadas. Los detalles gramaticales generalmente diferirn de un lenguaje
a otro, incluso en los que aparentemente tienen construcciones similares. La mayora de los
lenguajes incluyen palabras en ingls quiz porque la mayora de los primeros lenguajes en
programacin se desarrollaron en pases de habla inglesa. Es por eso que en un lenguaje
como el C/C++ encontramos que todas las palabras reservadas, nombre de instrucciones,
funciones, etc., son en ingls. Un lector puede ser capaz de comprender lo que est
ocurriendo en un programa simplemente si entiende ingls.
Un programa para ordenador es bsicamente una coleccin secuencial de sentencias
siguiendo cada una de ellas unas reglas gramticas del lenguaje. Cada sentencia contiene
Elementos de Programacin (1024) UNIDAD 1
Universidad Nacional de La Matanza
Departamento de Ingeniera e Investigacin Tecnolgica AO 2013
informacin para el ordenador. Usted puede considerar estas sentencias declarativas como
si fueran absorbidas por el ordenador una a una en un orden secuencial; entonces el
ordenador ejecuta cada sentencia, o hace lo que la sentencia le pide que haga.

Sentencia 1 (primera en ejecutarse)
Sentencia 2 (segunda en ejecutarse)
- - - - - - - - - - - - - - -
Sentencia n (ensima en ejecutarse)

Normalmente las sentencias en un programa se ejecutan en secuencias.
En programacin siempre se recurre a algn programa auxiliar de soporte, consistente en
programas para ayudar al programador. Un componente de estos programas de soporte es
un editor, que permite una fcil entrada y modificacin del programa. Un editor es un
procesador de textos especializado. As, si aparece un error en una lnea a causa, por
ejemplo, de una mecanografa incorrecta, un buen editor le permitir fcilmente hacer el
cambio preciso sin necesidad de volver a mecanografiar la lnea entera. La mayora de los
editores no tienen ningn conocimiento del lenguaje de programacin que se est
utilizando, pero unos pocos de los ms recientes poseen incluso inteligencia incorporada.
El editor es slo un aspecto de un programa auxiliar de soporte para programar, una
serie de prestaciones o de programas para facilitar el trabajo de programar. Un programa
para ordenador es denominado tambin como un software. Por ejemplo, podemos recurrir
a unos programas especiales para localizar errores en los mismos, denominados debugging
(detector y depurador de errores).
Los programas auxiliares de soporte para programar se proporcionan junto con el
ordenador. Es parte del sistema software (el software fundamental suministrado con el
ordenador), pero no los programas de aplicaciones ( los programas creados por los
usuarios).
6 - Compiladores e intrpretes
El programa en el lenguaje en que escribimos las instrucciones se llama programa
fuente, mientras que aquel en el lenguaje en que la mquina las interpreta se llama
programa objeto. El proceso de transformacin del programa fuente al objeto se denomina
compilacin y es realizado por la mquina mediante la ejecucin del programa compilador.
En este proceso el programa que ejecuta en la CPU es el compilador, la entrada es el
programa fuente y la salida el programa en lenguaje objeto. Los compiladores como
primera parte del proceso validan la correccin interna del programa fuente ( el compilador
no puede validar errores en cuanto a la funcionalidad del programa, por ejemplo si en lugar
de sumar, se indica que reste). Esto es, validan que el programa sea consistente en si
mismo, que se respete la sintaxis propia del lenguaje de programacin.







Programa
Fuente

Leer archivo
Sumar

Programa
Objeto

010010000100001100
01110111101111000

COMPILACION
Elementos de Programacin (1024) UNIDAD 1
Universidad Nacional de La Matanza
Departamento de Ingeniera e Investigacin Tecnolgica AO 2013



7 - Etapas para solucin de problemas por el computador
La solucin de problemas por computador consta de ocho etapas, articuladas de tal
forma que cada una depende de las anteriores, lo cual indica que se trata de un proceso
complementario y por lo tanto cada paso exige el mismo cuidado en su elaboracin. Las
ocho etapas son:
1. Definicin y delimitacin del problema a solucionar.
Para resolver el problema es fundamental conocerlo y delimitarlo por completo, determinar
con qu datos se cuenta, la informacin a obtener. Es importante tener claridad sobre el
problema a resolver para no dar soluciones incorrectas.
2. Diagrama de flujo.
Es la primera etapa a realizar luego de tener claro el problema, en esta etapa es donde se
determina los pasos o instrucciones que deben llevarse a cabo y el orden lgico de su
ejecucin para dar una eficiente solucin al problema. Es aqu donde radica toda la
dificultad para solucionar un problema a realizar por el computador.
3. Prueba de escritorio.
Consiste en hacer un seguimiento manual (utilizando papel y lpiz) de los pasos a seguir
que se definieron en el diagrama de flujo y comprobar, con base en unos pocos datos, se
obtiene el resultado esperado.(Lote de prueba)
4. Codificacin.
Es la escritura de las instrucciones, determinados en la etapa de la diagramacin, en un
lenguaje de programacin determinado.
5. Compilacin o interpretacin del programa.
En esta etapa el computador Chequea, si todas las instrucciones estn escritas
correctamente en el cdigo utilizado, respetando, simbologa y sintaxis.
6. Ejecucin del Programa.
Luego de la etapa anterior, si el compilador no dio errores, el programa objeto es ejecutado,
para llegar a los resultados esperados.
7. Evaluacin de los resultados.
Obtenidos los resultados se les evala para verificar si son correctos. En caso contrario, se
revisa las etapas anteriores para detectar la falla o error.

Vous aimerez peut-être aussi