You are on page 1of 52

1 - Introduccin General

Fundamentos de Informtica (30105) / Informtica (28807)

Curso 20162017

Corts Arcos, Toms


Escuela Universitaria Politcnica de La Almunia
Universidad de Zaragoza

Ingeniera de Organizacin Industrial / Mecatrnica


Contenido

1 Objetivos
2 Introduccin
3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo
4 Sistema de Archivos
5 Sistemas Operativos
6 Programacin
Jerarqua de Lenguajes
7 Bases de Datos
8 Redes de Computadores
9 Comprender cmo funciona la informtica

1 - Introduccin General Fund. Informtica / Informtica 2 / 49


1 Objetivos

2 Introduccin

3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo

4 Sistema de Archivos

5 Sistemas Operativos

6 Programacin
Jerarqua de Lenguajes

7 Bases de Datos

8 Redes de Computadores

9 Comprender cmo funciona la informtica


Introduccin

Los objetivos del captulo son los siguientes: Explicar qu significa


programar y la relacin que hay entre la informtica y nuestro entorno.

1 - Introduccin General Fund. Informtica / Informtica 4 / 49


1 Objetivos

2 Introduccin

3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo

4 Sistema de Archivos

5 Sistemas Operativos

6 Programacin
Jerarqua de Lenguajes

7 Bases de Datos

8 Redes de Computadores

9 Comprender cmo funciona la informtica


Introduccin

La informtica es algo que hoy en da est presente en casi todos los


momentos de la vida. Desde que nos levantamos hasta que nos acostamos,
e incluso mientras dormimos, hay algn programa informtico que influye
en nosotros. En clase, en la oficina, durante el ocio. Para relacionarnos con
otras personas, con la administracin pblica o con mquinas. Al comprar
el pan o al hacernos una radiografa.

1 - Introduccin General Fund. Informtica / Informtica 6 / 49


1 Objetivos

2 Introduccin

3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo

4 Sistema de Archivos

5 Sistemas Operativos

6 Programacin
Jerarqua de Lenguajes

7 Bases de Datos

8 Redes de Computadores

9 Comprender cmo funciona la informtica


1 Objetivos

2 Introduccin

3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo

4 Sistema de Archivos

5 Sistemas Operativos

6 Programacin
Jerarqua de Lenguajes

7 Bases de Datos

8 Redes de Computadores

9 Comprender cmo funciona la informtica


Mquina que Ejecuta Algoritmos

Ordenador es una mquina programable para el tratamiento de la


informacin
su comportamiento est parametrizado por un programa que reside
en su memoria
su ejecucin permite alcanzar la solucin de un problema
es una mquina de propsito general
resuelve problemas de tratamiento de informacin:
clculo numrico, control automtico, tratamiento de seales,
simulacin de procesos, gestin administrativa y de recursos,

1 - Introduccin General Fund. Informtica / Informtica 9 / 49


1 Objetivos

2 Introduccin

3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo

4 Sistema de Archivos

5 Sistemas Operativos

6 Programacin
Jerarqua de Lenguajes

7 Bases de Datos

8 Redes de Computadores

9 Comprender cmo funciona la informtica


Naturaleza Digital

La mquina est compuesta por la circuitera electrnica (hardware) y


por los programas necesarios para su funcionamiento (software)
Tanto el hardware como el software se asientan en la idea de que la
unidad bsica de informacin es el bit
Un bit slo puede tener dos valores: cero y uno
Es la cantidad mnima de informacin que puede ser tratada,
almacenada o transportada
Nos aprovechamos de que alguna caracterstica fsica puede oscilar
entre dos estados para manejar esa informacin
partculas magnticas con dos estados de polarizacin (discos duros)
circuitos electrnicos capaces de mantener en un punto tensin de 0V.
de 3/5V. (memorias, microprocesadores)

1 - Introduccin General Fund. Informtica / Informtica 11 / 49


