tema 1: introducción introducción a la informática introducción a los ordenadores introducción...

Post on 22-Jan-2016

264 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Tema 1: Introducción

•Introducción a la informática

•Introducción a los ordenadores

•Introducción a la programación

2Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

• Introducción a la informática– Información:

• Ideas o hechos transmitidos entre personas– Vallas publicitarias, prensa, clases...

– Datos:• Componentes básicos de la información: codificación

– Eslogan, titular,...

– Informática:• Conjunto de ciencias, técnicas o actividades que se dedican al estudio,

tratamiento y almacenamiento de los datos por medios automáticos.

– Sistema binario:• Representación de la información en base 2

• La información se codifica como una secuencia de símbolos binarios: 0 y 1.

3Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

• Tipos y codificación de la información:– Codificación

• Proceso que consiste en representar la información mediante una combinación de símbolos determinada: dos informaciones distintas tienen dos combinaciones distintas.

– Información analógica• La manera en que existe la información en el mundo real:

carta, fotos, una cinta de música.

– Información digital• Si en vez de utilizar papel, lápiz, magnetófonos, etc. se utiliza

un ordenador, la información pasa a ser digital

• La información analógica se traduce a codificación binaria

• Ejemplo telégrafo y código morse:

4Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

“Confirmo asistencia a boda. Llegaré Valencia sábado mañana temprano”

escribiré en código Morse la siguiente secuencia de símbolos:

“· · · ·· · · · · · · · · · · · · · · · · · · · · · “ etc...

Alfabeto (código) Morse

A · H · ·· · Ñ · · · · U · ·

B · · · I · · O V · · ·

C · · J · P · · W ·

D · · K · Q · X · ·

E · L · ·· R · · Y ·

F ·· · M S · · · Z · ·

G · N · T · ·

5Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

– Si se utilizara la codificación binaria:

“01000011 01001111 01000110 01001001 01010010 01001101 01001111

01000001 01010011 01001001 01010011 ...”

• Esta codificación es transparente para el usuario

• Del mismo modo que el texto se puede codificar imágenes y sonido, e incluso animaciones.

Código binario (ASCII)

A 01000001 H 01001000 Ñ 10100101 U 01010101

B 01000010 I 01001001 O 01001111 V 01010110

C 01000011 J 01001010 P 01010000 W 01010111

D 01000100 K 01001011 Q 01010001 X 01011000

E 01000101 L 01001100 R 01010010 Y 01011001

F 01000110 M 01001101 S 01010011 Z 01011010

G 01000111 N 01001110 T 01010100

6Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

• Unidades de medida de la información– Información analógica

• libro en páginas, fotografía en cm, cinta en minutos

– Información digital• Cada elemento de información (1,0) se llama bit (binary digit)

• Un conjunto de 8 bits es un byte (sería como una letra)

• Con un byte podemos conseguir 256 combinaciones distintas: 28

• 1024 bits/bytes = 1 Kbit/Kbytes = 210 bits/bytes

• 1024 Kbits/Kbytes = 1 Megabit/Megabyte = 220 bits/bytes

• 1024 Mbits/Mbytes = 1 Gigabit/Gigabyte = 230 bits/bytes

7Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

– Ocupación orientativa de distintos tipos de información:

Tipo de información Cantidad Tamaño

Texto simple Una página 3 kilobytes

Sonido de baja calidad Un minuto 1 megabyte

Sonido de alta calidad Un minuto 10 megabytes

Imagen en color Pantalla completa 500 kilobytes

Vídeo en movimiento Un minuto, ventana de 100x100 puntos

10 megabytes

8Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

• Introducción a los ordenadores– Ordenador: conjunto de sistemas mecánicos y

electrónicos diseñado para la gestión automática de los datos y que puede ser programado

– Hardware: Parte física de un ordenador: pantalla, teclado, impresora, discos, etc

