Anda di halaman 1dari 8

UNIVERSIDAD NACIONAL DE SAN ANTONIO

ABAD DEL CUSCO


FACULTAD DE INGENIERIA ELECTRICA, ELECTRONICA, MECANICA Y
MINAS

FUNDAMENTOS DE PROGRAMACIN:
Conceptos Tericos sobre Fundamentos de
Programacin Digital

PRESENTADO POR: Muiz Arteaga Fabricio Varovsky.


CDIGO: (130072)

INTRODUCCIN
Las computadoras electrnicas modernas son uno de los productos ms
importantes del siglo xx y especialmente de las dos ltimas dcadas. Son una
herramienta esencial en muchas reas: industria, gobierno, ciencia, educacin. Etc.,
en realidad en casi todos los campos de nuestras vidas.
El papel de los programas de las computadoras es esencial; sin una lnea de
instrucciones a seguir, la computadora es virtualmente intil. Los lenguajes de
Programacin nos permiten escribir esos programas y por consiguiente,
comunicarnos con las computadoras.
La principal razn para que las personas aprendan lenguajes y tcnicas de
programacin es utilizar la computadora como una a herramienta para resolver
problemas.

CONCEPTOS BSICOS SOBRE FUNDAMENTOS DE


PROGRAMACIN DIGITAL
1. COMPUTADORA:
Una computadora es un dispositivo electrnico utilizado para procesar informacin y obtener
resultados. Los datos y la informacin se pueden introducir en la computadora por la
entrada (input) y a continuacin se procesan para producir una salida (output, resultados),
La computadora se puede considerar como una unidad en la que se ponen ciertos datos, o
entrada de datos. La computadora procesa estos datos y produce unos datos de salida. Los
datos de entrada y los datos de salida pueden ser, realmente, cualquier cosa, texto, dibujos
o sonido. El sistema ms sencillo de comunicarse con la computadora una persona es
mediante un teclado, una pantalla (monitor) y un ratn (mouse). Hoy da existen otros
dispositivos muy populares tales como escneres, micrfonos, altavoces, cmaras de vdeo,
etc.; de igual manera, a travs de mdems, es posible conectar su computadora con otras
computadoras a travs de la red Internet.
1.1 Organizacin de una computadora:
Independientemente de las diferencias en su apariencia fsica, casi todas las computadoras
pueden representarse mediante seis unidades lgicas o secciones:

1. Unidad de entrada. Es la seccin receptora de la computadora. Obtiene informacin


(datos y programas de cmputo) desde varios dispositivos de entrada y pone esta
informacin a disposicin de las otras unidades para que pueda procesarse. La mayor parte
de la informacin se introduce a travs de los teclados y ratones. La informacin tambin
puede introducirse de muchas otras formas, como hablar con su computadora, digitalizar

2. Unidad de salida. Es la seccin de embarque de la computadora. Toma informacin


que ya ha sido procesada por sta y la coloca en los diferentes dispositivos de salida, para
que est disponible fuera de la computadora.
Hoy en da, la mayor parte de la informacin de salida de las computadoras se despliega en
el monitor, se imprime en papel o se utiliza para controlar otros dispositivos. Las
computadoras tambin pueden dar salida a su informacin a travs de redes como Internet.

3. Unidad de memoria. Es la seccin de almacn de acceso rpido, pero con relativa


baja capacidad. Almacena los programas de la computadora mientras se ejecutan. Retiene
la informacin que se introduce a travs de la unidad de entrada, para que la informacin
pueda estar disponible de manera inmediata para procesarla cuando sea necesario. La
unidad de memoria tambin retiene la informacin procesada hasta que sta pueda ser
colocada en los dispositivos de salida por la unidad de salida. Por lo general, la informacin
en la unidad de memoria se pierde cuando se apaga la computadora. Con frecuencia, a
esta unidad de memoria se le llama memoria o memoria primaria. [A travs de la historia, a
esta unidad se le ha llamado memoria bsica o magntica, pero ese trmino est dejando
de utilizarse en la actualidad].

4. Unidad aritmtica y lgica (ALU). Es la seccin de manufactura de la


computadora. Es la responsable de realizar clculos como suma, resta, multiplicacin y
divisin. Contiene los mecanismos de decisin que permiten a la computadora hacer
operaciones como, por ejemplo, comparar dos elementos de la unidad de memoria para
determinar si son iguales o no.

5. Unidad central de procesamiento (CPU). Es la seccin administrativa de la


computadora. Coordina y supervisa la operacin de las dems secciones. La CPU indica a
la unidad de entrada cundo debe grabarse la informacin dentro de la unidad de memoria,
a la ALU cundo debe utilizarse la informacin de la unidad de memoria para los clculos, y
a la unidad de salida cundo enviar la informacin desde la unidad de memoria hasta
ciertos dispositivos de salida. Muchas de las computadoras actuales contienen mltiples
CPUs y, por lo tanto, pueden realizar muchas operaciones de manera simultnea (a estas
computadoras se les conoce como multiprocesadores).