Hardware

Los componentes bsicos de todo ordenador son


La CPU (Central Processing Unit) realiza todas las operaciones
aritmticas y lgicas, y controla las distintas acciones
La Memoria principal en la arquitectura de Von Newmann se encarga
de almacenar los datos y programas con los cuales opera la mquina
es voltil; la informacin que almacena se olvida al cortar la corriente
se puede acceder a cualquier posicin de esta memoria sin requerir un
orden: se la llama RAM (Random Access Memory)
Los Perifricos comunican al ordenador con el exterior
pantallas, teclados, ratones, impresoras, altavoces, discos, tarjetas de
red, dispositivos USB,
los programas de gestin de los perifricos se llaman drivers y deben
estar instalados para que el perifrico funcione

1 - Introduccin General Fund. Informtica / Informtica 12 / 49


1 Objetivos

2 Introduccin

3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo

4 Sistema de Archivos

5 Sistemas Operativos

6 Programacin
Jerarqua de Lenguajes

7 Bases de Datos

8 Redes de Computadores

9 Comprender cmo funciona la informtica


Nocin de Algoritmo

Dado un procesador y un tratamiento a procesar por ese procesador,


en programacin imperativa, un algoritmo es el enunciado de una
secuencia de acciones primitivas, llamadas sentencias, que realizan
ese tratamiento en un nmero finito de pasos

1 - Introduccin General Fund. Informtica / Informtica 14 / 49


1 Objetivos

2 Introduccin

3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo

4 Sistema de Archivos

5 Sistemas Operativos

6 Programacin
Jerarqua de Lenguajes

7 Bases de Datos

8 Redes de Computadores

9 Comprender cmo funciona la informtica


Directorios y Ficheros

Fichero es el nombre que recibe la unidad en que se almacena la


informacin generalmente en discos duros, CDs, DVDs
Los ficheros tambin reciben el nombre de archivos
La abundancia de archivos puede hacer inmanejable tanta
informacin, por eso los archivos se organizan dentro de directorios, y
los directorios a su vez tambin pueden contener otros directorios
Se puede establecer una analoga entre fichero y documento impreso
en papel, y entre directorio y carpeta fsica
En una carpeta podemos guardar varios documentos, pero tambin
carpetas, que a su vez pueden almacenar otros documentos y
carpetas

1 - Introduccin General Fund. Informtica / Informtica 16 / 49


Ficheros binarios

Los ficheros binarios guardan informacin en formato binario no


legible directamente por un usuario
Por ejemplo: ficheros ejecutables, de imgenes, de bases de datos,
canciones, vdeo,
Un usuario no los puede editar ni visualizar a menos que disponga de
una herramienta especializada

1 - Introduccin General Fund. Informtica / Informtica 17 / 49


Ficheros de texto

Los ficheros de texto contienen caracteres, y pueden ser visualizados


y editados por un editor de texto plano
A pesar de lo que pueda parecer, no son ficheros de texto los archivos
de un documento de tipo word ni las hojas de clculo pues adems de
caracteres contienen informacin acerca del formato y otras cosas,
adems pueden ir comprimidos
Son de texto los ficheros con el cdigo fuente de un programa y los de
tipo html,

1 - Introduccin General Fund. Informtica / Informtica 18 / 49


1 Objetivos

2 Introduccin

3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo

4 Sistema de Archivos

5 Sistemas Operativos

6 Programacin
Jerarqua de Lenguajes

7 Bases de Datos

8 Redes de Computadores

9 Comprender cmo funciona la informtica


El Sistema Operativo

Qu es el sistema operativo
Es una mquina ampliada
Oculta los detalles que deben realizarse
Presenta al usuario una mquina virtual ms fcil de usar

Es un gestor de recursos
Cada programa obtiene tiempo de uso del recurso
Cada usuario obtiene espacio en el recurso

Aprovecha los recursos hardware de uno o ms procesadores.


