Вы находитесь на странице: 1из 47

Unidad I

Introduccin a la computacin

1.1 Breve resea de la


computacin

1.3 Definiciones

1.3.1 Lenguaje de Alto nivel, bajo


nivel, ensamblador y mquina
1.5 Lenguajes de Programacin
Un lenguaje de programacin es un idioma
artificial diseado para expresar
computaciones que pueden ser llevadas a cabo
por mquinas como las computadoras. Pueden
usarse para crear programas que controlen el
comportamiento fsico y lgico de una
mquina, para expresar algoritmos con
precisin, o como modo de comunicacin
humana

1.3.1 Lenguaje de Alto nivel, bajo


nivel, ensamblador y mquina
1.5 Lenguajes de Programacin
Est formado por un conjunto de smbolos
y reglas sintcticas y semnticas 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 y se mantiene el
cdigo fuente de un programa
informtico se le llama programacin.

1.3.1 Lenguaje de Alto nivel, bajo nivel,


ensamblador y mquina
1.5 Lenguajes de Programacin
Los lenguajes de programacin son
herramientas que permiten crear programas.
Los programas son un conjunto de
instrucciones escritos en un lenguaje
determinado (Lenguaje de alto nivel o nivel
medio), el cual consta de una sintaxis y una
serie de smbolos, donde cada uno cuenta con
distintas funciones.

1.3.1 Lenguaje de Alto nivel, bajo


nivel, ensamblador y mquina
1.5 Lenguajes de Programacin

Ensambladores
Traducen programas escritos con
mnemnicos a lenguaje de mquina.

1.3.1 Lenguaje de Alto nivel, bajo


nivel, ensamblador y mquina
1.5 Lenguajes de Programacin
El lenguaje de un ordenador se lo
denomina lenguaje de mquina, y
consiste en una codificacin de
instrucciones que puede realizar un
procesador, la codificacin se realiza
mediante la representacin binaria, es
decir, cada instruccin era un conjunto de
unos y ceros

1.3.2 Compiladores
1.3.3 interpretes

Para traducir un programa escrito en


lenguaje de alto nivel (programa
fuente) a lenguaje mquina se utiliza
un programa compilador o interprete
y que se puede ejecutar directa o
indirectamente en el computador

1.3.2 Compiladores
1.3.3 interpretes
Un compilador es un programa informtico que
traduce un programa escrito en un lenguaje de
programacin a otro lenguaje de
programacin, generando un programa
equivalente que la mquina ser capaz de
interpretar. Usualmente el segundo lenguaje es
lenguaje de mquina, pero tambin puede ser
simplemente texto. Este proceso de traduccin
se conoce como compilacin.

1.3.2 Compiladores
1.3.3 interpretes
Compiladores
Son programas que traducen Programas Fuente en programas
Objeto.

Un programa que ha sido compilado puede


correr por si solo, pues en el proceso de
compilacin se lo transformo en otro lenguaje
(lenguaje mquina).
Un intrprete traduce el programa cuando lo
lee, convirtiendo el cdigo del programa
directamente en acciones.

1.3.2 Compiladores
1.3.3 interpretes

La ventaja del intrprete es que dado


cualquier programa se puede
interpretar en cualquier plataforma
(sistema operativo), en cambio el
archivo generado por el compilador
solo funciona en la plataforma en
donde se lo ha creado

1.3.2 Compiladores
1.3.3 interpretes

Pero por otro lado un archivo


compilado puede ser distribuido
fcilmente conociendo la plataforma,
mientras que un archivo interpretado
no funciona si no se tiene el
intrprete.

1.3.2 Compiladores
1.3.3 interpretes

Respecto a la velocidad de ejecucin


un archivo compilado es de 10 a 20
veces ms rpido que un archivo
interpretado.

1.3.4 Sistemas Numricos

1.- Base 10
2.- Base 2
3.- Base 8
4.- Base 16

1.3.5 Arquitectura de
Computadoras
Arquitectura VON NEUMANN
Arquitectura Harvard.
Arquitectura CISC
(Conjunto de instruccones completa)
Arquitectura RISC
(Conjunto de instrucciones reducidas).

Arquitectura VON NEUMANN

Arquitectura HARVARD