6. Unidad de almacenamiento secundario. Es la seccin de almacn de alta


capacidad y de larga duracin de la computadora. Los programas o datos que no se
encuentran en ejecucin por las otras unidades, normalmente se colocan en dispositivos de
almacenamiento secundario, como el disco duro, hasta que son requeridos de nuevo,
posiblemente horas, das, meses o incluso aos despus. El tiempo para acceder a la
informacin en almacenamiento secundario es mucho mayor que el necesario para acceder
a la de la memoria principal, pero el costo por unidad de memoria secundaria es mucho
menor que el correspondiente a la unidad de memoria primaria. Los CDs y DVDs son
ejemplos de dispositivos de almacenamiento secundario, los cuales pueden contener hasta
cientos de millones de caracteres y miles de millones de caracteres, respectivamente.

2. CONCEPTO DE ALGORITMO
El objetivo fundamental de este texto es ensear a resolver problemas mediante una
computadora. El programador de computadora es antes que nada una persona que
resuelve problemas, por lo que para Ilegar a ser un programador eficaz se necesita
aprender a resolver problemas de un modo riguroso y sistemtico.
A lo largo de todo este libro nos referiremos a la metodologa necesaria para resolver
problemas mediante programas, concepto que se denomina metodologa de la
programacin. El eje central de esta metodologa es el concepto, ya tratado, de
algoritmo.
Un algoritmo es un mtodo para resolver un problema. Aunque la popularizacin del
trmino ha Ilegado con el advenimiento de la era informhtica, algoritmo proviene de
Mohammed al-KhoWirizmi, matemtico persa que vivi durante el siglo IX y alcanz
gran reputacin por el enunciado de las reglas paso a paso para sumar, restar,
multiplicar y dividir nmeros decimales; la traduccin al latn del apellido en la palabra
algorismus deriv posteriormente en algoritmo. Euclides, el gran matemtico griego
(del siglo IV a.c.) que invent un mtodo para encontrar el mximo comn divisor de dos
nmeros, se considera con Al-Khowirizmi el otro gran padre de la algoritmia (ciencia que
trata de los algoritmos).
El profesor Niklaus Wirth -inventor de Pascal, Modula-2 y Oberon- titul uno de sus ms
famosos libros, Algoritmos + Estructuras de datos = Programas, significndonos que
slo se puede llegar a realizar un buen programa con el diseo de un algoritmo y una
correcta estructura de datos. Esta ecuacin ser una de las hiptesis fundamentales
consideradas en esta obra.
La resolucin de un problema exige el diseo de un algoritmo que resuelva el problema
propuesto.

2.1 Caractersticas de los algoritmos


Las caractersticas fundamentales que debe cumplir todo algoritmo son:
Un algoritmo debe ser preciso e indicar el orden de realizacin de cada paso.

Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe


obtener el mismo
Un algoritmo debe ser finito. Si se sigue un algoritmo, se debe terminar en algn
momento; o sea,
La definicin de un algoritmo debe describir tres partes: Entrada, Proceso y Salida.
3. EL SOFTWARE (LOS PROGRAMAS)
Las operaciones que debe realizar el hardware son especificadas por una lista de
instrucciones, Ilamadas programas, o software. El software se divide en dos grandes
grupos: software del sistema y software de aplicaciones.
El software del sistema es el conjunto de programas indispensables para que la mquina
funcione; se denominan tambin programas del sistema. Estos programas son,
bsicamente, el sistema operativo, los editores de texto, los compiladores/intrpretes
(lenguajes de programacin) y los programas de utilidad.
Uno de los programas ms importante es el sistema operativo, que sirve, esencialmente,
para facilitar la escritura y uso de sus propios programas. El sistema operativo dirige las
operaciones globales de la computadora, instruye a la computadora para ejecutar otros
programas y controla el almacenamiento y recuperacin de archivos (programas y datos) de
cintas y discos. Gracias al sistema operativo es posible que el programador pueda introducir
y grabar nuevos programas, as como instruir a la computadora para que los ejecute. Los
sistemas operativos pueden ser: monousuarios (un solo usuario) y multiusuarios, o tiempo
compartido (diferentes usuarios), atendiendo al nmero de usuarios y monocarga (una sola
tarea) o multitarea (mltiples tareas) segn las tareas (procesos) que puede realizar
simultneamente.
C corre prcticamente en todos los sistemas operativos, Windows 95, Windows NT,
Windows
2000, UNIX, Lynux.. ., y en casi todas las computadoras personales actuales PC, Mac, Sun,
etc.
Los lenguajes de programacin sirven para escribir programas que permitan la
comunicacin usuario/mquina. Unos programas especiales llamados traductores
(compiladores o intrpretes) convierten las instrucciones escritas en lenguajes de
programacin en instrucciones escritas en lenguajes mquina
(O y 1, bits) que sta pueda entender.
Los programas de utilidad' facilitan el uso de la computadora. Un buen ejemplo es un editor
de textos que permite la escritura y edicin de documentos. Este libro ha sido escrito en un
editor de textos o procesador de palabras (wordprocesor).
4. LOS LENGUAJES DE PROGRAMACIN:
El procesador debe ser capaz de interpretar el algoritmo,lo que significa:
Comprender las instrucciones de cada paso.
Realizar las operaciones correspondientes.
Cuando el procesador es una computadora, el algoritmo se ha de expresar en un formato
que se denomina programa. Un programa se escribe en un lenguaje de programacin y las
operaciones que conducen a expresar un algoritmo en forma de programa se llaman
programacin. As pues, los lenguajes utilizados para escribir programas de computadoras
son los lenguajes de programacin y programadores son los escritores y diseadores de
programas.
Los principales tipos de lenguajes utilizados en la actualidad son tres:
Lenguajes mquina.
Lenguaje de bajo nivel (ensamblador).
Lenguajes de alto nivel.