Proporciona un conjunto de servicios a los usuarios.
Gestiona la memoria secundaria (disco) y los dispositivos de
entrada/salida.

1 - Introduccin General Fund. Informtica / Informtica 20 / 49


Objetivos y Funciones de un Sistema Operativo

Objetivos de un Sistema Operativo

Comodidad: Hace que sea ms cmodo el uso de la computadora


Eficiencia: Permite que los recursos sean usados ms eficientemente
Capacidad de evolucionar: Debe ser construido de manera que
permita el desarrollo de nuevas funciones

1 - Introduccin General Fund. Informtica / Informtica 21 / 49


Objetivos y Funciones de un Sistema Operativo

Objetivos de un Sistema Operativo

Comodidad: Hace que sea ms cmodo el uso de la computadora


Eficiencia: Permite que los recursos sean usados ms eficientemente
Capacidad de evolucionar: Debe ser construido de manera que
permita el desarrollo de nuevas funciones

Funciones de un Sistema Operativo

Como interfaz usuario / computadora


Como gestor de recursos
Facilitar la evolucin de un sistema operativo

1 - Introduccin General Fund. Informtica / Informtica 21 / 49


Servicios Proporcionados por el Sistema Operativo

Creacin de programas
Ejecucin de programas
Deteccin de errores y respuesta
Acceso a dispositivos de E / S errores de hardware interno y
Acceso controlado a archivos externo
error de memoria
Acceso al sistema fallos de dispositivos
Contabilidad errores de software
recoleccin de estadsticas desbordamiento aritmtico
monitorizar el rendimiento acceso prohibido a posiciones
usado para anticipar futuras de memoria
mejoras
usado para cobrar a usuarios

1 - Introduccin General Fund. Informtica / Informtica 22 / 49


Algunos Sistemas Operativos

Microsoft
NT
XP
Windows Mobile
Windows 7, 8
Distribuciones GNU/Linux
Debian
Ubuntu
Slackware, RedHat Fedora, OpenSuse
Damm Small Linux
Google Android (mviles y notebooks)
Apple
Mac OS X Lepard, Lion
Symbian (Nokia)
IBM 9000 series
Solaris
1 - Introduccin General Fund. Informtica / Informtica 23 / 49
1 Objetivos

2 Introduccin

3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo

4 Sistema de Archivos

5 Sistemas Operativos

6 Programacin
Jerarqua de Lenguajes

7 Bases de Datos

8 Redes de Computadores

9 Comprender cmo funciona la informtica


1 Objetivos

2 Introduccin

3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo

4 Sistema de Archivos

5 Sistemas Operativos

6 Programacin
Jerarqua de Lenguajes

7 Bases de Datos

8 Redes de Computadores

9 Comprender cmo funciona la informtica


Jerarqua de Lenguajes

De bajo nivel: ensamblador y cdigo mquina


De alto nivel: el programador se abstrae de las caractersticas
arquitectnicas de la mquina

1 - Introduccin General Fund. Informtica / Informtica 26 / 49


Lenguajes de Alto Nivel ms Comunes

Imperativos
Orientados a estructuras de computadores de Von Newmann
Ejs: Algol, Fortran, COBOL, Pascal, Ada, Modula2, C

1 - Introduccin General Fund. Informtica / Informtica 27 / 49


Lenguajes de Alto Nivel ms Comunes

Imperativos
Orientados a estructuras de computadores de Von Newmann
Ejs: Algol, Fortran, COBOL, Pascal, Ada, Modula2, C

Orientados a objetos
Son esencialmente imperativos
Herencia, polimorfismo, encapsulacin, abstraccin, ...
Permiten construccin evolutiva del software, reutilizacin sencilla,
mejor desarrollo de programas grandes, ...
Ejs: Simula67, Smalltalk80, Eiffel, Objective C, Java, Oberon,
ComponentPascal, C#, C++

