fundamentos de informática tema i introducciónjgr/docencia/intro.pdf · contenido 1 el ordenador...

61
Fundamentos de informática Tema I Introducción Julio Garralón Ruiz Departamento de Lenguajes y Ciencias de la Computación Escuela Politécnica Superior Universidad de Málaga 2013/2014 Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 1/ 61

Upload: others

Post on 18-Mar-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Fundamentos de informáticaTema I

Introducción

Julio Garralón Ruiz

Departamento de Lenguajes y Ciencias de la ComputaciónEscuela Politécnica Superior

Universidad de Málaga

2013/2014

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 1/ 61

Page 2: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Contenido

1 El ordenador como sistema2 Sistemas de numeración posicionales

El sistema binarioConversiones

3 CodificaciónCodificaciones de caracteresCodificaciones numéricas

4 Componentes de un ordenadorLa componente físicaLa componente lógica

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 2/ 61

Page 3: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

El ordenador como sistemaInformática (según la R.A.E.L.)

Conjunto de conocimientos científicos y técnicos que posibilitanel tratamiento automático de la información.

Ordenador (según la R.A.E.L.)

Máquina capaz de tratar información de forma automática bajoel control de un programa.

Ordenador+

programaInform. en bruto Inform. elaborada

cantidades,hechos, ideas...

cálculos,documentos...

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 3/ 61

Page 4: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

El ordenador como sistemaDefiniciones

Programa

Secuencia de instrucciones no ambigüas que resuelve unatarea que puede ser interpretada y ejecutada en un ordenador.

ProgramadorPersona que desarrolla programas.

UsuarioPersona que utiliza el ordenador con programas ya desarrolla-dos.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 4/ 61

Page 5: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

El ordenador como sistemaOrdenadores analógicos

Ordenadores que almacenan y procesan la información uti-lizando directamente magnitudes físicas continuas.

Ordenadores digitales

Ordenadores que almacenan y procesan la información, previa-mente codificada, utilizando magnitudes físicas discretas.

Bitsmagnitudes

on/offdatos en bruto datos elaborados

números, texto cálculos,documentos...

codificación decodificación

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 5/ 61

Page 6: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Sistemas de numeración posicionalesSistema de numeraciónConjunto de símbolos (cifras) que representan cantidades y re-glas que permiten operar fácilmente con ellas.

NúmeroConcatenación de cifras (o dígitos) que representan de formaúnica una cantidad.

Sistema de numeración posicionalEl valor representado depende del conjunto de cifras y su posi-ción dentro del número.

Las posiciones (implícitas) son números enteros, positivos a laizquierda y negativos a la derecha del punto decimal:

... d3 d2 d1 d0 . d−1 d−2 d−3 ...

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 6/ 61

Page 7: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Sistemas de numeración posicionalesEjemplo: número 724.15

7 → d22 → d14 → d01 → d−15 → d−2

Cada posición se asocia a un peso según el vector de pesos( ... p3 p2 p1 p0 p−1 p−2 p−3 ... )

El valor del número es la suma:...d3p3+d2p2+d1p1+d0p0+d−1p−1+d−2p−2+d−3p−3+ ...

Son usuales los vectores de pesos que son potencias enterasde una base ∈ N :

( ... b3 b2 b1 b0 b−1 b−2 b−3 ... )

Las potencias coinciden con las posiciones de cada dígito.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 7/ 61

