1 Introducción a Tecnologías de la InformaciónConceptos fundamentales
2 Capítulo IntroductorioLa Informática Capítulo Introductorio
3 1.1 Introducción La necesidad realizar tareas secuenciales y repetitivas, de cálculo y de gestión. Con la masificación de las computadoras, La ciencia y tecnología de la Computación e Informática pasan a estar entre las más promisorias. Sus avances han causado gran impacto en la sociedad y ha cambiado al vida laboral y privada de la gente.
4 1.2.1Definiciones Informática = IFORmación + AutoMATICADato = secuencia de símbolos procesables e interpretables Información = interpretación de datos Computadora = Máquina procesadora de datos, vía algún programa Programa = Secuencia de instrucciones que procesa datos Aplicación = Programas de apoyo a alguna actividad personal u organizacional Sistemas informáticos = Conjunto de elementos (recursos) para explotar las aplicaciones.
5 1.2.2 Recursos de un Sistema InformáticoHardware = Computadores, periféricos, cables de red, impresoras,... Software = Aplicaciones de usuario final, Herramientas de construcción de aplicaciones,.. Firmware = programas grabadas en la circuitería del hardware (ejemplo: en la ROM). Personal Informático = Recurso Humano
6 1.3 Representación de datosDatos y programas están codificadas en el sistema binario (un bit es 1 o 0). Unidades de medida 1 Byte = 8 Bit 1 Kilobyte (KB) = 210 bytes = 1024 byte 1 Megabyte (MB) = 220 bytes = 210 KB = 1024 KB 1 Gigabyte (GB) = 230 bytes = 210 MB = 1024 MB 1 Terabyte (TB) = 240 bytes = 210 GB = 1024 GB 1 Petabyte (PB) = 250 bytes = 210 TB = 1024 TB
7 Ejemplo 100 hojas,cada una con capacidad de 80*60 caracteres, cuanto espacio de almacenamiento necesita? 80*60*100 = caracteres = B (byte) = 234,375 KB = bits
8 1.4 Estructura de un ComputadorCPU Unidades de Entrada Unidades de Salida Unid.Control Unid. A.L. Memoria Principal Unidades Masivas de Almacenamiento
9 1.4.2 Factores relevantes Factores que influyen en la potencia de un computador: Frecuencia del reloj interno (generador de pulsos) Ancho de banda (bus de datos interno) Longitud de palabra (8,16,32 y 64 bits) Memoria principal (RAM)
10 Un PC Procesador AMD Athlon™ 1 GHz Chasis convertible sobremesa/minitorre 256 KB de memoria caché/256KB de segundo nivel 128MB de memoria SDRAM a 133MHz 30GB de disco duro Lector de DVD-ROM: 16X Tarjeta gráfica: Savage4 integrated 8 MB SDRAM Monitor: NEC VR17 de 17" Tarjeta de sonido: integrada en placa Altavoces: Labtec® LCS-2414 Modem: PCI 56K V90 Microsoft® Windows® 98 Paquete de software multimedia con: Word 2000, Works 2000, Money 2000, MS Flight Simulator, IBM Voice Express, Salvat 99, AND Route Europe 2000, Norton Antivirus 2000 y Acrobat Reader Un año de garantía a domicilio (en mano de obra y piezas) y asistencia telefónica de por vida
11 1.5 El Software Uno o más programas, desarrollados en algún lenguaje de programación. Lenguaje de programación (instrucciones) Lenguaje de máquina (dependiente de la máquina) Lenguaje de alto nivel (C, C++, Java, Cobol, Pascal, Fortran,..) Traductores (Compiladores e Intérpretes) La ejecución real es realizada por el Sistema Operativo
12 Tipos de Software El sistema operativo (S.O.) : El gran administrador de los recursos del computador (Unix (ultrix,unix V, Solaris, linux,...), DOS, Windows.... Netware , OS2,...,VMS,... Algunos Tipos de S.O. Monousuario Multiusuario Multiproceso
13 Clasificación Software Básico Software de construcciónSistema operativo,traductores, cargadores,... Software de construcción Lenguajes de Programación,Herr. Case, Adm. Bases de Datos,... Software de Aplicación Paquetes de Software (Lotus, Word,...) Aplicaciones específicas (Remuneraciones, Facturación, Contabilidad,...)
14 1.52 Organización de los datosBits ( ) Bytes (A2F4441BFF...) (8 bits) Símbolo (A, +, &, a, B, b,...) Números, letras, palabras, dato Lista o conjunto de datos (archivos) Conjunto de archivos (base de datos)
15 1.6 Clasificación Analógicas / Digitales / Híbridas Supercomputadorasbillones de operaciones / seg , con procesadores en paralelo Simulación de modelos complejos Macrocomputadoras (Mainframe) Uso intensivo en Memoria, procesamienot y E/S
16 1.6 Clasificación Minicomputadora Estaciones de TrabajoSimilar al Mainframe, en escala menor Estaciones de Trabajo Computador personal de alta potencia Utilización en tareas específicas CPU RISC, S.O. UNIX Ordenadores personales Computadora monousuario, de uso general
17 1.7 Aplicaciones de la informáticaPorqué de la informática Volumen explosivo de datos Evitar la duplicación de datos en distintos procesos Realización de tareas repetitivas y rutinarias Procesamiento distribuido de datos Necesidad de precisión y rapidez Globalización de los mercados Toma de decisiones en la gestión empresarial
18 1.7.2 Tendencias y aplicacionesInteligencia artificial, Informática Gráfica, Realidad virtual Aplicaciones industriales y de ingeniería Procesamiento de datos administrativos Científicas, médicas y biológicas Militares Educación Arte y humanidades Otros
19 Tarea Investigar acerca de las siguientes temáticas:Partes y piezas y funcionamiento del Computador (PC) Estructura y recursos de un centro de cómputos Clasificación de las computadoras Aplicaciones de la informática (Profundizar en un producto)
20 Representación de la Información
21 Introducción Un computador trata con datos y programas que los procesa. ¿Cómo se representan ? Bits ( ) Bytes (A2F4441BFF...) Símbolo (A, +, &, a, B, b,...), o caracteres Números, letras, palabras, dato Lista o conjunto de datos (archivos) Conjunto de archivos (base de datos)
22 Existe una relación entre caracteres y sistema o código binario{Caracteres} {0,1}n Ejemplo: carácter Código A [notación: (100)2] B 011 C 110 D 111 E 101 {A,B,C,D,E} {0,1}3 Notación: (100)2
23 Sistema de numeración Sistemas de numeración más utilizados: Decimal{0,1,2,3,4,5,6,7,8,9}n Ej: (1256,5)10 Binario {0,1}n Ej. (101110)2 Octal {0,1,2,3,4,5,6,7}n Ej (72146)8 Hexadecimal {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}n Ej. (FF012A)16
24 Sistema de numeración Representación posicional de un sistema numérico en base b, en general: (dn-1dn-2...d1d0.d-1d-2....d-m)b = dn-1*bn-1+dn-2*bn d1*b1+d0*b0+d-1b-1 +d-2*b d-m*b-m =
25 Sistema de numeración Representación posicional de un sistema numérico en diferentes bases, ejemplo: (165,4)8 = 1*82+6*81+5*80+4*8-1=(117,5)10 (1011,01)2 = 1*23+0*22+1*21+1*20+0*2-1+1*2-2= (FA13,B)16= 15*163+10*162+1*161+3*160+11*16-1=
26 Operaciones Binarias A B A+B A-B A*B A/B 1 Suma Resta ProductoDivisión A B A+B A-B A*B A/B Indetermina-do 1 Infinito y debo 1 y Reservo 1
27 Ejemplos *101 * : 10
28 Relación con otras basesDec Bin Oct Hex 9 1001 11 1 10 1010 12 A 2 1011 13 B 3 1100 14 C 4 100 1101 15 D 5 101 1110 16 E 6 110 1111 17 F 7 111 10000 21 8 1000 10001 22
29 Equivalencia Binaria, Base 3, Oct. y Hex.Ejemplo : ( )2 1 2 3 5 6 B E Binaria Base4 Octal Hexadec. Utilizando la equivalencia de la tabla anterior, podemos transformar, fácilmente, un número de una base a otra, sólo dividiendo el número y agrupando de manera correcta
30 Equivalencia Binaria, Base 3, Oct. y Hex.Ejemplo : (B16E)16 B 1 6 E 3 5 Hexadec Binaria Octal Utilizando la equivalencia de la tabla anterior, podemos transformar, fácilmente, un número de una base a otra, sólo dividiendo el número y agrupando de manera correcta
31 Cambio de Base Ejemplo : (110)2 => (6)10 => (11)5Hemos revisado el método para transformar número en base b a otro de base 10. También, hemos revisado el método inverso En general, para transformar un número de base b en otro de bases c, se puede puede utilizar la base 10 como intermedio: (x)b => (y)10 => (z)c Ejemplo : (110)2 => (6)10 => (11)5
32 Códigos de E/S Si es el conjunto de m caracteres de E/S y es el conjunto de símbolos de representación interna (con largo de n bits): ={0,..,9,a,..,z,A,..,Z!”·$%&/()..} ={0,1}n Entonces n es de largo tal que m <= 2n o log2 m >= n NOTA: n es el largo de la PALABRA
33 Códigos de RepresentaciónBCD (Binary Coded Decimal) : n = 6 (cada carácter es representado por 6 bits) m = 26=64 (podemos representar 64 caracteres) 1 bit adicional de paridad ( n = 7) EBCDIC(Extended Binary Coded Decimal Interchange Code) n = 8 (cada carácter es representado por 8 bits) m = 28=256 (podemos representar 256 caracteres) ASCII(American Standard Code for Information Interchange) n = 7 (cada carácter es representado por 7 bits) m = 27=128 (podemos representar 128 caracteres) 1 bit adicional de paridad ( => n = 8) n = 8 y m= 256 ASCII EXTENDIDO
34 Representación de Tipos de DatosLógicos : V=1, F=0 Hacer 0 todos los bits para representar F y hacer 1 todos los bits para representar V Hacer 0 el bit más a la derecha para F y hacer 1 el bit más a la derecha para V Hacer 0 todos los bits para F y hacer 1 cualquier bit de la palabra para representar V
35 Representación de Tipos de DatosCarácter : se representan por medio de la secuencia de bits (8 bits o 1 Byte) (ASCII o EBCDIC)
36 Tipo de Dato Entero Módulo y Signo Ejemplo S M 45 0 00000101101 ( n = 12) Obs: Rango simétrico : -2n-1+1 <= X <= 2n-1-1 y representan el 0
37 Tipo de Dato Entero Complemento a 1 (C-1) S M 45 0 00000101101 (n=12) Obs: Rango simétrico : -2n-1+1 <= X <= 2n-1-1 y representan el 0
38 Tipo de dato entero Complemento a 2 (C-2) Obs:S M (C-1) (C-2) Obs: Se ignora el último “acarreo” Rango asimétrico : -2n-1 <= X <= 2n-1-1 representan el 0
39 Tipo de dato entero Exceso a 2n-1 Obs:Si la palabra es de 8 bits (n=8) entonces el exceso es: 2n-1 = = 27 = 128 Así > = 173 = ( )2 > = 83 = ( )2 Obs: Rango asimétrico : -2n-1 <= X <= 2n-1-1 representan el 0
40 Tipo de dato entero BCD Obs: Ejemplo con palabra tamaño n = 16 Obs: Cada digito se representa por su corres-pondiente código BCD 0001 corresponde al símbolo negativo
41 Tipo de dato real Notación exponencial, científica o de punto flotanteNúmero = mantisa * baseexponente Ejemplo, en el sistema decimal : 56981,23 = 0, * (5 dígitos en parte entera) Mantisa = Base = 10 Exponente = 5
42 Tipo de dato real Notación exponencial, científica o de punto flotanteNúmero = mantisa * baseexponente Ejemplo, en el sistema binario : (56981,23)10 = ( , )2 = 0, *216 (16 dígito en la parte entera) Mantisa = Mantisa (C-1) = Base = 2 Exponente = 16
43 Tipo de dato real Notación exponencial, científica o de punto flotanteNúmero = mantisa * baseexponente Ejemplo, en el sistema binario : (-56981,23)10 = -( , )2 = - 0, *216 (16 dígito en la parte entera) Mantisa = Mantisa (C-1) Base = 2 Exponente = 16
44 Tipo de dato real Notación exponencial, científica o de punto flotanteNúmero = mantisa * baseexponente Ejemplo, en el sistema binario : (0,008254)10 = (0, )2 = 0, *2-6 (16 dígito en la parte entera) Mantisa = Mantisa (C-1) = Base = 2 Exponente = -6
45 Tipo de dato real Notación exponencial, científica o de punto flotanteNúmero = mantisa * baseexponente Ejemplo, en el sistema binario : (- 0,008254)10 = (-0, )2 = -0, *2-6 Mantisa = Mantisa C-1 = Base = 2 Exponente = -6
46 Tipo de dato real La cantidad de bits para la representación de un valor real está dada por el tamaño de la palabra, la que define el grado de precisión del valor representado. Normalmente se utilizan 32 o 64 bits, distribuidos de la siguiente forma: Signo (1 bit) Exponente (8 bits) Mantisa (23 bits) Exponente (11 bits) Mantisa (52 bits)
47 Tipo de dato real Son varias las alternativas para representar los valores enteros de Exponente, Mantisa y la Base: Exponente : MS y Exceso Mantisa : C-1 o C-2 Base : 2 o potencia de 2 Signo del exponente : 0 = positivo, 1 = negativo Signo (1 bits) Exponente (8 bits) Mantisa (23 bits) Exponente (11 bits) Mantisa (52 bits)
48 Tipo de dato real Ejemplo : Exponenente : MSMantisa : C-1 Base: 2 y n=32 -45,125 = ,001 = *2-6 Mantisa = (22 bits) Mantisa (C-1) = (23 bits) Base = 2 Exponente = 6 = (8 bits) Signo Exponente = 0 (positivo) (1 bit)
49 Tareas Utilizando los métodos vistos en clases, utilice la planilla Excel para el proceso de cambio de bases: 10 a cualquier otra base. De cualquier base a base 10 De cualquier base a cualquier otra base Investigar sobre y generar informe en Word Tabla de códigos ASCII y la EBCDIC, BCD Para cada tabla de código, tabule los símbolos y sus correspondientes representaciones en Binario, Octal y Exadecimal Representación de los tipos de datos almacenados en la memoria RAM
50 Estructura de un computadorTransferencia de datos entre unidades mediante bus de datos Interno (hacia y desde CPU, RAM,..) Externo (hacia y desde DD, CD,Teclado,Mouse,...) Controlador y un puerto E/S Bus de dato Interno Bus de datos Ext. Unidad A Unidad B Placa base
51 Placa Base
52 Estructura de un computadorTransferencia de datos entre unidades mediante bus de datos Interno (hacia y desde CPU, RAM,..) Externo (hacia y desde DD, CD,Teclado,Mouse,...) CPU Periférico 1 Periférico 1 Periférico 1 Controlador 1 Controlador 1 Controlador 1 Bus de Datos
53 Estructura de un computadorBus de direcciones : un dato a ser transportado está almacenado en alguna dirección de memoria o del periférico, el bus de direcciones transporta dicha dirección. RAM Bus de direcciones CPU Periférico 1 Periférico 1 Periférico 1 Controlador 1 Controlador 1 Controlador 1 Bus de Datos
54 Estructura de un computadorBus de Control : Transportan señales de control y de estado, para dirección de transferencia de datos, temporización de eventos de eventos y transmisión de interrupción RAM Bus de direcciones Hilos de control CPU Periférico 1 Periférico 1 Periférico 1 Controlador 1 Controlador 1 Controlador 1 Bus de Datos
55 Memoria RAM Memoria interna del computadorCada byte (8bits) de la memoria posee una dirección específica, cuyo espacio está definido por el tamaño del bus de direcciones (si el tamaño del bus es de 32 bits, es posible direccionar hasta 4 GigaByte de memoria aprox.)
56 Memoria RAM Factores de potencia:Tiempo de acceso t : tiempo máximo de lectura/escritura (de una palabra) Tiempo de ciclo tc : tiempo mínimo entre dos lecturas consecutivas Ancho de banda AB : Número de palabras que se transfiere entre la CPU y la RAM por unidad de Tiempo. AB=1/tc
57 Decodificador de Dirección Memoria Principal (RAM)Registros de la RAM Dirección Registro de Direcciones de Memoria Bus de datos y bus de direcciones Decodificador de Dirección Memoria Principal (RAM) Dato Registro de Datos
58 Jerarquía de la memoria RAMMemoria Virtual : La de porción de la memoria RAM que no se está utilizando se almacenada en Disco Duro, y se carga cuando se le necesita Memoria Caché : Memoria pequeña intermedia entre la CPU y la RAM, es de acceso rápido y almacena los últimos datos utilizados
59 Parámetros de comparación de la Memoriac: Costo b: Ancho de Banda (bit/seg) t: Tiempo de Acceso (nanosegundos) s: Capacidad de Almacenamiento (MB)
60 Parámetros de comparación de la MemoriaRegistro de CPU Memoria Caché Memoria Principal Discos Magnéticos Cintas Magnéticas Discos Opticos (CD) c,b t,s
61 Unidad Central de Proceso (CPU)Es un CHIP llamado Procesador Ejecuta las instrucciones de un programa almacenado en la memoria RAM Posee dos elementos funcionales: Unidad Aritmética y lógica Unidad de Control
62 Unidad Aritmética y LógicaLa unidad de control le indica qué operación (aritmética o lógica) debe ejecuta. Posee un circuito operacional (ejecutor) y 3 registros (32 o 64 bits) complementarios: Registro de entrada (RE): contiene el datos sobre la cual se va a realzar la operación. Registro de estado (RS): bits indicando el estado de la ultima operación(desbordamiento,signos,..) Registro acumulador: contiene el resultado de cada operación.
63 Esquema de la unidad Aritmético-LógicoRegistro Acumulador Circuito Operacional Registro de Estado Registro de entrada Bus de datos
64 Unidad de Control Administra todos los recursos de la computadora, para ello: Controla la secuencia en que se ejecutan las instrucciones. Controla el acceso del procesador a la memoria principal. Regula lo tiempos de todas las operaciones que ejecuta la CPU. Envía señales de control y recibe señales de estado del resto de l as unidades.
65 Unidad de Control Posee:Contador de programas (CP): contiene la dirección de la próxima instrucción a ejecutar. Registro de instrucción (RI): contiene la instrucción que está en ejecución (Código de la instrucción + dirección o valor de los operandos) Decodificador: interpreta la instrucción y la ejecuta por medio del Secuenciador
66 Unidad de Control (continuación)Reloj : proporciona una secuencia de impulsos a intervalos constantes para sincronizan la secuencia de los pasos(microinstrucciones) de la instrucciones en curso Secuenciador: Genera órdenes elementales (microinstrucciones) que sincronizadas por el reloj hacen que la instrucción en curso se vaya ejecutando poco a poco.
67 Registro de InstrucciónUnidad de Control Reloj Contador de programa Secuenciador Decodificador Registro de Instrucción
68 Funcionamiento de las computadorasLos programas son ejecutados por la CPU, de instrucción a la vez. Un ciclo de instrucción comprende dos fases: Búsqueda: La instrucción pasa de memoria principal a la unidad de control Ejecución: acciones necesarias para llevar a cabo dicha instrucción.
69 Funcionamiento de las computadorasEl programa debe estar en la memoria principal El Contador de Programa (CP) contiene la dirección de memoria donde comienza un programa La unidad de control ordena que el contenido del CP se transferido al registro de dirección de memoria.
70 Funcionamiento de las computadorasDespués de transcurrido el tiempo de acceso a memoria, se almacenará el dato contenido en la memoria indicada en el registro de dato. Ese dato es traducido a una instrucción y almacenada en el Registro de Instrucción (RI). La Unidad de Control interpreta la instrucción e informa al Secuenciador CP = CP+1 o CP=CP+ k , k>1 si existe bifurcación debido a un salto producto de un if, while , for, goto,...(si no es fin, ir a Pto.3)
71 Ejemplo Problema : Calcular S=X+YVariables de Entrada : X,Y desde teclado Variables de salida : S en monitor Longitud de palabra : 16 bits (4 para código de instrucción y 12 para dirección) 24 = 16 instrucciones posibles (i) 212 = posiciones de memoria direccionables (m) i m Ej.
72 Ejemplo: descripción de las instruccionesSupongamos las siguientes instrucciones Almacena en la posición de memoria m un dato leído desde teclado. TEC m 0011 Almacena en la posición de memoria m el contenido del registro acumulador de la ALU. ALM m Cargar en el registro acumulador de la ALU, el contenido de la posición de memoria m. CAR m 0100 Sumar el contenido de la posición de memoria m y contenido del registro acumulador de la ALU, SUM m 0010 Mostrar en el monitor el contenido de la posición de memoria m. MON m
73 Programa ejemplo Supongamos que siguiente código está almacenado en la posición m=12 ( ) i m código TEC33 TEC34 CAR 33 SUM 34 ALM 35 MON 35
74 Ejecución CP = 12 ( ) RI = contenido de lo “direccionado” por CP RI = CP = CP +1, (CP = 12 +1=13) Unidad de control extrae Código de Instr. COP=0001 (TEC), m = (33) lee el valor desde teclado y lo almacena en la dirección m (33)
75 Ejecución RI = contenido de lo “direccionado” por CPCP = CP +1 (CP=13+1=14) Unidad de control extrae Código de Instr. COP=0001 (TEC), m = (34) lee el valor desde teclado y lo almacena en la dirección m=34
76 Ejecución RI = contenido de lo “direccionado” por CPCP = CP +1 (CP=14+1=15) Unidad de control extrae Código de Instr. COP= 0101 (CAR), m = (33) Almacena en registro de ALU el contenido de la posición m=33 de la memoria RAM
77 Ejecución RI = contenido de lo “direccionado” por CPCP = CP +1 (CP=14+1=16) Unidad de control extrae Código de Instr. COP= 0100 (SUM), m = (34) Suma el registro de la ALU con el contenido en la posición m=34 de la RAM.
78 Ejecución RI = contenido de lo “direccionado” por CPCP = CP +1 (CP=14+1=16) Unidad de control extrae Código de Instr. COP= 0011 (ALM), m = (35) Almacena el contenido del registro de la ALU en la posición m035 de la RAM.
79 Ejecución RI = contenido de lo “direccionado” por CPCP = CP +1 (CP=14+1=16) Unidad de control extrae Código de Instr. COP= 0010 (ALM), m = (35) Muestra en el monitor el contenido de la posición de memoria m = 35 de la RAM.