1 - Introduccin General Fund. Informtica / Informtica 27 / 49


Otros Lenguajes de Alto Nivel

Lgicos
Basados en la resolucin. Un procedimiento construido para probar
implicaciones en el clculo de predicados de primer orden
Ejs: Prolog y sus dialectos

1 - Introduccin General Fund. Informtica / Informtica 28 / 49


Otros Lenguajes de Alto Nivel

Lgicos
Basados en la resolucin. Un procedimiento construido para probar
implicaciones en el clculo de predicados de primer orden
Ejs: Prolog y sus dialectos

Funcionales
Basados en la reduccin. Un programa se evala por sustituciones
sucesivas de las expresiones por otras ms simples
No se distinguen proposiciones de expresiones
Los nombres solo identifican expresiones y funciones
Las funciones pueden ser argumentos y resultados de funciones
Ejs: LISP, HOPE, Miranda, Haskell, FP, Scheme, Racket

1 - Introduccin General Fund. Informtica / Informtica 28 / 49


Realizacin de Programas en Lenguajes Imperativos

Hay tcnicas de Ingeniera del Software que consisten en


descomponer el trabajo total en partes independientes que pueden
desarrollar distintas personas
En programacin tradicional llamada programacin estructurada se
trata de descomponer el problema en problemas menores ms
sencillos hasta llegar a una solucin fcilmente traducible a un
lenguaje
En programacin orientada a objetos, se buscan objetos relacionados
con la vida real y se detecta qu acciones pueden llevar a cabo esos
objetos

1 - Introduccin General Fund. Informtica / Informtica 29 / 49


Definiciones. Intrprete, Compilador, Compilador
Cruzado

Compilador: Programa que lee un programa escrito en un lenguaje


fuente y lo traduce a otro programa equivalente escrito en
un lenguaje objeto. Es un traductor.
Intrprete: Lee un programa e interpreta sus instrucciones.
Ejs: cmd, bash, perl, pyton, JVM, .NET

Compilador cruzado: Se genera un programa en una mquina diferente a


aquella en la cual se ejecutar.
El compilador se ejecuta en una mquina y el
resultado se ejecutar en otra mquina distinta.
(diferente arquitectura y/o sistema operativo)

1 - Introduccin General Fund. Informtica / Informtica 30 / 49


Elementos de Programacin

expresiones, sentencias, mtodos, clases

1 - Introduccin General Fund. Informtica / Informtica 31 / 49


Programas Fuente, Programas Objeto, Bytecodes

Caso de compilacin a cdigo nativo


Programa fuente - compilador - programa objeto (-> ensamblador -
ejecutable)
Caso de mquina virtual
Programa fuente - compilador - programa objeto (bytecodes si se usa
java) - intrprete - programa objeto
as funcionan java y .NET de Microsoft

1 - Introduccin General Fund. Informtica / Informtica 32 / 49


Lenguaje Java

Da soporte para la programacin orientada a objetos


Tiene gestin de tipos absolutamente segura
Seguridad en un lenguaje de programacin significa que permite
especificar invariantes y que su implementacin garantiza que esos
invariantes se conservan
los invariantes ms importantes son los de memoria: la memoria
ocupada por una variable solamente se puede usar de la forma
permitida por el lenguaje.
no se permite la desubicacin manual de las estructuras de datos
(recolector automtico de basura)

1 - Introduccin General Fund. Informtica / Informtica 33 / 49


1 Objetivos

2 Introduccin

3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo

4 Sistema de Archivos

5 Sistemas Operativos

6 Programacin
Jerarqua de Lenguajes

7 Bases de Datos

8 Redes de Computadores

9 Comprender cmo funciona la informtica


Bases de Datos

Qu son las bases de datos?


Sirven para recordar el estado de una aplicacin
aunque se caiga el sistema o se apague la mquina, los datos
permanecen guardados a la espera de ser usados de nuevo