– Software: Parte lógica de un ordenador: sistema operativo, entorno gráfico, datos, etc

• Hardware y software– Un ordenador tiene elementos de ambos grupos ya que

el hardware no sería operativo sin el software

9Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

• Estructura básica de un ordenador– Hardware:

• Dispositivos de entrada: ratón, teclado, joystick, trackball, etc.

• Dispositivos para el proceso de la información: procesador, memoria principal, electrónica de la placa base.

• Dispositivos de almacenamiento de la información: disco duro, diskette, cd-rom, zip, jazz, etc.

• Dispositivos de salida: monitor, impresora, plotter.

– Software:• Sistema operativo

• Programas de usuario

• Datos

– Existen diferentes clases de ordenadores, nosotros nos referiremos a los personales

10Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

• Componentes del ordenador– Información de entrada: Cualquier información que se

introduce en el ordenador para ser procesada: conocida, invariable y estática.

– Información de salida: Cualquier información generada en un ordenador por medios automáticos: desconocida, variable y dinámica

– Proceso: Mecanismo automático, conocido y bien definido por el cual un ordenador es capaz de obtener unos resultados a partir de la información de entrada proporcionada

11Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

Ejemplo:Proceso sumar dos números:• Información de entrada: los dos números a sumar (5 y 12)

• Proceso: Sumar los dos números (5+12)

• Información de salida: la suma de ambos (17)

– Procesador: componente principal del ordenador capaz de procesar la información

Información de entrada

ProcesoInformación

de salida

12Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

• El camino de la información– Introducir la información en el ordenador mediante los

dispositivos de entrada

– Almacenar la información en los dispositivos de almacenamiento

– Procesar la información para obtener resultados mediante los dispositivos de proceso

– Visualizar los resultados en los dispositivos de salida y/o almacenarlos

13Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

• Dispositivos de entrada– Ratón: se utiliza como puntero

– Teclado: dispositivo de entrada por excelencia• Se divide en: alfanumérico, numérico, desplazamiento, teclas

grises, teclas de función, teclas especiales.

• Dispositivos para el proceso de la información– Procesador: se conoce también como CPU (unidad

central de proceso), es el cerebro del ordenador, en los ordenadores personales se ha pasado del 8088 a 4,77 Mhz en 1978 a el Pentium IV a 3.0 Ghz en la actualidad.

14Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

– Memoria: la memoria principal RAM almacena la información cuando esta es procesada

– Electrónica de la placa base: circuito electrónico principal en el que se interconectan el procesador, la memoria y otros dispositivos

• Dispositivos de almacenamiento– Disco duro: unidades de almacenamiento de gran

capacidad

– Disquete: Son discos de pequeño tamaño y capacidad

– CD-Rom: Son como los cds de música

15Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

• Dispositivos de salida– Pantalla: permite visualizar imágenes y texto: tamaño,

resolución y frecuencia de refresco

– Impresora: permite presentar los resultados en un soporte definitivo (papel)

• Componentes: sistema de alimentación del papel, cabeza de impresión, placa de control, botones y luces de control, conectores y cables.

• Tipos: matriciales, de inyección y láser.

• Sistema operativo– Es el componente software más importante ya que entre

otras funciones se ocupa de que el Hw funcione bien

16Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

– Los SO más conocidos son: ms-dos, unix, linux, windows 3.1 95 98, NT, XP y 2003, OS/2, MacOS

– Funciones de un SO• Gestión de procesos: gestionar los recursos que soliciten• Gestión de la memoria: la memoria RAM es limitada• Gestión del almacenamiento secundario: guardar y recuperar información• Gestión de E/S: la información llegue a los dispositivos y sea tratada

correctamente• Gestión de archivos: la información se almacena en archivos y se

estructura en directorios

• Programas de usuario– Se compone de todo el software que no es el SO: Procesador de

texto, hojas de cálculo, agendas, juegos, aplicaciones gráficas, etc.

17Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

