Sistemas informáticos industriales 2015 Maquina elemental Sistemas numeración Sistema de computo Un sistema de computo elemental, esta formado básicamente por un procesador, memoria y un conjunto de periféricos de Entrada/salida. GENERACIONES DE COMPUTADORAS. Existe un esquema básico de la carrera tecnológica cuyo principal objetivo es mejorar las tecnologías e introducir modificaciones en ese esquema básico para conseguir máquinas cada vez más rápidas y potentes y reducir el espacio ocupado y la potencia consumida por esas máquinas, sucediéndose desde entonces una serie de generaciones, desde la primera hasta llegar a la quinta. 1era Generación (1940 – 1952): El elemento tecnológico que la hace posible es la válvula de vacío, estaban constituidas por aproximadamente 18,000 válvulas de vació, por lo que eran necesarios sistemas de refrigeración para evitar el sobrecalentamiento y quemado de los tubos. Los operadores ingresaban los datos y programas en código de maquina por medio de tarjetas perforadas. El almacenamiento interno se lograba con un tambor que giraba rápidamente, sobre el cual un dispositivo de lectura/escritura colocaba marcas magnéticas. Solo se podían programar en lenguaje máquina, no existían los lenguajes de programación. Eran empleadas principalmente para uso militar y científico. Las principales características de las computadoras de esta generación son: Usaban tubos o válvulas al vacío. Tenían desde 100 Bytes hasta 2 KiloBytes (2.000 Bytes) Máquinas grandes y pesadas. 2da Generación(1952 – 1964): A partir de 1947 se realiza, en los laboratorios Bell, el diseño del transistor, construido con material semiconductor basado en el Silicio, un material abundante en la arena de playa. El transistor sustituye a la válvula de vacío, ocupa mucho menos espacio y con él se inicia el verdadero desarrollo de las computadoras, disminuyendo de tamaño y precio y posibilitando su uso también en aplicaciones administrativas y comerciales. Las principales características de las computadoras de esta generación son: Computadoras basadas en transistores. Realizaban de 6,000 a 3,000,000 operaciones por segundo. Disminución de consumo energético y de producción de calor. 3ra Generación (1964 – 1971): El 1964 aparece el circuito integrado, fabricado también con material semiconductor, dando paso a la tercera generación de computadoras. En el Circuito Integrado o Chip, se construyen en miniatura circuitos electrónicos a base de transistores, resistencias, condensadores, etc. Con ello se consigue disminuir aún más el tamaño y el consumo de las computadoras, aumentando al mismo tiempo las prestaciones. Las tecnologías utilizadas para los circuitos integrados de esta época se denominan SSI (Small Scale Integration) y MSI (Medium Scale Integration). El software evoluciona desarrollándose los Sistemas Operativos, que incluyen multiprogramación, tiempo real y modo interactivo. Para almacenamiento interno de la información se utiliza memorias de semiconductores y para el almacenamiento masivo externo empiezan a utilizarse los discos magnéticos (discos duros). Las principales características de las computadoras de esta generación son: Fueron fabricadas en base a circuitos integrados. Circuitos integrados: Miniaturización y agrupación de centenares de elementos en una placa de Silicio o Chip. Menor consumo de energía. Apreciable reducción de espacio. La disminución del tamaño de los circuitos continuaba a modo acelerado, cuando a mediados de los años 60s la empresa INTEL consiguió integrar un procesador completo en un solo chip, llamado microprocesador. 4ta Generación (1971 – hasta la actualidad): En 1971 aparece el microprocesador, que consiste en la construcción de la Unidad central de proceso en un solo circuito integrado. La tecnología de construcción de los circuitos se denomina LSI (Large Scale Integration) y posibilita la aparición de las computadoras personales, extendiéndose el uso de las computadoras al hogar. Aparece como unidad de almacenamiento el disquete o floppy disk, proliferan los lenguajes de programación de todo tipo y aparecen las redes de transmisión de datos para interconectar computadoras y dando lugar a la telemática o teleinformática. La escala de integración sigue aumentando, apareciendo VLSI (Very Large Scale Integration) y ULSI (Ultra Large Scale Integration), sigue reduciéndose el tamaño y los precios, y empiezan a buscarse alternativas al diseño de la máquina de Von Neuman que hagan a las computadoras cada vez más rápidas. Empieza a introducirse el paralelismo, es decir que varios procesadores puedan trabajar al mismo tiempo pudiendo ejecutar incluso el mismo programa. Las principales características de las computadoras de esta generación son: Basadas en circuitos integrados de tipo LSI, VLSI y UVLSI. El proceso de reducción del tamaño de los componentes llega a superar las escalas microscópicas. Las aplicaciones del microprocesador se han proyectado más allá de la computadora y se encuentra en multitud de aparatos. La reducción del tamaño también genera nuevos conceptos para su uso. Las PC, las microcomputadoras y las minicomputadoras son el grupo de equipos que conforman las "computadoras pequeñas". ARQUITECTURAS DE COMPUTADORAS Arquitectura Harvard El término Arquitectura Harvard originalmente se refería a las arquitecturas de computadoras que utilizaban dispositivos de almacenamiento físicamente separados para las instrucciones y para los datos (en oposición a la Arquitectura von Neumann). El término proviene de la computadora Harvard Mark I, que almacenaba las instrucciones en cintas perforadas y los datos en interruptores. Arquitectura von Neumann La arquitectura von Neumann se refiere a las arquitecturas de computadoras que utilizan el mismo dispositivo de almacenamiento tanto para las instrucciones como para los datos (a diferencia de la arquitectura Harvard). Esta arquitectura fue planteada en 1945, por el conocido matemático John von Neumann, que propuso el concepto de programa almacenado. Maquina elemental La Unidad Aritmético Lógica, en la CPU del procesador, es capaz de realizar operaciones aritméticas, con datos numéricos expresados en el sistema binario. Naturalmente, esas operaciones incluyen la adición, la sustracción, el producto y la división. Las operaciones se hacen del mismo modo que en el sistema decimal, pero debido a la sencillez del sistema de numeración, pueden hacerse algunas simplificaciones que facilitan mucho la realización de las operaciones. Sistemas numéricos Los números son los mismos en todos lados. Sus nombres y su simbología podrán ser diferentes, pero tienen el mismo significado. Los pueblos primitivos aprendieron a contar con los dedos, con los que no podían alcanzar cifras elevadas, pero si las suficientes para satisfacer sus necesidades. Si querían recordar algunos números, hacían incisiones en un palo o marcas en una roca. Sistema de numeración Un sistema de numeración es un conjunto de símbolos y reglas de generación que permiten construir todos los números válidos. Un sistema de numeración puede representarse como N S, R donde: N: es el sistema de numeración considerado (p.ej. decimal, binario, etc.). S: es el conjunto de símbolos permitidos en el sistema. En el caso del sistema decimal son {0,1,...9}; en el binario son {0,1}; en el octal son {0,1,...7}; en el hexadecimal son {0,1,...9, A, B, C, D, E, F}. R: son las reglas que nos indican qué números son válidos en el sistema. Sistema de numeración Base del sistema: si un sistema de numeración posicional tiene “base b”, significa que dispone de b símbolos diferentes para escribir un número. Y que b unidades conforman una unidad de orden superior. Formula general de construcción: N dn d1d0 b n di b , d k 0,1, i , b 1 i 0 un número N se construye como la suma de cada símbolo di multiplicado por potencia de la base correspondiente a la posición que ocupa en el número. Donde n es la cantidad de símbolos que componen el número. Sistema de numeración Ejemplo sistema decimal: en un sistema decimal los símbolos válidos para construir números son {0,1,… 9}. Por lo tanto la base del sistema es diez. N dn d1d0 10 , di 0,1, d n 10 ,8,9 d1 10 d0 10 n 1 0 Ejemplo sistema binario: en un sistema decimal los símbolos válidos son {0,1}. N dn d1d0 2 , di 0,1 dn 2 n d1 2 d0 2 1 0 Sistema de numeración Ejemplo sistema binario: N 1012 1 2 0 2 1 2 2 1 0 4 0 1 5 10 Ejemplo sistema hexadecimal: N FF 16 15 16 15 16 1 0 240 0 15 25510 Coversión decimal a binario: se divide el número decimal en la base de sistema b a la que se quiere convertir y se calcula el resto (que siempre será menor b). Así sucesivamente hasta que el dividendo sea menor que el divisor. 24 2 -24 12 2 A continuación se ordenan los restos empezando desde el último al primero. Obteniendo el número binario deseado 0 -12 6 2 0 -6 3 2 0 -2 1 2 1 1 2410 110002 Suma de números binarios: se suman los símbolos según su posición, usando la siguiente tabla. 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = (10)2 Note que al sumar 1+1 es 102, es decir se lleva uno a la posición de la izquierda (acarreo). Esto es equivalente en el sistema decimal a sumar 9+1 que da 10 (cero en la posición actual y un uno de acarreo en la siguiente). Ej.: 1 100110 3810 001101 1310 110011 5110 Resta de números binarios: ese restan los símbolos según su posición, usando la siguiente tabla. 0 - 0 = 0 1 - 0 = 1 1 - 1 = 0 0 - 1 = 1 (se transforma en 102-1=1) La resta 0-1 se resuelve tomando una unidad prestada de la posición siguiente.: 0 – 1 =1 y pido 1(ese valor se resta al resultado que se obtenga de la siguiente columna). Ej.: 1 1 111011 5910 001101 1310 101110 4610 Codificación: se define como bit al digito binario (acronimo de Binary DigIT) y representa solo dos estados: 0 ó 1. A su vez los bit se pueden agrupar en paquetes: 4bit = nibble (se pueden codificar hasta 24=16 valores) 8bit = byte ( hasta 28=256) Bit más y menos significativo : en un conjunto de bits, por ejemplo un byte. Se llama “bit mas significativo” MSB (Most Significant Bit) al bit que tiene mas peso en el conjunto. Se llama “bit menos significativo” LSB (Least Significant Bit) al bit de menor peso. d7 d1d0 2 d7 MSB d0 LSB Codificación ASCII: las computadoras solo entienden códigos binarios, pero los humanos usan símbolos tales como caracteres y números. Para ello se creo el código ascii originalmente diseñado para maquinas de teletipos. ASCII (acrónimo inglés de American Standard Code for Information Interchange) ASCII: originalmente se usaron 7 bits para codificar simbolos y letras del lenguaje latino. Erróneamente también se llama como código ASCII a otros estándares como el ISO-8859 de 8 bits, que agrega caracteres especiales que se usan en otros idiomas distintos al ingles, tales como el español. Ej.: en el teclado de la computadora con la tecla “Alt” + el número 48 (en el teclado numérico) se obtiene el número “0”. “0”= (011 0000)2= (48)10 en ASCII Las dos primeras filas corresponden a caracteres no imprimibles, los cuales son códigos de control entre la impresora y la computadora. A partir de la tercera línea empiezan los caracteres, signos de puntuación, etc. El primero es el espacio “ ”=SP correspondiente a la barra espaciadora en el teclado Por último se tiene el código 127 correspondiente a DEL es cual elimina un carácter, equivalente al “Backspace” del teclado. Los códigos ASCII de control son: 0000 0000 NUL Carácter Nulo 0001 0000 DLE Enlace de datos / Escape 0000 0001 SOH Inicio de Encabezado 0001 0001 DC1 Dispositivo de control 1 — oft. XON 0000 0010 STX Inicio de Texto 0001 0010 DC2 Dispositivo de control 2 0000 0011 ETX Fin de Texto 0001 0011 DC3 Dispositivo de control 3 — oft. XOFF 0000 0100 EOT Fin de Transmisión 0001 0100 DC4 Dispositivo de control 4 0000 0101 ENQ Consulta 0001 0101 NAK Confirmación negativa 0000 0110 ACK Acuse de recibo 0001 0110 SYN Síncrono en espera 0000 0111 BEL Timbre 0001 0111 ETB Fin de Transmisión del Bloque 0000 1000 BS Retroceso 0001 1000 CAN Cancelar 0000 1001 HT Tabulación horizontal 0001 1001 EM Finalización del Medio 0000 1010 LF Salto de línea 0001 1010 SUB Substituto 0000 1011 VT Tabulación Vertical 0001 1011 ESC Escape 0000 1100 FF De avance 0001 1100 FS Separador de fichero 0000 1101 CR Retorno de carro 0001 1101 GS Separador de grupo 0000 1110 SO Mayúsculas fuera 0001 1110 RS Separador de registro 0000 1111 SI En mayúsculas 0001 1111 US Separador de unidad Sistema internacional de unidades: en los años 60 se empezó a definir el kB como 1024 bytes. Pero a partir de 1998 la International Electrotechnical Commission (IEC) agregó nuevas prefijos para medidas en el ámbito informático: Sistema Internacional(decimal) ISO/IEC 80000-13(binario) kilobyte(kB) 1000=103 kibibyte(KiB) 1024=210 megabyte(MB) 106 mebibyte(MiB) 220 gigabyte(GB) 109 gibibyte(GiB) 230 terabyte(TB) 1012 tebibyte(TiB) 240 petabyte(PT) 1015 pebibyte(PiB) 250 exabyte(EB) 1018 exbibyte(EiB) 260 zettabyte(ZB) 1021 zebibyte(ZiB) 270 yottabyte(YB) 1024 yobibyte(YiB) 280 Números binarios con signo: en los sistemas de numeración es simple representar un número negativo, tan solo con colocar el símbolo “-” delante del número. Pero en un sistema binario existen varias formas. En este caso solo se desarrollara el complemento a 2. Signo y magnitud : el primer enfoque es representar un número signado de n bits: 1. Un bit para representar el signo. Por lo general es el bit mas significativo (MSB), tal que si vale 0 es un número positivo y 1 para negativo. 2. El resto de los n-1 bits representan el valor absoluto del número en caso de ser positivo. Y si es negativo, es el complemento a 2 del número en valor absoluto. Complemento a 1: se obtienen simplemente cambiando los 1 por 0 y los 0 por 1 del numero binario. Ej.: N (101)2 C1 010 2 N Complemento a 2: ese define como C2 2 N N n donde n es la cantidad de dígitos binarios del número. Una forma rápida de calcularlo es como C2 C1 1 N N Ejemplo número negativo binario: considere que se representa un número binario signado con tres bits. Entonces se puede representar el número positivo mayor como 22-1=3 (solo se tienen 2 bits para representar la magnitud). Binario signado Valor decimal Valor abs Comple Comple binario mento 1 mento 2 011 3 011 010 2 010 001 1 001 000 0 000 111 -1 001 110 111 110 -2 010 101 110 101 -3 011 100 101 100 -4 100 011 100 Suma de números con signo: cuando se suman dos números binarios con signo se pueden presentar cuatro casos: a. b. c. d. Ambos números son positivos El número positivo es mayor que el negativo en valor absoluto. El número negativo es mayor que el positivo en valor absoluto. Ambos números son negativos. Suma con signo Ambos positivos: Binario 001 decimal 1 001 1 010 2 El resultado es positivo y por lo tanto es un número binario real (no complementario). Suma con signo El número positivo es mayor que el negativo en valor absoluto Binario 010 decimal 2 111 1 Acarreo que se descarta 1001 1 El acarreo final no se tiene el cuenta. El resultado es positivo y por lo tanto es un número binario real (no complementario). Suma con signo El número negativo es mayor que el positivo en valor absoluto Binario 001 decimal 1 101 3 110 -2 El resultado final es negativo y por lo tanto está en complemento a 2. Suma con signo Ambos negativos: Binario 111 decimal 1 111 1 Acarreo que se descarta 1110 2 El acarreo final no se tiene el cuenta. El resultado es negativo y por lo tanto es un número en complemento a 2. Overflow o desbordamiento: cuando se suman dos números con signo y el número de bits necesarios para representar el resultado exceden el número de bits máximo de los dos operandos. Se produce un desbordamiento que se indica mediante un bit de signo incorrecto. Un desbordamiento solo se produce si los dos números son positivos o negativos. Ej.: si solo se trabaja con 3 bits 011 3 001 1 Bit de signo incorrecto 110 4