Se usan en casi todas las aplicaciones de gestin


Existen proyectos especializados en proveer motores de bases de
datos de uso general, de forma que se pueden incorporar a los
programas de gestin ahorrando mucho tiempo de desarrollo
Para facilitar el uso, aprendizaje e intercambiabilidad de estos
motores, se ha estandarizado su manejo
muchos motores de bases de datos usan un lenguaje estndar de
consulta de los datos, el SQL

1 - Introduccin General Fund. Informtica / Informtica 35 / 49


Algunas Bases de Datos

MySQL
Oracle
Microsoft SQLServer
PostgreSQL

1 - Introduccin General Fund. Informtica / Informtica 36 / 49


1 Objetivos

2 Introduccin

3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo

4 Sistema de Archivos

5 Sistemas Operativos

6 Programacin
Jerarqua de Lenguajes

7 Bases de Datos

8 Redes de Computadores

9 Comprender cmo funciona la informtica


Redes

Las computadoras se comunican entre s a travs de la red


La conexin fsica entre computadoras se realiza normalmente por
cable o wifi (ondas de radio)
Adems de la conexin fsica hace falta algn protocolo para que las
mquinas se entiendan (TCP)

1 - Introduccin General Fund. Informtica / Informtica 38 / 49


Computacin personal, distribuida y
cliente/servidor

La computacin personal requiere nicamente una mquina en la


que trabaja un usuario
El modo de trabajo cliente/servidor consiste en que una mquina
especial, el servidor, ofrece algn servicio de computacin a aquellas
mquinas, clientes, que de algn modo establecido se conecten a ella
En la computacin distribuida un usuario se conecta a una mquina y
el procesado se realiza de manera transparente en varias mquinas
unidas en una red de ordenadores

1 - Introduccin General Fund. Informtica / Informtica 39 / 49


1 Objetivos

2 Introduccin

3 Computador
Mquina que Ejecuta Algoritmos
Estructura del computador
Nocin de Algoritmo

4 Sistema de Archivos

5 Sistemas Operativos

6 Programacin
Jerarqua de Lenguajes

7 Bases de Datos

8 Redes de Computadores

9 Comprender cmo funciona la informtica


Aparatos

Dnde hay programas informticos?


En muchos sitios incluso inesperados
PCs
Mviles, tabletas
Electrodomsticos
Dispensadores automticos: bebidas, tabaco,
Vehculos: coches, aviones, drones, Mars Path Finder,
Un reloj, unas gafas?

1 - Introduccin General Fund. Informtica / Informtica 41 / 49


Instrucciones de un programa

El aparato ha de recibir las instrucciones para actuar


Esas instrucciones las inventa un humano para que el aparato
reproduzca el comportamiento esperado
Como el aparato no reconoce el lenguaje de las personas (de
momento) se han inventado ciertos lenguajes de programacin
Estos lenguajes son mucho ms simples que el lenguaje humano y se
puede automatizar su comprensin por las mquinas
Es un reto disear lenguajes de programacin que siendo simples
sean a la vez cmodos para las personas

1 - Introduccin General Fund. Informtica / Informtica 42 / 49


Disear, Codificar, Compilar, Ejecutar, Probar

El hecho de inventarse una forma de resolver un problema creando


un programa, se llama disear
Traducir esas ideas en cdigo escrito en un lenguaje de programacin
se llama codificar
La conversin de ese programa en un ejecutable se llama compilar
Lanzar ese ejecutable para que realice las operaciones se llama
ejecutar
Usar el programa en diversas situaciones para comprobar que
funciona bien recibe el nombre de probar

1 - Introduccin General Fund. Informtica / Informtica 43 / 49


Compilar

Un programa se escribe en un fichero de texto o en varios, con