• Introducción a la programación– Algoritmo: Procedimiento bien definido que nos permite

resolver un problema. Se definen mediante pasos:Dados 2 números visualizar el mayor

InicioAveriguar el valor del primer númeroAveriguar el valor del segundo númeroSi el primer número es mayor que el segundo, visualizar el primero, sino

visualizar el segundoFin

– Programa: Representación de un algoritmo mediante un lenguaje de programación concreto. Secuencia de instrucciones de un lenguaje de programación que resuelven el problema planteado por un algoritmo.

18Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

– Implementar: traducir un algoritmo a un programa.

– Desarrollo del Software:• Diseño del algoritmo.

• Implementación.

• Ejecución y validación.

– Lenguaje de programación: Cjto de reglas, símbolos y palabras especiales empleadas para construir un programa.

– Instrucción: Cada una de las posibles órdenes que se pueden utilizar en un lenguaje de programación. El conjunto y sintaxis de instrucciones depende del lenguaje utilizado.

19Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

El problema debe ser susceptible de ser resuelto por ordenador:

Dados dos números visualizar el mayor (lenguaje C)#include <stdio.h>

int primer_numero, segundo_numero;

main()

{

scanf("Primer numero: ",&primer_numero);

scanf("Segundo numero: ",&segundo_numero);

if (primer_numero>segundo_numero) printf("%d",primer_numero);

else printf("%d",segundo_numero);

}

20Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

• Funcionamiento de un programa– Entrada de datos: el programa solicita los datos

necesarios para resolver el programa: los scanf– Proceso de la información: el programa opera

con los datos para obtener el resultado: una suma

– Salida de resultados: presentación en pantalla del resultado: los printf

21Fundamentos de Informática. DSIC/UPV

Los lenguajes de programación

Los lenguajes de programación pueden dividirse en dos tipos: Lenguajes de alto nivel: Lenguaje en el que un

programador escribe el programa. Se caracteriza por: ser independiente de la máquina y del Sistema Operativo para

el que se realiza el programa, y ser relativamente sencillo de entender por una persona

(programador) que escribe el programa.

Lenguajes de bajo nivel: Estos lenguajes se caracterizan justo por lo contrario que los anteriores: son difíciles de entender y manejar por una persona, y son dependientes de un procesador en concreto.

22Fundamentos de Informática. DSIC/UPV

Los lenguajes de Alto Nivel (I)

Dentro de los lenguajes de alto nivel pueden distinguirse varios tipos: Imperativos o procedurales (depende de a qué característica

se refiera se utiliza un nombre u otro). También llamados lenguajes de 3ª generación. El análisis de los problemas y el planteamiento del diseño de los programas que solucionan un determinado problema se lleva a cabo dividiendo el problema en tareas y subtareas. Ejemplos: C, Pascal, Fortran, ...

Orientados a Objetos. También llamados de 4ª generación. El planteamiento de la solución consiste en la identificación de objetos del mundo real con sus características y comportamiento. Ejemplos: C++, Java, Pascal-OO, ...

Otros: Plantean la solución del problema de la programación desde otros puntos de vista. Se utilizan a nivel de investigación.

23Fundamentos de Informática. DSIC/UPV

Los lenguajes de Alto Nivel (II)

• Según el tipo de aplicación que se les da se pueden clasificar de la siguiente manera:– De propósito general: BASIC, PASCAL, ADA, C, ...

– Científicos: FORTRAN, C, ...

– De gestión: COBOL, PRG, C, ...

– Educativos: LOGO, ...

– De Inteligencia Artificial: LISP, PORLOG, C, ...

– Programación en Internet: JAVA, PERL, HTML

• El lenguaje C/C++ es de los más utilizados hoy en día. También lo es el PASCAL y los que se refieren a Internet.

24Fundamentos de Informática. DSIC/UPV

Los lenguajes de Bajo Nivel