1.3.6 Sistemas Operativos


Conjunto de programas que se integran con
el hardware para facilitar al usuario, el
aprovechamiento de los recursos disponibles.
Algunos de sus objetivos principales son:
- Provee de un ambiente conveniente de
trabajo.
- Hace uso eficiente del Hardware.
- Provee de una adecuada distribucin de los
recursos.

1.3.6 Sistemas Operativos


Es el programa o programas que tienen
todas las computadoras modernas, el
usuario de un equipo de computo no tiene
que preocuparse de como funciona, por
ejemplo, una unidad lectora de disco,
slo necesita pedirle al sistema operativo
que lo lea o escriba en el disco mediante
un comando.

1.3.6 Sistemas Operativos


Conjunto de programas que sirven como
interfaz entre el usuario (Sirve como
agente de intercambio de informacin
entre la computadora y el usuario.) y la
computadora, adems de que administran
los recursos de la misma (Entendindose
como recursos: Memoria, Disco Duro,
Procesador, Monitor, Etc.).

1.3.6 Sistemas Operativos


Para un Sistema Operativo real deber
satisfacer las siguientes funciones:
- Gobierna el Sistema.
- Asigna los recursos.
- Administra y controlar la ejecucin de los
programas.

Un sistema de computo en muchos casos cuenta


con demasiados recursos para ser utilizados por un
solo usuario, es en estos casos cuando se puede dar
servicio a varios procesos.

1.3.6 Sistemas Operativos


Llamadas al Sistema
El Sistema Operativo en conjunto con el Hardware
aparecen al usuario como un solo dispositivo con un
conjunto de instrucciones ms flexibles y variadas a
las que se conoce como Llamadas al Sistema
(System Callings).
Intrprete de Comandos
Tambin conocido por su nombre en ingls, Shell, es
un programa que interpreta las rdenes del usuario
y las convierte en Llamadas al Sistema.

1.3.6 Sistemas Operativos


Ncleo (o Kernel)
Es la parte del Sistema Operativo que se
encarga de sincronizar la activacin de
los procesos y definir prioridades.
Programas del Sistema
Son programas de servicio que debe ser
solicitados explcitamente por los
usuarios.:

1.4 Descripcin de los tipos de


Programacin

1.4.1 PROGRAMACIN
ESTRUCTURADA
Es un paradigma de programacin
orientado a mejorar la claridad, calidad y
tiempo de desarrollo de un programa de
computadora, utilizando nicamente
subrutinas, y tres estructuras: secuencia,
seleccin, e iteracin

1.4.1 PROGRAMACIN
ESTRUCTURADA

Se utiliza para que los programas sean


fciles de leer a fin de simplificar las
tareas de depuracin de errores,
mantenimiento y modificacin de los
mismos

1.4.1 PROGRAMACIN
ESTRUCTURADA
Los programas estructurados emplean
algoritmos que se componen de tres
patrones o estructuras:
1.- Secuenciales
2.- Selectivos
3.- iterativos

1.4.2 Programacin Orietada a


Objetos
Es un paradigma de programacin que usa
los objetos en sus interacciones, para
disear aplicaciones y programas
informticos.
La POO es una forma de programacin
que utiliza objetos, ligados mediante
mensajes, para la solucin de problemas.

1.4.2 Programacin Orietada a


Objetos
La programacin orientada a objetos (POO)
enfatiza en los datos, al contrario de la
programacin estructurada que enfatiza en
los algoritmos.
La POO es una forma de programacin que
utiliza objetos, ligados mediante mensajes,
para la solucin de problemas.

1.4.2 Programacin Orietada a


Objetos
La Programacin Orientada a Objetos
(POO) se distingue por pensar en los
problemas y sus soluciones a travs
de la implementacin de objetos y su
comportamiento.
Las caractersticas fundamentales de la
Programacin Orientada a Objetos
son: abstraccin, encapsulamiento,
herencia y polimorfismo.

1.4.2 Programacin Orietada a


Objetos
Un objeto es una entidad que
tiene unos atributos particulares,
los datos, y unas formas de
operar sobre ellos, los mtodos o
procedimientos.
Los objetos reciben, interpretan y
responden mensajes de otros
objetos.