instrucciones de un lenguaje de programacin
Estos ficheros se llaman cdigo fuente del programa
Un programa especial llamado compilador traduce estos ficheros a
unas instrucciones propias del microprocesador en el cual ha de
funcionar el programa
El resultado de la compilacin ser uno o ms ficheros con contenido
binario, que puede ser un ejecutable .exe en windows

1 - Introduccin General Fund. Informtica / Informtica 44 / 49


Ejecutar

Cuando arrancamos un programa, por ejemplo con un doble clic del


ratn sobre un icono, se inicia la ejecucin de un archivo ejecutable
Este archivo es el resultado de una compilacin que alguien ha
realizado en su lugar de trabajo
El programa que puede estar grabado en el disco duro, se carga en la
memoria principal
A partir de entonces, las instrucciones del programa van entrando de
una en una junto con los datos que necesitan al micro, y all se
ejecutan
La ejecucin de una operacin consiste en que se activa el circuito del
micro responsable de la ejecucin de esa operacin

1 - Introduccin General Fund. Informtica / Informtica 45 / 49


Microprocesador

Un microprocesador es capaz de hacer unas pocas operaciones muy


muy simples pero muy rpidamente
Cmo? Mediante la electrnica digital se puede crear un circuito
electrnico especializado en realizar casi cualquier operacin
La electrnica digital solo trata con valores cierto y falso (true = 1 = 5V.;
false = 0 = 0V.)
Las entradas de las operaciones se introducen al circuito por unas
lneas del circuito como unos y ceros
Las salidas se obtendrn por otras lneas tambin como unos y ceros
El interior del circuito se construye con muchos interruptores que
combinados inteligentemente se activan y desactivan unos a otros
Estos interruptores son los famosos transistores, los cuales se
integran a millones en un microprocesador actual
1 - Introduccin General Fund. Informtica / Informtica 46 / 49
Ensamblador

El fabricante del micro elige un conjunto de operaciones que a pesar


de ser muy simples permitan, combinndose, hacer tareas mucho
ms complejas
El fabricante integra esas operaciones en el micro y las documenta
para que los usuarios las conozcan
Un programa escrito con estas operaciones tiene un aspecto de unos
y ceros, y casi nadie programa as
Existe un lenguaje especial para cada micro que acerca a las personas
estas instrucciones llamado lenguaje ensamblador
El ensamblador permite programar con ficheros de texto ya que a
cada operacin se le da un nombre
Por ejemplo: ADD a, b, c puede significar sumar los enteros
contenidos en los registros a y b y dejar el resultado en el registro c

1 - Introduccin General Fund. Informtica / Informtica 47 / 49


Lenguaje de alto nivel

Pocas personas programan en lenguaje ensamblador


Su extrema simplicidad hace difcil escribir tareas complejas
Para facilitar la vida a los programadores, se han inventado diversos
lenguajes llamados de alto nivel
Estos lenguajes ofrecen instrucciones complejas ms fciles de usar
Adems permiten escribir programas sin tener que pensar a cada
momento qu microprocesador se va a usar, dado que las
instrucciones del lenguaje son las mismas para todos los micros
Para que esto funcione existen unos programas especiales que
traducen el programa escrito en las instrucciones de alto nivel al
lenguaje reducido de la mquina (el micro en el que se ejecutar)
Estos traductores son los compiladores

1 - Introduccin General Fund. Informtica / Informtica 48 / 49


Conceptos vistos en este captulo

Bsico: hardware
Bsico: software
Bsico: datos
Bsico: hardware: procesador
Bsico: software: cdigo mquina
Bsico: hardware: memoria
Bsico: hardware: almacenamiento persistente
Bsico: hardware: dispositivos de entrada y salida
Bsico: software: sistema operativo
Bsico: software: programas, aplicacin
Bsico: datos: ficheros
Bsico: datos: ficheros: ficheros de texto
Bsico: datos: ficheros: ficheros binarios
1 - Introduccin General Fund. Informtica / Informtica 49 / 49

You might also like