• Existen dos lenguajes de Bajo Nivel principalmente:

– El ensamblador: Lenguaje de símbolos en el que se expresan las instrucciones elementales que ha de realizar el procesador para el que se está programando.

– El lenguaje máquina: Lenguaje formado por cadenas de 1’s y 0’s que constituyen las instrucciones últimas que ejecuta el procesador. Es el único lenguaje de todos los anteriores que entiende el procesador directamente.

25Fundamentos de Informática. DSIC/UPV

Proceso de programación

Una vez el programador escribe un programa en un lenguaje de Alto Nivel, es necesario traducirlo a lenguaje máquina para que el procesador pueda ejecutarlo.

La traducción se realiza mediante un programa traductor. Existen dos tipos de traductores: CompiladoresCompiladores: Traducen el programa escrito en un lenguaje de

Alto Nivel a lenguaje máquina de un procesador determinado. En un proceso intermedio generan código en lenguaje ensamblador.

IntérpretesIntérpretes: Programas que interpretan las instrucciones de un determinado lenguaje de Alto Nivel y las van ejecutando a medida que las descifran. Ejemplo: Un navegador de Internet es un intérprete del lenguaje de Alto Nivel HTML.

Código fuente(Editor)

Compilador

Intérprete

Código ejecutable

Código intermedio

26Fundamentos de Informática. DSIC/UPV

Esquema del proceso de programación

Lenguaje de Lenguaje de programación programación de Alto Nivelde Alto Nivel

Fichero fuenteFichero fuente

Lenguaje Lenguaje máquina o máquina o

binariobinario

Fichero ejecutable Fichero ejecutable o programao programa

Extensión: *.c, *.pas *.f, etc. Extensión: *.exe

27Fundamentos de Informática. DSIC/UPV

Tipos de programas

• Programas de uso universal– Numéricos

– Procesadores de texto

– Gráficos

– Gestión

– De información remota

• Programas de uso particular– Informática

– Ingeniería

28Fundamentos de Informática. DSIC/UPV

Tema 1: Introducción

– Pseudocódigo• Aunque el conjunto de palabras y símbolos de los distintos

lenguajes es muy diferente su funcionalidad es similar

• Nos permite realizar un esbozo del programa final utilizando un lenguaje cercano al natural

• Después será sencillo traducir al lenguaje elegido.

Ejemplo: Dados 2 números, visualizar la suma de ambosInicio

Leer el primer número

Leer el segundo número

Calcular la suma de ambos

Visualizar el resultado

Fin

Tema 2: Elementos básicos de un programa

Tipos de datos, variable y constantes

Operadores y expresiones

30Fundamentos de Informática. DSIC/UPV

Tema 2: Elementos básicos de un programa

• Tipos de datos, variable y constantes– Tipo de datos: Clasificación disjunta que nos permite

distinguir una información de otra según su naturaleza. Dependiendo del tipo se podrán realizar unas operaciones u otras

– Variable: Simbología que nos permite asociar un nombre a un almacén de información temporal en un programa. Esta información puede variar durante la ejecución

– Constante: Lo mismo que la variable pero su contenido permanece constante

31Fundamentos de Informática. DSIC/UPV

Tema 2: Elementos básicos de un programa

– Tipos de datos• Numéricos

– Enteros: Valores numéricos enteros comprendidos entre -32768 y 32767 ó 0 y 65535 para un procesador de 16 bits.

– Reales: Subconjunto del conjunto matemático de los números reales (parte entera y parte real)

• Lógicos– Sólo pueden tomar los valores cierto y falso.

• Carácter– Valores alfanuméricos del código ASCII

– Variables• Para poder disponer de una información durante la ejecución

de un programa es necesario almacenarla en una variable. La mayoría de lenguajes precisan la declaración de la variable

32Fundamentos de Informática. DSIC/UPV

Tema 2: Elementos básicos de un programa