1.4.2 Programacin Orietada a


Objetos

Una clase es un tipo de objeto definido


por el usuario. Una clase equivale a la
generalizacin de un tipo especfico
de objetos. Una instancia o ejemplar
es la concrecin de una clase.

1.4.2 Programacin Orietada a


Objetos
CARACTERISTICAS DE LA POO

ABSTRACCION : Por medio de la


abstraccin conseguimos no detenernos
en los detalles concretos de las cosas que
no interesen en cada momento, sino
generalizar y centrarse en los aspectos
que permitan tener una visin global del
tema.
ENCAPSULAMIENTO : Esta caracterstica
permite ver un objeto como una caja
negra, en la que se mete toda la
informacin relacionada con un objeto,
manipulndolos como unidades bsicas,
permaneciendo oculta su estructura
interna.

1.4.2 Programacin Orietada a


Objetos
CARACTERISTICAS DE LA POO

HERENCIA : Es el mecanismo para


compartir automticamente mtodos y
datos entre clases, subclases y objetos.
POLIMORFISMO : Permite implementar
mltiples formas de un mismo mtodo,
dependiendo cada una de ellas de la clase
sobre la que se realice la implementacin.

1.4.3 Lenguaje de descripcin de


hardware y sistemas numricos

Un lenguaje de descripcin de
hardware (HDL, Hardware Description
Language) permite documentar las
interconexiones y el comportamiento
de un circuito electrnico, sin utilizar
diagramas esquemticos.

Programas de Sistema
Son aplicaciones de utilidad que se suministran con
el SO pero no forman parte de l. Ofrecen un
entorno til para el desarrollo y ejecucin de
programas, siendo algunas de las tareas que
realizan:
* Manipulacin y modificacin de archivos.
* Informacin del estado del sistema.
* Soporte a lenguajes de programacin.
* Comunicaciones.

Programas de Aplicacin

Programas externos al sistema,


utilizados para realizar tareas
especficas como simulacin,
creacin y edicin de grficas e
imgenes, etc..

Otras definiciones
1. Editores
Son programas que permiten escribir textos y
guardarlos en memoria secundaria.
2. Utileras de Archivos
Programas para dar mantenimiento a los archivos.
3. Bibliotecas
Programas que contienen rutinas para realizar
funciones frecuentemente requeridas. Estas
funciones pueden ser ligadas a los programas
escritos por el usuario.

Programacin

La palabra programacin se define como


el proceso de creacin de un programa de
computadora, mediante la aplicacin de
procedimientos lgicos, a travs de los
siguientes pasos:

Programacin
* El desarrollo lgico del programa para resolver un
problema en particular.
* Escritura de la lgica del programa empleando
un lenguaje de programacin especfico
(codificacin del programa).
* Ensamblaje o compilacin del programa hasta
convertirlo en lenguaje de mquina.
* Prueba y depuracin del programa.
* Desarrollo de la documentacin

Editores

Los editores de texto plano (o sea, sin formato)


sirven para leer y editar archivos de texto
(habitualmente .txt). Estos archivos son bastante
usados y no hay que confundirlos con los
documentos de texto con formato e imgenes (los
cuales puedes crear usando un procesador de texto).

Editores
Con estos editores de texto tambin puedes escribir
programas en cdigo fuente ya que te resaltan la
sintaxis de los lenguajes de programacin.
Hay muchisimos editores de texto para Linux,
algunos son estos:
1. gEdit

Editores

Que puedes configurar para que resalte la sintaxis de


varios lenguajes de programacin como C, C++,
Java, HTML, XML, Python, Perl... Admite la
posibilidad de editar documentos remotos, imprimir
archivos, buscar y reemplazar, fuentes y colores
personalizables, comprobador de ortografa,
pestaas y ms funciones extra.

Editores
2. Kwrite
Editor de textos con muchas funciones extra como
corrector de ortografa, sangrado, alineado,
capitalizar, maysculas / minsculas, multitud de
codificaciones, pestaas, modo de solo lectura,
accesos rpidos, sobreescritura, bsquedas de texto,
reemplazar, ir a la linea, imprimir texto, etc...

Ejecutables

Consola de lnea de comandos

Вам также может понравиться