4.1 Lenguajes de Maquina: Son aquellos que estn escritos en lenguajes directamente
inteligibles por la mquina (computadora), ya que sus instrucciones son cadenas
binarias (cadenas o series de caracteres
-dgitos- O y 1) que especifican una operacin, y las posiciones (direccin) de memoria
implicadas en la operacin se denominan instrucciones de mquina o cdigo mquina.
El cdigo mquina es el conocido cdigo binario.
Las instrucciones en lenguaje mquina dependen del hardware de la computadora y,
por tanto, diferirn de una computadora a otra. El lenguaje mquina de un PC
(computadora personal) ser diferente de un sistema HP (Hewlett Packard), Compaq o
un sistema de IBM.
Las ventajas de programar en lenguaje mquina son la posibilidad de cargar (transferir
un programa a la memoria) sin necesidad de traduccin posterior, lo que supone una
velocidad de ejecucin superior a cualquier otro lenguaje de programacin.
Los inconvenientes -en la actualidad- superan a las ventajas, lo que hace prcticamente
no recomendables los lenguajes mquina. Estos inconvenientes son:
Dificultad y lentitud en la codificacin.
Poca fiabilidad.
Dificultad grande de verificar y poner a punto los programas.
Los programas slo son ejecutables en el mismo procesador (UPC, nidad
Central de Proceso).
4.2 Lenguajes de Bajo Nivel: Los lenguajes de bajo nivel son ms fciles de utilizar que los
lenguajes mquina, pero, al igual, que ellos, dependen de la mquina en particular. El
lenguaje de bajo nivel por excelencia es el ensamblador (assembly language). Las
instrucciones en lenguaje ensamblador son instrucciones conocidas como memotcnicos.
Por ejemplo, nemotcnicos tpicos de operaciones aritmticas son: en ingls, ADD, SUB, D I
V , etc.; en espaol, SUM, RES, DIV, etc.
4.3 Lenguajes de Alto Nivel: Los lenguajes de alto nivel son los ms utilizados por los
programadores. Estn diseados para que las personas escriban y entiendan los programas
de un modo mucho ms fcil que los lenguajes mquina y ensambladores. Otra razn es
que un programa escrito en lenguaje de alto nivel es independiente de la mquina; esto es,
las instrucciones del programa de la computadora no dependen del diseo del hardware o
de una computadora en particular. En consecuencia, los programas escritos en lenguaje de
alto nivel son portables o transportables, lo que significa la posibilidad de poder ser
ejecutados con poca o ninguna modificacin en diferentes tipos de computadoras; al
contrario que los programas en lenguaje mquina o ensamblador, que slo se pueden
ejecutar en un determinado tipo de computadora.
Los lenguajes de alto nivel presentan las siguientes ventajas:
El tiempo de formacin de los programadores es relativamente corto comparado con
otros lenguajes
La escritura de programas se basa en reglas sintcticas similares a los lenguajes
humanos.
Las modificaciones y puestas a punto de los programas son ms fciles.
Reduccin del coste de los programas.
Transportabilidad.
5. TRADUCTORES DE LENGUAJE: Los traductores de lenguaje son programas que
traducen a su vez los programas fuente escritos en lenguajes de alto nivel a cdigo
mquina.
Los traductores se dividen en:
Intrpretes.
Compiladores.

5.1 Intrpretes: Un intrprete es un traductor que toma un programa fuente, lo traduce y


a continuacin lo ejecuta.
Los programas intrpretes clsicos como BASIC. Prcticamente ya no se utilizan,
aunque las versiones Qbasic y QuickBASIC todava se pueden encontrar y corren en
las computadoras personales. Sin embargo, est muy extendida la versin interpretada
del lenguaje Smalltalk, un lenguaje orientado a objetos puro.
5.2 Compiladores: Un compilador es un programa que traduce los programas fuente
escritos en lenguaje de alto nivel -C, FORTRAN - a lenguaje mquina.
Los programas escritos en lenguaje de alto nivel se llaman programas.fuente y el programa
traducido programa objeto o cdigo objeto. El compilador traduce -sentencia a sentencia- el
programa fuente. Los lenguajes compiladores tpicos son: C, C++, Pascal, Java y COBOL.

BIBLIOGRAFIA

Anda mungkin juga menyukai