Ejemplo:tipo_variable nombre_variableint contadorunsigned int edadchar sexo

• La declaración tiene dos funciones: reservar la memoria necesaria para la información y permitir utilizar esa información en el programa para realizar operaciones.

– Constantes• La información que tiene una constante no varía, por lo que se

suelen utilizar para definir valores que se repiten a lo lago del programa

#define nombre_constante valor_constante#define pi 3.1416#define titulo “TEXTO FIJO”#define numero_alumnos 100

33Fundamentos de Informática. DSIC/UPV

Tema 2: Elementos básicos de un programa

• Operadores y expresiones– Operador: Símbolo que se asocia a una determinada

operación básica que se realiza con los datos en algún punto del programa

– Expresión: Combinación de variables, constantes, operadores, paréntesis y nombres de función escritas en un determinado orden que tiene la propiedad de ser evaluada y obtener un valor

– Operadores• Operadores aritméticos: realizan operaciones aritméticas, por

lo que utilizan valores numéricos o variables numéricas

34Fundamentos de Informática. DSIC/UPV

Tema 2: Elementos básicos de un programa

Unarios: Necesitan un único valor numérico para realizar la operación. Disponemos de los siguientes operadores:– Signo negativo (-): Se utilizar para indicar que el valor numérico

que lo sigue es un valor negativo. Ejemplo: int i = -10;– Incremento (++): Se utiliza para aumentar el valor de su operando

en una unidad.Ejemplo: (en lenguaje C)int i = 0 ; i++;/*La variable "i" contiene el valor 1 después de esta instrucción*/– Decremento (--): Se utiliza para disminuir el valor de su operando

en una unidad.Ejemplo: (en lenguaje C)int i = 0 ; i--;/* La variable "i" contiene el valor -1 después de esta instrucción */

35Fundamentos de Informática. DSIC/UPV

Tema 2: Elementos básicos de un programa

Binarios: Necesitan dos valores numéricos para realizar la operación.» Suma (+): Se utiliza para sumar dos valores numéricos.Ejemplo: int i = 0 ; j=10 ; k = 7 ; i=j+k;/* La variable "k" contiene la suma de los valores contenidos en las

variables "j" y "k", es decir 10+7=17, después de esta instrucció

» Resta (-): Se utiliza para restar dos valores numéricos.Ejemplo: int i = 0 ; j=10 ; k = 7 ; i=j-k;/* La variable "k" contiene la resta de los valores contenidos en las

variables "j" y "k", es decir 10-7=3, después de esta instrucción */» Multiplicación (*): Se utiliza para multiplicar dos valores numéricos.Ejemplo: int i = 0 ; j=10 ; k = 7 ; i=j*k;/* La variable "k" contiene la multiplicación de los valores contenidos

en las variables "j" y "k", es decir 10*7=70, después de esta instrucción */

36Fundamentos de Informática. DSIC/UPV

Tema 2: Elementos básicos de un programa

» División (/): Se utiliza para dividir dos valores numéricos. Dependiendo del tipo de datos (entero/real) la división obtendrá decimales o no.

Ejemplo: int i = 0 ; j=10 ; k = 7 ; i=j/k;

/* La variable "k" contiene la división entera de los valores contenidos en las variables "j" y "k", es decir 10/7=1, después de esta instrucción */

» Resto módulo (%): Se utiliza para obtener el resto de la división entera dos valores numéricos. Los operandos deben ser necesaramente números enteros.

Ejemplo: int i = 0 ; j=10 ; k = 7 ; i=j+k;

/* La variable "k" contiene el resto de dividir de los valores contenidos en las variables "j" y "k", es decir resto(10/7)=3, después de esta instrucción */

37Fundamentos de Informática. DSIC/UPV

Tema 2: Elementos básicos de un programa

• Operadores relacionales: Sirven para realizar comparaciones sencillas entre valores, el resultado será un valor lógico Menor que (<): Devuelve verdadero si el primer operando es

