2. UNIDAD I INTRODUCCION A LA
COMPUTACION
1.1. Conceptos Generales
1.1.1 La computadora
1.1.2 El programa
1.1.3 El lenguaje de
programación
1.1.4. Características de los
lenguajes de programación
1.1.5 La programación
1.2 El proceso de programación
1.3 El algoritmo
OBJETIVO: Conocer las características
principales de la computadora y sus
aplicaciones.
4. 1.1.1 LA COMPUTADORA
• Una computadora es un dispositivo
electrónico que almacena y procesa
datos, y es capaz de ejecutar órdenes o
comandos.
• Las computadoras procesan datos bajo
el control de un conjunto de
instrucciones denominadas programas
de computadoras.
• Las computadoras incluyen hardware y
software
5. HARDWARE
• La RAE define hardware como “Conjunto de
los componentes que integran la parte
material de una computadora”.
• Ahora vamos analizar el concepto desde los
puntos de vistas que nos interesan:
• La palabra hardware proviene del inglés.
• Son todas las partes físicas que conforman una
computadora, es decir, todo lo que se puede
tocar.
• Se clasifican de acuerdo a sus características y
funciones.
• Teclado, monitor, disco duro y modem son
ejemplos de hardware.
6. ELEMENTOS DE LA COMPUTADORA
• Una computadora es un dispositivo electrónico capaz
de ejecutar ordenes e instrucciones.
• Las instrucciones básicas que realiza una
computadora son:
• Entrada (lectura o introducción de datos),
• Salida ( visualizar o escribir resultados)
• Almacenamiento (guardar datos) y
• Realización de operaciones básicas (aritméticas y lógicas) y
complejas.
7. ELEMENTOS DE LA COMPUTADORA
• Cuando nos referimos a los
elementos de una computadora
estamos hablamos de las partes
que hacen posible que este
funcione.
• Son aquellas partes encargadas de
resolver y ejecutar las operaciones
matemáticas y lógicas para
procesar los datos y generar como
salida la información, y estos
elementos son los siguientes:
• UCP (Unidad Central de Proceso).
• UC (Unidad de control).
• UAL (Unidad aritmético lógica).
8. UCP (UNIDAD CENTRAL DE PROCESO)
• La UCP es más conocida como la CPU por sus siglas en
inglés (Central Proccesor Unit) y esta compuesta por la
UC y la UAL.
• La UCP es el procesador de la computadora.
• Es la parte principal de una computadora, sin este
elemento no podría funcionar, la UCP es la que se
encarga de realizar todas las instrucciones de la
computadora y de esta manera resolver las
operaciones matemáticas y procesos lógicos para
posteriormente transformarlos en información.
• Además de ejecutar las instrucciones es la encargada
de controlar el funcionamiento de los dispositivos
conectados a la computadora.
9. UC (UNIDAD DE CONTROL)
• La UC es la encargada de
coordinar las instrucciones que
se están ejecutando en la UCP y
de esta manera interpretar
dichas instrucciones para
controlar los diversos
componentes del procesador.
10. UAL (UNIDAD ARITMÉTICO LÓGICA)
• La UAL es la encargada de realizar los
cálculos matemáticos y las operaciones
lógicas que se están ejecutando en la UCP.
• Los cálculos matemáticos que realiza son
de suma, resta, división y multiplicación,
estos cálculos son necesarios para la
transformación de los datos en
información.
• Con respeto a las operaciones lógicas
están relacionadas con la comparación de
datos que pueden ser de mayor que, mayor
o igual que, menor que y menor o igual
que.
11. DISPOSITIVOS DE ENTRADA
• Son todos los elementos que permiten al
usuario la entrada de datos al
computador, a través de estos
dispositivos el usuario hace el ingreso de
datos para que posteriormente sean
procesados y transformados en
información.
• Teclado, pantalla táctil, ratón, scanner,
cámara web, micrófono, lector de códigos
de barras y control de juegos son
ejemplos de dispositivos de entrada.
12. DISPOSITIVOS DE SALIDA
• Son todos los elementos que permiten
al usuario ver los resultados de los
procesos de los datos transformados
en información, a través de estos
dispositivos es que la computadora
comunica al usuario el resultado de la
acción requerida por parte de éste.
• Ejemplo de dispositivos de salida:
Monitor, impresora, plotter, bocinas,
audífonos.
13. DISPOSITIVOS DE ALMACENAMIENTO DE
INFORMACION
• Son todos los elementos que permiten al
usuario guardar datos e información por
algún tiempo
• A través de estos dispositivos podemos
almacenar y transportar nuestros
documentos y archivos para que
posteriormente sean usados en
otra computadora.
• Disco duro, discos ópticos, memorias
son ejemplos de dispositivos de
almacenamiento.
14. DISPOSITIVOS DE COMUNICACIÓN
• Son todos los elementos que
permiten que las computadoras se
comuniquen entre si, a través de
estos dispositivos las computadoras
intercambian archivos.
• Tarjeta de red, fax modem, tarjetas
inalámbricas, bluetooth son
ejemplos de dispositivos de
comunicación.
15. 1.2 SOFTWARE
• La RAE define software como “Conjunto de
programas, instrucciones y reglas informáticas
para ejecutar ciertas tareas en una computadora”.
• Ahora vamos analizar el concepto desde los
puntos de vistas que nos interesan:
• La palabra software proviene del inglés.
• Es la parte intangible de la computadora, es decir, lo
podemos ver y usar pero no lo podemos tocar.
• Está relacionada con la parte lógica de la
computadora.
• Se clasifican de acuerdo a sus características y
funciones.
• Windows Vista, Microsoft Word 2007 son ejemplos de
software.
16. TIPOS DE SOFTWARE.
• El software se clasifica en relación a
sus características y a la funciones
que realiza, estas pueden ser:
• De comunicación entre los diferentes
elementos de la computadora (software
de sistema) y
• De comunicación entre computadora y
usuario (software de aplicación).
17. SOFTWARE DEL SISTEMA.
• Su función principal es la
comunicación entre todos los
elementos de la computadora, es el
encargado de controlar las
instrucciones que se están
ejecutando en la UCP y de esta
manera controlar los procesos para
que la computadora funcione de
una manera correcta.
• Ejemplos de este tipo de software
son:
• Sistemas operativos (Windows, Mac,
Linux).
• Utilidades (Antivirus, aplicaciones
de mantenimiento a la
computadora).
• Controladores también conocidos
como drivers, estos hacen posible
que el sistema operativo se
comunique con el hardware
conectado a la computadora y que
este funcione de una manera
18. SOFTWARE DE APLICACIÓN.
• Su función principal es asistir al
usuario en sus tareas habituales,
el software de aplicación ayuda
a que nuestras tareas se hagan
de una manera sencilla en la
computadora y se resume en la
automatización de nuestras
labores, actividades diarias.
Ejemplos de este tipo de
software son:
• Aplicaciones ofimáticas (Word,
Excel, Power Point).
• Aplicaciones de diseño (Flash,
Photoshop, Corel Draw).
• Aplicaciones de administración
(contables, ventas, finanzas).
19. 1.1.2 EL PROGRAMA
• La programación de computadoras consiste en
escribir instrucciones que la computadora ha
de ejecutar.
• Al igual que sucede en numerosas máquinas
existentes en la vida diaria, se puede aprender
un lenguaje de programación que permitirá
escribir los programas sin necesidad de
conocer el hardware de la computadora,
aunque será mejor y más eficiente que el
programador (persona que escribe el
20. 1.1.2 EL PROGRAMA
• Los programas conocidos como
software, son instrucciones a la
computadora.
• Sin programas, una
computadora es una máquina
vacía.
• El software de una computadora
es un conjunto de instrucciones
de programa detalladas que
controlan y coordinan los
componentes hardware de una
computadora y controlan las
operaciones de un sistema
• Las operaciones que debe
realizar el hardware son
especificadas por una lista de
instrucciones, llamadas
programas, o software.
• Un programa de software es un
conjunto de sentencias o
instrucciones que se da a la
computadora.
• El proceso de escritura o
codificación de un programa se
denomina programación y las
personas que se especializan en
21. 1.1.3 LENGUAJES DE
PROGRAMACION
• Los humanos nos entendemos con los lenguajes naturales como el
español, el inglés o el portugués, pero ¿y las computadoras cómo se
entienden?
• Cuando pulsamos la letra B en el teclado se visualiza la letra B en la
pantalla del monitor.
• ¿Cuál es la información que se ha almacenado en la memoria central
de la computadora?
• En resumen, ¿Cuál es el lenguaje que entienden las computadoras y
cómo se almacena cualquier otra información que se introduce en el
teclado o se lee de una memoria USB?
22. 1.1.3 LENGUAJES DE
PROGRAMACION
• Un lenguaje de programación es
un lenguaje formal diseñado para
realizar procesos que pueden ser
llevados a cabo por máquinas como
las computadoras.
• Pueden usarse para crear
programas que controlen el
comportamiento físico y lógico de
una máquina, para
expresar algoritmos con precisión,
o como modo de comunicación
humana.
• Está formado por un conjunto de
símbolos y
reglas sintácticas y semánticas que
definen su estructura y el
significado de sus elementos y
expresiones.
• Al proceso por el cual se escribe, se
prueba, se depura, se compila (de
ser necesario) y se mantiene
el código fuente de un programa
informático se le
llama programación.
23. 1.1.3 LENGUAJES DE
PROGRAMACION
• También la palabra programación se define como el proceso de
creación de un programa de computadora, mediante la
aplicación de procedimientos lógicos, a través de los siguientes
pasos:
• El desarrollo lógico del programa para resolver un problema en
particular.
• Escritura de la lógica del programa empleando un lenguaje de
programación específico (codificación del programa).
• Ensamblaje o compilación del programa hasta convertirlo en lenguaje de
máquina.
24. 1.1.4. CARACTERÍSTICAS DE LOS
LENGUAJES DE PROGRAMACIÓN
• Los 5 lenguajes de programación más
populares de la actualidad son: Java, C,
C++, Pyhton y C#.
• Así lo asegura el Índice TIOBE en su
última actualización de junio 2017.
• La novedad es que el lenguaje de
programación Kotlin salta a los 50 más
populares.
• Probablemente te preguntes qué se
supone que debas interpretar por
lenguaje de programación "más popular".
A continuación, te explicamos.
• El Índice TIOBE es un índice elaborado por
una empresa de software holandesa que
se especializa en la evaluación y
seguimiento de la calidad de los
programas informáticos.
• El Índice TIOBE se elabora a partir de
diversas variables, como por ejemplo,
número de ingenieros cualificados en
determinado lenguaje, las búsquedas que
hacen los usuarios a través de los
buscadores solicitando información de los
distintos lenguajes de programación, la
demanda de cursos o los lenguajes que
están siendo más utilizados.
25. 1.1.4. CARACTERÍSTICAS DE LOS
LENGUAJES DE PROGRAMACIÓN
JAVA
• Reconocido por su legibilidad y
simplicidad, Java es uno de los lenguajes
de programación más adoptados: más 9
millones de desarrolladores lo usan y está
presente en 7 mil millones de dispositivos
en todo el mundo.
• Desde 2001 se mantiene en las primeras
posiciones, llegando al número puesto
número 2 como la más baja de todas en
marzo de 2015. Su enorme popularidad
se debe a su poder de permanencia,
cuestión que asegura el funcionamiento a
largo plazo de las aplicaciones que lo
utilizan.
C
• Creado entre 1969 y 1972 en
los Laboratorios Bell, es uno de los
más utilizados en el mundo. Si bien
es ejecutado en la mayoría de los
sistemas operativos, es de
propósito general, con lo cual es
muy flexible. Es muy popular para
el desarrollo de aplicaciones de
escritorio, como el conocido editor
gráfico GIMP.
26. 1.1.4. CARACTERÍSTICAS DE LOS
LENGUAJES DE PROGRAMACIÓN
C++
• Conocido por el nombre “C
Plus Plus”, este lenguaje de
programación orientado a
objetos surge como una
continuación y ampliación del
C. Hay una gran cantidad de
programas escritos en C++,
como por ejemplo los
paquetes de Adobe.
Python
• Un lenguaje de programación
multiplataforma y multiparadigma,
que también es de propósito
general.
• Esto significa que soporta la
orientación a objetos, la
programación imperativa y
funcional.
• Su simpleza, legibilidad y similitud
con el idioma inglés lo convierten
en un gran lenguaje ideal para
principiantes.
27. 1.1.4. CARACTERÍSTICAS DE LOS
LENGUAJES DE PROGRAMACIÓN
C#
• También llamado “C Sharp”, este
lenguaje de
programación orientado a objetos
fue desarrollado en el año 2000 por
Microsoft para ser empleado en una
amplia gama de aplicaciones
empresariales ejecutadas en
el framework .NET. C Sharp es una
evolución del C y C++ que se
destaca por su sencillez y
modernidad.
Visual Basic .Net
• Pasó del número 9 en junio de 2016 al
sexto lugar en 2017.
• Es utilizado por una gran cantidad de
personas a lo largo del mundo que no
cuentan con conocimientos profundos
como desarrolladores, quienes
encuentran en visual basic, además de
una sintaxis sencilla, la posibilidad de
automatizar sus propios procesos y crear
sus propias aplicaciones web.
• Es visto como uno de los lenguajes más
amigables para los que recién comienzan,
sobre todo a comparación de C#.
28. 1.1.4. CARACTERÍSTICAS DE LOS
LENGUAJES DE PROGRAMACIÓN
JAVASCRIPT
• Antes que nada, no confundir con
Java. Son lenguajes distintos.
• Javascript es un lenguaje de
programación que puede ser
utilizado para crear programas que
luego son acoplados a una página
web o dentro de programas más
grandes.
• Sirve para crear efectos y realizar
acciones interactivas. Podemos ver
funcionando este lenguaje en
servicios como el chat, calculadoras,
buscadores de información y un sin
PHP
• Creado en 1994 por el
programador canadiende
Rasmus Lerdorf, nunca
pretendió ser un lenguaje de
programación, sino que fue
creado con la intención de
contar con un conjunto de
herramientas para el
mantenimiento de las páginas
web . Es de fácil acceso para
nuevos programadores y a su
29. 1.1.4. CARACTERÍSTICAS DE LOS
LENGUAJES DE PROGRAMACIÓN
PEARL
• Creado Larry Wall, Pearl es una sigla
que significa Practical Extraction
and Report Language.
• Es un lenguaje de propósito general
que sirve practicamente para todo,
como puede ser la generación y
tratamiento de ficheros, para
analizar datos y textos, y muchas
otras cosas más.
• Si bien hay proyectos complejos y
completos escritos en Pearl, son los
ASSEMBLY LANGUAGE (ASL)
• Assembly language (lenguaje
ensamblador) saltó de la posición número
12 en 2016 al número 10 en 2017.
• Se trata de un lenguaje de programación
de bajo nivel utilizado para interactuar
con hardware informático.
• Utiliza comandos estructurados, en
sustitución de los números, permitiendo a
las personas tener una mayor legibilidad
de los códigos.
• Si bien es más sencillo de leer que el
código binario se trata de un lenguaje
difícil que muchas veces es sustituido por
30. OTROS LENGUAJES
• 11. Ruby
• 12. Swift
• 13. Delphi/Object Pascal
• 14. R
• 15. Go
• 16. Visual Basic
• 17. MATLAB
• 18. Objective-C
• 19. Scratch
• 20. PL/SQL
31. 1.1.5 LA PROGRAMACIÓN
• La programación es un proceso de resolución de problemas.
• Para resolver estos problemas se requieren técnicas diferentes
que comprenden desde el análisis del problema, especificación
de requisitos o requerimientos y las etapas de diseño
denominadas algoritmos
• Un algoritmo es el concepto fundamental de la ciencia de las
computadoras (informática)
• Desde un punto de vista práctico, un algoritmo es un conjunto
de pasos que definen cómo se realiza una tarea.
32. 1.1.5 LA PROGRAMACIÓN
• Por ejemplo, hay un
algoritmo para contruir un
modelo de avión, de un tren,
una lavadora o un aparato de
televisión.
• El conocimiento de las
técnicas de diseño de
algoritmos es fundamental
para el programador.
• Antes de que una máquina
pueda ejecutar una tarea, se
debe diseñar un algoritmo
que posteriormente se pueda
convertir en un programa que
entienda la computadora para
lo cual se necesitará traducir
el programa en lenguaje
máquina mediante un
traductor (compilador o
33. 1.1.5 LA PROGRAMACIÓN
• Las computadoras no entienden los algoritmos, por lo que es
necesario indicarles exactamente las “acciones que deben
hacer” en un lenguaje comprensible para la máquina.
• La descripción de las acciones o tareas que debe hacer la
computadora se denomina “programa” y programación a la
actividad de escribir y verificar tales programas.
• Por esta razón se necesitará convertir el algoritmo en un
programa mediante un lenguaje de programación cuyas
instrucciones sí entiende ya la computadora.
34. TRADUCTORES
• Un traductor es un programa que recibe como entrada código
escrito en un cierto lenguaje y produce como salida código en
otro lenguaje. Generalmente el lenguaje de entrada es de más
alto nivel que el de salida.
• Ejemplos de traductores son los ensambladores y los
compiladores.
• Un ensamblador es un programa que traduce de un lenguaje
ensamblador a lenguaje máquina, mientras que un compilador
es un programa que traduce de un lenguaje de alto nivel a un
35. 1.5 TRADUCTORES
• Un traductor es un programa que toma el texto escrito en un
lenguaje (el lenguaje fuente) y lo convierte en el texto
equivalente en un segundo lenguaje (el lenguaje destino u
objeto).
• Si el fuente es un lenguaje abstracto o de alto nivel y si el
objetivo es un lenguaje de ensamble de bajo nivel o de
máquina, el traductor es un compilador.
• Los programas traductores de lenguajes son:
• Compiladores.
• Interpretes.
36. COMPILADOR
• Un compilador es un programa informático que traduce un
programa escrito en un lenguaje de programación a otro
lenguaje de programación, o también genera aplicaciones que
sean directamente utilizables en un ordenador o computadora.
• Un compilador lee el código fuente creado en un determinado
lenguaje de programación, lo interpreta, comprueba su sintaxis
y traduce a lenguaje o código máquina toda la serie de
instrucciones, generando el archivo ejecutable final (programa
compilado).
37. COMPILADOR
• Se requiere un compilador para cada lenguaje de programación. Un
compilador efectúa la traducción, no ejecuta el programa. Una vez
compilado el programa, el resultado en forma de programa objeto
será directamente ejecutable.
• Un compilador es un programa que permite traducir el código fuente
de un programa en lenguaje de alto nivel, a otro lenguaje de nivel
inferior (típica mente lenguaje máquina) o a un lenguaje mas sencillo
que la computadora puede comprender mas o menos directamente.
• De esta manera un programador puede diseñar un programa en un
lenguaje mucho más cercano a como piensa un ser humano.
38. INTERPRETES
• Es un programa que traduce un lenguaje de alto nivel
al lenguaje de máquina de una computadora.
• El programa siempre permanece en su forma original
(programa fuente) y traduce cuando está en la fase de
ejecución instrucción por instrucción.
El intérprete en los lenguajes de programación simula
una máquina virtual, donde el lenguaje de máquina es
similar al lenguaje fuente.