Page 8: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Sistemas de numeración posicionalesBase decimal: 724.15(10

7 · 102 + 2 · 101 + 4 · 100 + 1 · 10−1 + 5 · 10−2 =

700 + 20 + 4 + 0.1 + 0.05 =

724.15

Base 7: 624.15(7

6 · 72 + 2 · 71 + 4 · 70 + 1 · 7−1 + 5 · 7−2 =

294 + 14 + 4 + 0.142857143 + 0.102040816 =

312.244897959

Base binaria: 101.101(2

1 · 22 + 0 · 21 + 1 · 20 + 1 · 2−1 + 0 · 2−2 + 1 · 2−3 =

4 + 0 + 1 + 0.5 + 0 + 0.125 =

5.625

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 8/ 61

Page 9: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Sistemas de numeración posicionalesEjemplo: una apuesta de quiniela (14 partidos a 1, X, 2):

11X2X11X21X112 → 11020110210112(3

2x30 + 31 + 32 + 34 + 2x35 +

37 + 38 + 2x310 + 312 + 313

= 2253191(10

¿Cómo se decodifica la apuesta 3351253? ¿Y la5782969?En informática son habituales:Sistema Pesos Cifrasbinario 2i { 0, 1 } ← binary digitsoctal 8i { 0, 1, 2, 3, 4, 5, 6, 7 }hexadecimal 16i { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,

A, B, C, D, E, F}

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 9/ 61

Page 10: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Sistema binarioVector de pesos

Pesos enteros Pesos fraccionarios Los primeros

20 121 222 423 824 1625 3226 6427 12828 25629 512210 1024

2−1 0.52−2 0.252−3 0.1252−4 0.0625

0 01 12 103 114 1005 1016 1107 1118 10009 1001

10 1010

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 10/ 61

Page 11: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Sistema binarioConversiones

Desde cualquier base, b, a decimal:∑∞

i=−∞ bidi

10100.001(2 → 20.125C8A7.F(16 → 51367.9375

Desde decimal a otra base, b:Parte entera: restos de divisiones sucesivas por la base.Parte fraccionaria: partes enteras de multiplicacionessucesivas por la base.

26.1875 → 11010.0011(274.423 → 1001010.01101...(20.2 → 0.0011(20.48 → 0.25140(60.3 → 0.1(40.3 → 0.2(6

¡Ojo!0.9 ≡ 10.5(6 ≡ 1(61.5(6 ≡ 2(6

Entre bases no decimales: a través de base decimal.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 11/ 61

Page 12: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Sistema binarioConversiones rápidas

Hexadec. Binario Octal Decimal=162 28 256

27 128=26 82 64

25 32=161 24 16

=23 81 822 421 2

= =160 20 80 12−1 0.52−2 0.25

=2−3 8−1 0.125=16−1 2−4 0.0625

Observación:16 = 2 4 ∈ N

8 = 2 3 ∈ N

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 12/ 61

Page 13: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Sistema binarioConversiones rápidas

En general, si

b1 = bk2

1 dígito en base b1 ↔ k dígitos en base b2

Ejemplos:2746.16(8 ↔ 10111100110.00111(2

5E6.38(16 ↔ 10111100110.00111(2

113212.03(4 ↔ 10111100110.00111(2

765.38(9 ↔ 212012.1022(3

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 13/ 61

Page 14: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Sistema binarioOperaciones lógicas

UnariasBit NOT0 11 0

BinariasBit 1 Bit 2 AND NAND OR NOR XOR

0 0 0 1 0 1 00 1 0 1 1 0 11 0 0 1 1 0 11 1 1 0 1 0 0

Ejemplos con números binarios:

NOT 1010011(2 → 101100(21010011(2 AND 11001(2 → 10001(21010011(2 XOR 11001(2 → 1010(2

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 14/ 61

Page 15: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

CodificaciónConcepto

CodificaciónCualquier correspondencia biunívoca entre los elementos de 2conjuntos que permita su decodificación.

Codificación binariaCodificación que utiliza el conjunto de bits {0, 1}.

A tener en cuenta:

Con n bits se codifican 2n elementos.Para codificar m elementos se necesitan dlog2me bits.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 15/ 61

Page 16: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

CodificaciónCodificación binaria

Ejemplos

bits0/1

26 letrasa, b... z

10 dígitos0, 1... 9

dlog2 26e → 5 bitsa 00001b 00010c 00011... ...z 11010

dlog2 10e → 4 bits0 00001 00012 0010... ...9 1001

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 16/ 61

Page 17: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

CodificaciónPrefijos binarios

Es habitual utilizar prefijos de origen griego:Prefijos SI Prefijos IEC

tradicionales binarios modernoskilo- 103 kibi- 210 = 1 024mega- 106 mebi- 220 = 1 048 576giga- 109 gibi- 230 = 1 073 741 824tera- 1012 tebi- 240 = 1 099 511 627 776peta- 1015 pebi- 250 = 1 125 899 906 842 624exa- 1018 exbi- 260 = 1 152 921 504 606 846 976

La equivalencia es aproximada, pero no exacta.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 17/ 61

Page 18: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

CodificaciónCodificaciones de caracteres

CarácterSímbolo mínimo que representa información legible.

ByteNúmero de bits necesario para codificar un carácter.

Codificaciones estándares:

ASCII, de 7 bits cada carácter.ASCII extendido: Latin-1, Latin-9, de 8 bits.UCS, de 2 bytes (16 bits).UTF-8, de 1 a 4 bytes.UTF-16, de 1 o 2 palabras de 2 bytes.UTF-32, 4 bytes.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 18/ 61

1 byte → 1 octeto (8 bits)

Page 19: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

CodificaciónCódigo ASCII

American Standard Code for Information Interchange0 1 2 3 4 5 6 7

0 <NUL> <DLE> <SP> 0 @ P ` p1 <SOH> <DC1> ! 1 A Q a q2 <STX> <DC2> " 2 B R b r3 <ETX> <DC3> # 3 C S c s4 <EOT> <DC4> $ 4 D T d t5 <ENQ> <NAK> % 5 E U e u6 <ACK> <SYN> & 6 F V f v7 <BEL> <ETB> ’ 7 G W g w8 <BS> <CAN> ( 8 H X h x9 <HT> <EM> ) 9 I Y i yA <LF> <SUB> * : J Z j zB <VT> <ESC> + ; K [ k {C <FF> <FS> , < L \ l |D <CR> <GS> - = M ] m }E <SO> <RS> . > N ^ n ~F <SI> <US> / ? O _ o <DEL>

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 19/ 61

Page 20: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

CodificaciónCodificaciones numéricas

Números enteros

Binario puro: +24 00011000

Signo-magnitud: -24 10011000

Complemento a 1: -24 11100111

Complemento a 2: -24 11101000

En exceso de 127: -24 01100111

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 20/ 61

El número de bits determinael rango de valores.

Page 21: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

CodificaciónCodificaciones numéricas

Números reales en coma fija

Según el valor, pueden sobrar bits: +11000.01

0signo

00011000p. entera

01000000p. fraccionaria

O pueden faltar bits: -0.000011011011

1signo

00000000p. entera

00001101p. fraccionaria

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 21/ 61

Page 22: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

CodificaciónCodificaciones numéricas

Números reales en coma flotante

Formato: mantisa * baseexponente

El punto decimal flota hasta el primer bit significativo.La mantisa contiene los bits significativos.El exponente contiene el número de posiciones flotadas.

El punto puede flotar a la derecha o a la izquierda:+11000.0 = +0.11 * 25

0signo-m

11000000mantisa

0signo-e

0101exponente

-0.000011011011 = -0.11011011 * 2−4

1signo-m

11011011mantisa

1signo-e

0100exponente

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 22/ 61

Page 23: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Componentes de un ordenadorSoporte físico o hardware. Elementos tangibles.

Soporte lógico o software. Programas y datos.void Intercambiar(int v[], int k){int temporal;temporal = v[k];v[k] = v[k+1];v[k+1] = temporal;}

000010101010101001010101010001110101010100000101000010101010101011101011010111001100101111111010

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 23/ 61

Page 24: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaLa placa madre

Microprocesador

Slots para RAM

Buses de E/S

Puertos de E/S

E/S Disco Duro

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 24/ 61

Page 25: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaLa Arquitectura von Neumann

Es una arquitectura ideal, basada en el famoso informe deJohn von Neumann: First Draft of a Report on the EDVACde 1945, de la Universidad de Pennsylvania.

Características principales:1 Concepto programa almacenado.2 Lógica binaria (George Boole).3 División en 3 unidades funcionales (Charles Babbage):

Unidad de procesamiento (UCP).Memoria principal (MP).Subsistema de entrada/salida (ES).

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 25/ 61

Page 26: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaLa Arquitectura von Neumann

Unidad deprocesamiento

Buses Memoriadatos +

instrucciones

interfaz E/S

pantallateclado disco

Subsistema de E/S

mundoelectrónico

mundoexterno

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 26/ 61

Page 27: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaLa Unidad Central de Procesamiento

UnidadArit-Log

Unidadde

ControlCP 0C02

RI 10110001...

M1 BC03...

D1 00110010...

AC 10100100

Registros... bus control

bus direcciones

bus datos

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 27/ 61

Page 28: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaLos buses

Tipos según número de canales (hilos):Serie: bits sucesivos en un solo canal.Más lentos, habituales en dispositivos: USB, Firewire.Paralelos: bits simultáneos en grupos: 8, 16, 32...Más rápidos, habituales en la placa madre: PCI, IDE, AGP.

Tipos según su contenido:De control: señales que pone la UCP.De direcciones: posiciones de memoria que pone la UCP.De datos: datos que pone la UCP o la memoria.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 28/ 61

Page 29: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaLa memoria

Principal o internaTecnología electrónica.Alta velocidad, pero volátil.Coste alto: capacidad limitada.Directamente accesible por la UCP.Acceso aleatorio.

Secundaria, masiva o externaVarias tecnologías: electrónica, óptica, magnética.Velocidad baja, pero permanente.Coste bajo: gran capacidad.Necesidad de circuitería interfaz: controladores.Acceso secuencial, por bloques...

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 29/ 61

Page 30: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaOrganización de la Memoria Principal

... ...

00110000 0C01

11011011 0C02

11010111 0C03

01010001 0C04

... ...

00111101 BC01

10111011 BC02

00110101 BC03

01111101 BC04... ...

MP mapa

2n palabras

control R/W

direcciones

datos

n

mU.C.P.

long. palabra

m bits

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 30/ 61

Page 31: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaEl Subsistema de Entrada/Salida

Unidad deprocesamiento

Buses Memoriadatos +

instrucciones

Adaptador

Bus de E/S

Contr. ES

pantalla

Contr. ES

teclado

Contr. ES

disco

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 31/ 61

Page 32: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaTipos de instrucciones

Intrucciones de tratamiento:Aritmético: el resultado es un número.Lógico: el resultado es true o false.

Intrucciones de transferencia de datosregistros <-> memoria.registros <-> e/s.memoria <-> memoria.memoria <-> e/s.

Intrucciones de control de flujoDecisiones.Repeticiones.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 32/ 61

Dentro de la UCP.

Involucran los buses.

Involucran al C.P.

Page 33: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaEl ciclo máquina

Fase de fetching

Lectura de la instrucción almacenada en la posición dememoria indicada por el contador de programa CP.

CPU

UCCP 0C02RI ...

...

M1 BC03D1 ...

...

AC 10100100

Reg

ALU

controlLeer MP

direcciones0C02

datos 10110001

... ...00110000 0C0110110001 0C0200101110 0C0311010001 0C0401110101 0C05

... ...

... ...00111101 BC0110111001 BC0200110010 BC0311110000 BC0400111101 BC05

... ...

MPzonainstr.

zonadatos

CLKJulio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 33/ 61

Page 34: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaEl ciclo máquina

Fase de decodificación

ADD #M1 BC04;Sumar el operando #M1 con el contenido del AC y el re-sultado guardarlo en la posición de memoria BC04.

CPU

UC

suma

↑↑↑CP 0C03RI 10110001

...

M1 BC03D1 ...

...

AC 10100100

Reg

ALU

control

direcciones

datos

... ...00110000 0C0110110001 0C0200101110 0C0311010001 0C0401110101 0C05

... ...

... ...00111101 BC0110111001 BC0200110010 BC0311110000 BC0400111101 BC05

... ...

MPzonainstr.

zonadatos

CLKJulio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 34/ 61

Page 35: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaEl ciclo máquina

Fase de búsqueda de operandos

ADD #M1 BC04;El operando #M1 es el contenido de la posición dememoria indicada por el registro M1.

CPU

UCCP 0C03RI 10110001

...

M1 BC03D1 ...

...

AC 10100100

Reg

ALU

controlLeer MP

direccionesBC03

datos 00110110

... ...00110000 0C0110110001 0C0200101110 0C0311010001 0C0401110101 0C05

... ...

... ...00111101 BC0110111001 BC0200110010 BC0311110000 BC0400111101 BC05

... ...

MPzonainstr.

zonadatos

CLKJulio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 35/ 61

Page 36: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaEl ciclo máquina

Fase de ejecución

ADD #M1 BC04;La ALU se activa y suma lo que haya en los registros D1y AC.

CPU

UCCP 0C03RI 10110001

...

M1 BC03D1 00110010

...

AC 10100100

Reg

+

control

direcciones

datos

... ...00110000 0C0110110001 0C0200101110 0C0311010001 0C0401110101 0C05

... ...

... ...00111101 BC0110111001 BC0200110010 BC0311110000 BC0400111101 BC05

... ...

MPzonainstr.

zonadatos

CLKJulio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 36/ 61

Page 37: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaEl ciclo máquina

Fase de almacenamiento de resultados

ADD #M1 BC04;El resultado, que queda en el acumulador, se guarda enla posición de memoria BC04.

CPU

UCCP 0C03RI 10110001

...

M1 BC03D1 ...

...

AC 11010110

Reg

ALU

controlEscribir MP

direccionesBC04

datos11010110

... ...00110000 0C0110110001 0C0200101110 0C0311010001 0C0401110101 0C05

... ...

... ...00111101 BC0110111001 BC0200110010 BC0311010110 BC0400111101 BC05

... ...

MPzonainstr.

zonadatos

CLKJulio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 37/ 61

Page 38: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaEl ciclo máquina

Nueva fase de fetching

Lectura de la instrucción almacenada en la posición dememoria indicada por el contador de programa CP.

CPU

UCCP 0C03RI 10110001

...

M1 BC03D1 ...

...

AC 11010110

Reg

ALU

controlLeer MP

direcciones0C03

datos 00101110

... ...00110000 0C0110110001 0C0200101110 0C0311010001 0C0401110101 0C05

... ...

... ...00111101 BC0110111001 BC0200110010 BC0311010110 BC0400111101 BC05

... ...

MPzonainstr.

zonadatos

CLKJulio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 38/ 61

Page 39: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaEl ciclo máquina

Fase de decodificación

JUMP 0CF5;Saltar incondicionalmente a la instrucción 0CF5.

CPU

UC

salto

↑↑↑CP 0C04RI 00101110

...

M1 BC03D1 ...

...

AC 11010110

Reg

ALU

control

direcciones

datos

... ...00110000 0C0110110001 0C0200101110 0C0311010001 0C0401110101 0C05

... ...

... ...00111101 BC0110111001 BC0200110010 BC0311010110 BC0400111101 BC05

... ...

MPzonainstr.

zonadatos

CLKJulio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 39/ 61

Page 40: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaEl ciclo máquina

Fase de ejecución

JUMP 0CF5;Cambio del contenido del contador de programa.

CPU

UCCP 0CF5RI 00101110

...

M1 BC03D1 ...

...

AC 11010110

Reg

ALU

control

direcciones

datos

... ...00110000 0C0110110001 0C0200101110 0C0311010001 0C0401110101 0C05

... ...

... ...00111101 BC0110111001 BC0200110010 BC0311010110 BC0400111101 BC05

... ...

MPzonainstr.

zonadatos

CLKJulio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 40/ 61

Page 41: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente físicaEl ciclo máquina

Nueva fase de fetching

Nueva búsqueda de instrucción.

CPU

UCCP 0CF5RI 00101110

...

M1 BC03D1 ...

...

AC 11010110

Reg

ALU

controlLeer MP

direcciones0CF5

datos ...

... ...00110000 0C0110110001 0C0200101110 0C0311010001 0C0401110101 0C05

... ...

... ...00111101 BC0110111001 BC0200110010 BC0311010110 BC0400111101 BC05

... ...

MPzonainstr.

zonadatos

CLKJulio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 41/ 61

Page 42: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente lógicaLa estructura en capas de software

Software de usuario

Software de sistemas

Sistema Operativo

Hardware

utilizautiliza

utiliza

Cada capa puede utilizar capas más interiores, pero lasinteriores no utilizan las exteriores.Cada capa aísla detalles innecesarios a las exteriores.Siempre debe existir la capa del sistema operativo.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 42/ 61

Page 43: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente lógicaEl sistema operativo

Permite el uso eficiente y fiable de los recursos delordenador:

Tiempo de procesamiento.Memoria principal.Dispositivos E/S.

Gestiona:Los procesos: programas en ejecución.La memoria principal.El subsistema de E/S.El sistema de archivos.

Dispone de:Núcleo o kernel siempre residente en MP.Interfaz de usuario (gráfico o línea de comandos).Llamadas al sistema y bibliotecas para el programador.Manejadores de dispositivos o Drivers.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 43/ 61

Page 44: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

La componente lógicaEl sistema operativo

Principales sistemas operativos:UNIX, 1969.LINUX, 1991.DOS, 1981.MACOS, 1984.WINDOWS, 1985.Para dispositivos móviles: ANDROID, BLACKBERRY,IPHONEOS, PALMOS...

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 44/ 61

Page 45: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Lenguajes de programaciónAlto y bajo nivel

Código de alto nivel

Programas escritos en lenguajes próximos al ser humano.

No es directamente ejecutable en ordenador.Suele estar escrito en lenguajes de programación como C,C++, Java, Pascal.Es portable de una máquina a otra distinta.

Código de bajo nivel

Programas escritos en lenguajes próximos a la máquina.

Es directamente ejecutable en ordenador o “casi”.No es portable de una máquina a otra distinta.Escrito en ensamblador, en lenguaje máquina, o similar.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 45/ 61

Page 46: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Lenguajes de programaciónLenguaje Vs. traductor

Lenguaje de programación

Conjunto de símbolos y reglas para combinarlos para construirprogramas.

Es una especificación, un documento.Publicados por organizaciones de estándares.

TraductorSoftware que genera programas de bajo nivel a partir de progra-mas de alto nivel.

Leen código fuente y generan código objeto.Son específicos para cada tipo de máquina.Desarrollado por fabricantes.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 46/ 61

Page 47: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Lenguajes de programaciónTraductores

IntérpretesTraductores que traducen sentencia a sentencia y que luego eje-cutan directamente.

Ejecutan el programa fuente mientras se traduce.Orientados a programas sencillos.

CompiladoresTraductores que traducen globalmente y que generan un pro-grama objeto equivalente.

El compilador no ejecuta el programa que genera.Generan programas más rápidos que los interpretados.Permiten definir estructuras de datos más complejas.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 47/ 61

Page 48: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Lenguajes de programaciónEl proceso de compilación

EdiciónTiempo compilación

fuente

Compilación

Enlace

biblio.

incluye

objeto PruebaTiempo ejecución

ejec.

errores

programa

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 48/ 61

Las bibliotecas son subprogramasestándares ya compilados y probados.

Page 49: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Bases de datosSistema tradicional

Sistema tradicional de datosAgrupación de datos independientes entre sí, que se accedenmanualmente o a través de programas dedicados.

profesores

programaprofesores

alumnos

programaalumnos

asignaturas

programaasignaturas

titulaciones

programatitulaciones

Usuario1

Usuario2

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 49/ 61

Page 50: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Bases de datosSistema tradicional

Características:

Redundancia e inconsistencia de datos.Dificultad de acceso a datos relacionados.Problemas de seguridad.Dificultad de acceso concurrente.Datos repartidos y aislados.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 50/ 61

Page 51: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Bases de datosConcepto

Base de datosAgrupación de datos relacionados entre sí, organizados demanera que puedan accederse de forma automática.

Sistema gestor

Colección de programas que acceden a los datos de una basede datos de forma fácil y eficiente.

Sistema de Base de datosBase de datos + Sistema gestor.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 51/ 61

Page 52: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Bases de datosConcepto

Sistema gestor de BBDD:

Interactúa con el sistema operativo permitiendo un fácilacceso al usuario.Garantiza la consistencia y la no redundancia de datos.Implanta requisitos de seguridad.Tolerancia a fallos con copias de respaldo.Control de la concurrencia.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 52/ 61

Page 53: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Bases de datosConcepto

profesores alumnos asignaturas titulaciones

Sistema Gestor de la BBDDfacilidad, seguridad, concurrencia, consistencia

Usuario1

Usuario2

Usuario3

Usuario4

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 53/ 61

Page 54: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Bases de datosConcepto

Usuarios de una base de datos:

Programador de aplicacionesPrograma las consultas y/o modificaciones a medida.Administrador de la BBDD

Crea la BBDD.Gestiona los permisos de los usuarios.Mantiene la BBDD.

Usuario final de la BBDDConsulta y modifica los datos mediante

el sistema gestor,y los programas a medida.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 54/ 61

Page 55: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Bases de datosConcepto

Lenguaje de definición de datos (LDD)Lenguaje que describe la estructura y el acceso a los datos deuna BBDD.

Lenguaje de manipulación de datos (LMD)

Lenguaje que consultar, insertar, modificar y eliminar datos deuna BBDD.

El administrador suele utilizar el LDD, el usuario final el LMD, yel programador ambos.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 55/ 61

Page 56: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Bases de datosBases de datos relacionales

Bases de datos relacionalesBBDD basadas en las relaciones entre las distintas entidadesde toda la base de datos.

ProfesorDNInombredomiciliofnacim

Asignatura

codigonombreDNIProfcurso

AlumnoDNInombrefingresocodasig

entidad

atributos

imparte

matricula

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 56/ 61

Clave primariaIdentificación única paracada ocurrencia de entidad.

Page 57: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Bases de datosBases de datos relacionales

Tabla, fila y columnaTabla de la entidad Profesor

columna atributoDNI

columna atributodomicilio

fila→ 1 ocurrencia

DNI nombre domicilio fnacim23462265 Yoni C/ Laquesea 15/7/195813468105 Maikel C/ Masalla 3/8/195556170874 Anzoni C/ Masaca 16/12/197180437167 Satur C/ Posalli 25/2/1965

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 57/ 61

Page 58: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Bases de datosBases de datos relacionales

Las 12 Reglas de Codd determinan si una BBDD es relacional.Destacamos las 3 reglas siguientes:

Regla 1 Organización en tablas (entidades) de filas(ocurrencias) con columnas (atributos).

Regla 2 Acceso garantizado mediante tuplas(tabla,clave,columna).

Regla 5 Lenguaje de datos completo: definición ymanipulación: por ejemplo, SQL.

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 58/ 61

Page 59: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Bases de datosBases de datos relacionales

SQL (Structured Query Language)

Lenguaje de BBDD por excelencia. Primera versión en 1987.

Ejemplo sentencia SQL de definición:

CREATE TABLE profesores(DNI INT PRIMARY KEY,nombre VARCHAR(80),apellidos VARCHAR(80),domicilio VARCHAR(256),fnacim DATE)

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 59/ 61

Page 60: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Bases de datosBases de datos relacionales

Ejemplo sentencia SQL de manipulación (inserción):

INSERT INTO profesores(dni, nombre, apellidos, domicilio, fnacim)

VALUES(12345678, Pepelu, "Floo Distraido","C/Pelis Raras, 20", 22/06/1999)

Ejemplo sentencia SQL de manipulación (consulta):

SELECT (dni, nombre, apellidos)FROM profesoresWHEREdni > 9999999

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 60/ 61

Page 61: Fundamentos de informática Tema I Introducciónjgr/docencia/intro.pdf · Contenido 1 El ordenador como sistema 2 Sistemas de numeración posicionales El sistema binario Conversiones

Bases de datosBases de datos relacionales

BBDDs libres:

POSTGRESQL, 1989.MYSQL, 1995.SQLITE, 2000.FIREBIRD, 2008....

BBDDs comerciales:

DBASEdataBase Intelligence INC−TM , 1960.INFORMIXIBM−TM , 1970.ORACLEOracle Co.− TM, 1979.SYBASE SQL SERVERSybase−TM , 1988....

Julio Garralón Ruiz Fundamentos de informática 2013/2014 - Tema I 61/ 61