estríctamente menor que el segundo operando.Ejemplo: int i = 7 ; j=10 ;

if i<j printf(“i es menor que j”); else printf(“j es menor que i”); Menor o igual que (<=): Devuelve verdadero si el primer operando

es estríctamente menor o igual que el segundo operando. Ejemplo: int i = 7 ; j=10 ;

if i<=j printf(“i es menor o igual que j”);

else printf(“j es menor o igual que i”); Mayor que (>): Devuelve verdadero si el primer operando es

estríctamente mayor que el segundo operando.Ejemplo: int i = 7 ; j=10 ;

if i>j printf(“i es mayor que j”);else printf(“j es mayor que i”);

38Fundamentos de Informática. DSIC/UPV

Tema 2: Elementos básicos de un programa

Mayor o igual que (>=): Devuelve verdadero si el primer operando es estríctamente mayor o igual que el segundo operando.Ejemplo: int i = 7 ; j=10 ;

if i>=j printf(“i es mayor o igual que j”);

else printf(“j es mayor o igual que i”);

Igual (= =): Devuelve verdadero si el primer operando es estríctamente igual que el segundo operando.Ejemplo: int i = 7 ; j=10 ;

if i = = j printf(“i es igual a j”);else printf(“i es distinto de j”);

Distinto (! =): Devuelve verdadero si el primer operando es estríctamente distinto del segundo operando.Ejemplo: int i = 7 ; j=10 ;

if i != j printf(“i es distinto de j”);else printf(“i es igual a j”);

39Fundamentos de Informática. DSIC/UPV

Tema 2: Elementos básicos de un programa

• Operadores lógicos: permiten realizar expresiones relacionales o lógicas más complejas– Y (AND): Indica que se deben cumplir simultáneamente (a la vez)

las dos condiciones o expresiones lógicas que se proporcionan como operandos.

Ejemplo: int i = 7 ; j=10 ; k=15; if (i < j) and (i < k) printf(“i es menor que ambas j,k”);else printf(“i no es menor que ambas j,k”);– O (OR): Indica que se deben cumplir al menos una de las dos

condiciones o expresiones lógicas que se proporcionan como operandos.

Ejemplo: int i = 12 ; j=10 ; k=15; if (i < j) or (i < k) printf(“i es menor que j o k”);else printf(“i es menor que ambas j,k”);

40Fundamentos de Informática. DSIC/UPV

Tema 2: Elementos básicos de un programa

• NO (NOT): Este operador necesita un único operando y su efecto es negar la condición que representa dicho operando.

Ejemplo: int i = 7 ; j=10 ; if not (i < j) printf(“i no es menor que j”);else printf(“i es menor que j”);

– Operadores de asignación: Permiten modificar el valor asignado a una variable

Ejemplo: int i ; i=1; /* La variable i tiene el valor 1 despues de esta operación */i=5; /* La variable i tiene el valor 5 despues de esta operación */

– Expresiones: En general, una variable, constante, valor numérico, etc. es una expresión por sí misma, aunque eso sí, muy sencilla. Lo importante de la expresión es que puede ser evaluada y por lo tanto su resultado será de un tipo de datos determinado

41Fundamentos de Informática. DSIC/UPV

Tema 2: Elementos básicos de un programaExpresiones aritméticas Resultado

6/8 0

3.2/0.4 8.0

-11%3 3.84

(3+2)*(1+1) 10

(i*3)+(i*2) 10

Expresiones relacionales Resultado

(i<2) FALSO

(i<=2) VERDADERO

(i*3)>=(1+2)*i VERDADERO

(2+i)!=(1+i) FALSO

Expresiones lógicas Resultado

(i<2) or (i<10) VERDADERO

(7>=6) and (3= =3) VERDADERO

Not (i<1) FALSO

((i<1) or (i*2>1)) and (i>1) VERDADERO

top related