Eje Temático 1 - Arquitectura de Computadoras - PDF
Document Details
Uploaded by SupremeElf
Tags
Summary
This document provides an overview of computer architecture, focusing on numerical representation and codes, including binary systems and conversions between number systems. It introduces fundamental concepts of digital systems.
Full Transcript
Eje temático 1 Arquitectura de computadoras a. Representación numérica y códigos: Sistema digital: es cualquier sistema que pueda generar, procesar, transmitir o almacenar señales mediante dígitos y que solo admite valores discretos, es decir, que solo admite un conjunto limitado de n...
Eje temático 1 Arquitectura de computadoras a. Representación numérica y códigos: Sistema digital: es cualquier sistema que pueda generar, procesar, transmitir o almacenar señales mediante dígitos y que solo admite valores discretos, es decir, que solo admite un conjunto limitado de números o valores. El computador digital de uso general es el ejemplo más conocido de sistema digital. Típico de un sistema digital es su manejo de elementos discretos de información. Tales elementos discretos pueden ser impulsos eléctricos, Ios dígitos decimales, las letras de un alfabeto, las operaciones aritméticas, los símbolos de puntuación o cualquier otro conjunto de símbolos significativos Los elementos discretos de información se representan en un sistema digital por cantidades físicas llamadas señales. Las señales eléctricas tales como voltajes y corrientes son las más comunes. Las señales en los sistemas digitales electrónicos de la actualidad tienen solamente dos valores discretos y se les llama binarios Estos valores son utilizados para lograr tener una mayor confiabilidad a la hora del procesamiento de datos. Por lo tanto estos son los más utilizados en los computadores digitales Información de una computadora: SISTEMA BINARIO Nosotros los humanos en ecosistema numérico que utilizamos es el sistema decimal,mientras que las computadoras utilizan el sistema binario que es la unidad de memoria más pequeña en un ordenador se denomina bit (del ingles´ binary digit). Puede tomar únicamente dos posibles valores: 0 o 1 Un diagrama de bloque del computador digital se muestra en la Figura.1-1. La unidad de memoria almacena los programas de la misma forma que los datos de entrada, salida e intermedios. La unidad de proceso realiza tareas aritméticas y de procesamiento de datos según sea especificado por el programa. La unidad de control supervisa el flujo de información entre las diferentes unidades. Dicha unidad recupera las instrucciones una a una del programa acumulado en la memoria. Para cada instrucción, ella informa al procesador a fin de ejecutar la operación específica de la instrucción. Tanto el programa como los datos se almacenan en la memoria. La unidad de control supervisa el programa de instrucciones, y el procesador manipula los datos de acuerdo a las especificaciones del programa. El programa y los datos preparados por el usuario son transferidos a la unidad de la memoria mediante un elemento de entrada tal como una lectora de tarjetas perforada o una teleimpresora. Un elemento de salida tal como un impresor recibe el resultado de los cálculos y le presenta al usuario los resultados impresos. Los elementos de entrada y salida son sistemas digitales especiales manejables por partes electromecánicas y controladas por circuitos electrónicos digitales Byte: El byte, compuesto por ocho bits (algunos autores se refieren a esta unidad como octeto), es una unidad de memoria más útil. Puesto que cada bit puede tomar el valor 0 o 1, en un byte pueden representarse hasta 28 = 256 combinaciones de ceros y unos Palabra: La unidad natural de memoria para un ordenador es la palabra. Los ordenadores de sobremesa actuales, por ejemplo, suelen trabajar con palabras de 32 o 64 bits “palabra” indicador del número máximo de bits que puede tener un dato a ser operado por la UAL del mismo número de bits de dato que maneja simultáneamente la UCP palabra de 32 bits UAL puede +/- dos números de 32 bits y resultado de 32 bits. determina el ancho de los buses internos de la CPU (transmiten las palabras) tamaño de los registros donde una palabra puede almacenarse compatibilidad de todos los elementos internos de la CPU El estudio de las computadoras y del procesamiento de datos requiere algún conocimiento de los sistemas numéricos, ya que estos constituyen la base de todas las operaciones de una computadora. Los sistemas numéricos difieren en cuanto a la disposición y al tipo de los símbolos que utilizan. Se analizarán los sistemas: Decimal Binario Hexadecimal Conversiones de los sistemas numéricos: Decimal parte entera Decimal a binario: Consiste de una división sucesiva donde el dividendo viene siendo el número decimal que se quiera representar a binario y el divisor sea el número de la base del sistema, que en este caso es de base 2. Y para representar los números en binario hay que agarrar los restos de dichas divisiones. se los agarra de arriba hacia abajo ej: Decimal a hexadecimal: Vendría a ser los mismo que lo anterior tomar el valor que se quiera convertir como la dividendo y el divisor es la base de sistema hexadecimal que es un su caso es 16, se tomaría los esto de la división de abajo hacia arriba. Decimal a octal: Este también es lo mismo que los dos anteriores, en este caso la divisor venérea a ser la base del sistema octal que es el 8, también se toma los resto de la s divisiones para la representación a octal. Decimal parte fraccionaria: Para lograr pasar un número de base 10 a cualquier otro sistema decimal hay que agarrar la parte fraccionaria y multiplicarla por la base que se quiera cambiar. Esta multiplicación puede ser realizada hasta mínimo 4 veces. Para formar los números en sus respectivos sistemas hay que agarrar la parte entera del resultado. De arriba hacia abajo ejemplos: Binario: Binario a decimal: consiste en agarrar el número binario y ponerle sus respectivas posiciones de izquierda a derecha, empezando desde el 0. Luego multiplicar el dígito binario por la base binaria que es el 2 elevado a la número de las posición de dicho dígito. Hay que hacerlo hasta el último dígito y sumar todos los resultados obtenidos entre sí y eso será la representación a decimal. En caso de que sea un número con parte decimal hay que contar las posiciones menores que 0 de derecha a izquierda. ejemplo: Binario a hexadecimal: En este caso hay que utilizar la tabla de equivalencia de los sistemas. Para convertir un binario a hexadecimal hay que agarrar el número binario y partirlos en segmentos de 4 dígitos(parte entera de izquierda a derecha-parte fraccionaria de de re cha cha a izquierda) y pasarlo en su equivalente a hexadecimal. Binario a octal: hay que hacer lo mismo que con el hexadecimal pero esta vez con la equivalencia a octal y en vez de agarrar 4 dígitos, hay que agarrar 3 dígitos Hexadecimal: Hexadecimal a decimal: Para pasar a un decimal a hexadecimal hay que realizar los mismo que la conversión de binario a decimal pero se reemplaza el dos por la base hexadecimal que es 16. ejemplo: Hexadecimal a binario: En este caso solamente se utiliza la tabla de equivalencias y se cambian los valores hexadecimales a binarios ejemplo: Hexadecimal a octal: Para poder pasar de una valor hexadecimal a octal primero hay que pasar el valor hexadecimal a binario y luego ese valor binario pasarlo a octal. Octal: Octal a binario: Para pasar de un octal a binario hay que usar la tabla de equivalencias y pasar el valor octal con su equivalente a binario. Cada dígito de dicho número hay que pasarlo a binario. ejemplo: Octal a decimal: para esto hay que realizar los mismo pasos que un decimal o hexadecimal a decimal. pero cambiando los números 2 o 16 por la base octal que es 8 ejemplo: Octal a hexadecimal: hay que pasar el octal a binario y luego ese valor binario pasarlo a hexadecimal a través de la tabla de equivalencias. TABLA DE EQUIVALENCIAS: Método de representación con 0 y 1: números de punto fijo (con o sin signo) números reales (conocida como Coma Flotante) caracteres requeridos para la impresión de texto REPRESENTACIÓN PUNTO FIJO: coma ubicada siempre en el mismo lugar no se almacena Consideraciones: capacidad de representación, rango y precisión. Capacidad de representación: es la cantidad de números que se pueden representar. Ya sea en 𝑛 5 punto fijo o no en 𝑏. Por ejemplo,si tengo restringido a 5 bits, sería 2 números, es decir, 32 números Precisión: es la mínima diferencia entre un número representable y el siguiente. Se podría decir que es la diferencia entre el 0 y el siguiente. Por ejemplo, en binario con dos digitos fraccionario es 0,01 Rango: el rango de un sistema está dado por el número mínimo representable y número máximo representable. Por ejemplo, en binario con cinco dígitos es [0,31](donde el 0 es 00000 y el 31 es 11111). El número máximo representable en un sistema para la parte entera 𝑛 es 𝑏 − 1 ejemplo: Representación de binarios con signo(BCS): -Módulo y signo(MS): El bit que está situado más a la izquierda representa el signo, y su valor será de 0 para el positivo y de 1 para el negativo. Complemento: Sirve para simplificar la operación de sustracción y para manipulaciones lógicas. Hay dos clases de complementos para cada sistema de base r: (Ca1) EI complemento de (Ca 2) ★ Complemento a 1(Ca1): ★ Complemento a 2(Ca2): El bit que está situado más a la izquierda representa el signo, y su valor será de 0 para el positivo y de 1 para el negativo. Para los números positivos el resto de los bits (n-1) representan el módulo del número. El negativo de un número positivo se obtiene en dos pasos: Primer paso: Se complementa el número positivo en todos sus bits, incluido el bit de signo, es decir, se realiza el "complemento a 1". Segundo paso: Al resultado obtenido en el primer paso se le suma 1, despreciando el acarreo si existe. ★ Exceso 2 elevado a la n-1: Este método no utiliza ningún bit para el signo, con lo cual todos los bits representan un módulo o valor que corresponde al número representado más el exceso. 𝑛−1 Exceso para n bits: 2 8−1 7 Exceso para 8 bits: 2 = 2 = 128. Límites y desbordamientos: Operaciones aritméticas: Suma binaria: Resta binaria: Over flow y Carry: Tanto en la representación en Ca1 como en Ca2 una operación puede dar como resultado un número que excede la capacidad de la palabra de memoria, produciendo así el overflow. Al sumar dos números el overflow se puede dar sólo si los dos tienen el mismo signo; la suma de dos números de distinto signo nunca dará como resultado un número con módulo mayor al de mayor módulo de los dados, al máximo será igual (al sumarle 0 a otro número), pero en general será menor, por lo tanto no puede exceder la capacidad de la palabra de memoria. El overflow se reconoce cuando los bits de signo de los dos números que se suman son iguales entre sí pero distintos del bit de signo del resultado, o sea cuando los números son positivos y da resultado negativo o viceversa. En este caso el contenido de la palabra de memoria es incorrecto. Una operación puede dar como resultado un número que excede la capacidad de la palabra de memoria, produciendo el overflow. Este se reconoce cuando los bits de signo de los dos números que se operan son iguales entre sí pero distintos del bit de signo del resultado. En este caso el contenido de la palabra de memoria es incorrecto. REPRESENTACIÓN EN PUNTO FLOTANTE: Pto. Fijo cantidad fija de dígitos a derecha e izquierda de la coma gran cantidad de dígitos en casos especiales 12 40 Ej: a) representación de números del orden del billón - 40 bits (10 ~2 ) b) representación fracción equivalente al billonésimo- 40 bits palabra de 80 bits Inconveniente: - gran cantidad de hardware- cálculos lentos Sistema decimal notación científica 14 976.000.000.000.000 9,76 * 10 −14 0,0000000000000976 9,76 *10 La coma decimal se desplaza convenientemente, incrementando o decrementando adecuadamente el exponente, para mantener la relación. +/−𝐸 Sistema binario +/- S *𝐵 Se almacena en una palabra binaria con tres campos: 1. Signo: + o – 2. Parte significativa o mantisa (S significant) 3. Exponente (E) La base B está implícita y no es necesario almacenarla. Normalización +/−𝐸 +/- 0,1bbb...b * 2 Bit implícito Inconveniente: no permite representar el cero Dígitos utilizados para determinar la precisión = mantisa Dígitos utilizados para representar el rango = exponente Ej: +6,023 * 1023 Rango y precisión mNN mínimo número negativo = - máxima mantisa * base máximo exponente positivo MNN máximo número negativo = - mínima mantisa * base máximo exponente negativo mNP mínimo número positivo = mínima mantisa * base máximo exponente negativo MNP máximo número positivo = máxima mantisa * base máximo exponente positivo Estándar IEEE (norma 754): Esfuerzo por mejorar la portabilidad de los programas y asegurar la uniformidad en la exactitud de las operaciones Formatos a) Simple precisión (32 bits) 𝑛−1 Exponente: 8 bits. Representación “sesgada” (sesgo 2 – 1) - n bits para 8−1 el exponente 2 – 1 = 127 EA = E + S Mantisa: 23 bits. Bit implícito 24 bits efectivos. Normalizada (coma a la DERECHA del primer dígito significativo 1, bb..b con bb..b = 23 bits) b) Doble precisión: 11−1 Exponente: 11 bits. 2 – 1 = 1023 Mantisa: 52 bits. Bit implícito - 53 bits efectivos. Normalizada (coma a la DERECHA del primer dígito significativo - 1, bb..b con bb..b = 52 bits) Suma y resta Tener en cuenta mantisa y exponente Los exponentes de los operandos deben ser iguales Los procesos de ajuste implican pérdida de precisión Etapas básicas en el algoritmo para sumar o restar Comprobar valores cero Ajuste de exponente y mantisa Sumar o restar las mantisas Normalizar el resultado Introducción a la arquitectura de computadoras: Arquitectura de Von Neumann: John Von Neumann fue un importante científico húngaro-estadounidense que nació a principios del siglo XX.Tuvo grandes contribuciones científicas en física cuántica, análisis funcional, teoría de conjuntos, economía, análisis numérico, hidrodinámica, estadística. Además, se lo recuerda por sus descubrimientos relacionados con la informática. Algunos lo llaman incluso "el padre de la informática". La arquitectura Von Neumann es una arquitectura de computadoras desarrollada por el matemático y científico de la computación John von Neumann en la década de 1940. Es una arquitectura de computadora muy común y se utiliza en la mayoría de las computadoras que usamos hoy en día Los elementos fundamentales de la arquitectura Von Neumann son los siguientes: 1. Unidad central de procesamiento (CPU): la CPU es el "cerebro" de la computadora, responsable de realizar la mayoría de las operaciones aritméticas y lógicas. Contiene a su vez: la unidad de control y la unidad aritmético-lógica. 2. Memoria principal: la memoria principal es donde se almacenan los programas y los datos que se están utilizando actualmente. Es una memoria de acceso aleatorio (lo que comúnmente se conoce como RAM) Puede leer y escribir datos rápidamente... pero se borran cuando se apaga el ordenador. 3. Dispositivos de entrada/salida: estos dispositivos permiten a los usuarios interactuar con la computadora, así como transferir datos dentro y fuera de la misma. Ejemplos de dispositivos de entrada/salida son tanto los periféricos (el teclado, el ratón, la pantalla, la impresora...) como los sistemas de almacenamiento secundario (disco duro, unidades flash...) La arquitectura Von Neumann se basa en el concepto de tener un solo bus de sistema que conecta todos los componentes de la computadora. Un bus es un "conjunto de cables" que conectan todos los componentes de la computadora. Permite la transferencia de datos y señales entre los diferentes componentes. Esta arquitectura ha demostrado ser muy efectiva y sigue siendo la base de la mayoría de las computadoras que usamos hoy en día. Características de la CPU: Nombre (incluyendo marca, familia y generación): El nombre de la CPU indica la marca, la familia y la generación del procesador. Por ejemplo, Intel Core i7-11700K es el nombre de una CPU de la marca Intel, de la familia Core i7, y perteneciente a la generación 11. Número de núcleos e hilos: El número de núcleos de una CPU indica la cantidad de procesadores independientes que tiene el chip. Cuantos más núcleos, mayor será la capacidad de la CPU para realizar varias tareas simultáneamente. Por otro lado, los hilos o threads son las unidades de trabajo dentro de cada núcleo, que permiten ejecutar varias tareas en cada núcleo. Frecuencia de reloj: La frecuencia de reloj o velocidad de la CPU indica la cantidad de operaciones que puede realizar la CPU por segundo, y se mide en GHz (gigahertzios). A mayor frecuencia de reloj, mayor será la velocidad de la CPU. Socket: El socket es el tipo de conector que se utiliza para conectar la CPU a la placa base. Los diferentes tipos de sockets son incompatibles entre sí, por lo que es importante verificar que la CPU sea compatible con el socket de la placa base antes de comprarla. Memoria compatible: La memoria compatible se refiere al tipo de memoria RAM que es compatible con la CPU y la placa base. La mayoría de las CPU modernas utilizan memoria DDR4, aunque algunas versiones más antiguas pueden requerir DDR3 o DDR2. Memorias caché: Las memorias caché son pequeñas cantidades de memoria incorporadas en la CPU que almacenan los datos y las instrucciones más utilizados. Existen tres niveles de memoria caché: L1, L2 y L3. Cuanto mayor sea el nivel, mayor será la capacidad de la memoria caché y mayor será su velocidad. TDP: TDP significa "Thermal Design Power" o potencia de diseño térmico. Esta medida indica la cantidad máxima de calor que produce la CPU, y se expresa en vatios. Es importante considerar el TDP al elegir un disipador de calor adecuado para la CPU. Características especiales: Algunas CPUs tienen características especiales como la posibilidad de overclocking, que permite aumentar la frecuencia de reloj para obtener un mayor rendimiento, o la presencia de una GPU integrada, que permite procesar gráficos sin necesidad de una tarjeta gráfica adicional. Además, algunas CPUs tienen diferentes versiones o "core stepping" que pueden variar en términos de frecuencia de reloj y características adicionales. La CPU o procesador es la unidad central de procesamiento del ordenador, también conocida como el cerebro del ordenador. No obstante, no es el único elemento clave. Muchos son los elementos que encontraremos si abrimos un ordenador, de forma resumida serían los que aparecen en la siguiente imagen: 1. La placa base: es el componente principal que conecta todos los componentes del ordenador, incluyendo la CPU, la memoria, el almacenamiento, las tarjetas de expansión y los dispositivos de entrada/salida. 2. La memoria RAM: es la memoria de acceso aleatorio donde se almacenan los programas y datos que el procesador está utilizando en ese momento. Es de acceso rápido y volátil, lo que significa que los datos se pierden cuando el ordenador se apaga. 3. Fuente de alimentación: es la encargada de proporcionar la energía necesaria para el funcionamiento del ordenador. 4. El almacenamiento: es el lugar donde se almacenan los datos y programas de forma permanente. El almacenamiento puede ser interno, como un disco duro o una unidad de estado sólido, o externo, como un dispositivo USB o un disco duro externo. 5. Dispositivos de entrada/salida: son los dispositivos que permiten la interacción del usuario con el ordenador, como el teclado, el mouse, la pantalla, la impresora, el escáner, entre otros. Cuando se inventó la máquina de Von Neumann, la placa base tenía un tamaño de un salón de universidad, pero gracias a los avances tecnológicos que hubo, actualmente la conocemos como es hoy en día. Está compuesta por una cantidad enorme de conexiones tecnológicas. La conexión más importante que tiene es la del procesador, lo que se lo conoce como el cerebro de la placa base. Esta también, puede conectarse a cosas que le da mucha más fuerza, en la parte de arriba del gráfico se puede apreciar uno figuras que sobresalen, esas son los puertos donde se conectan los dispositivos de entrada y salida. Todo esto es para que la placa base en su cerebro, la RAM y disco duro haga las cuenta necesarias que requiera. La fuente de alimentación es la encargada de transformar la electricidad proveniente de la corriente eléctrica, en las diferentes corriente continuas que necesita cada uno de los componentes. Para Von Neumann esta era casi como una unidad de control, ya que esta se encarga de que el resto no se queme. Compatibilidad: Para que una CPU funcione correctamente en un ordenador, es necesario la contabilidad con los elementos básicos del mismo, especialmente con la placa base y la memoria RAM: Para asegurarse de que una CPU es compatible con una placa base es fundamental que tengan el mismo modelo de socket. Como se ha comentado, el socket es el lugar en la placa base donde se inserta la CPU. Si no son compatibles, será imposible conectar uno a otro, sería tan absurdo como tratar de utilizar un cargador de móvil en un móvil que no tiene ese tipo de puerto. Imposible enchufarlo. Por otro lado, y tal como se expone en la imagen anterior, no únicamente con compatibilidad de socket sería suficiente. También es fundamental que la memoria RAM sea compatible tanto con la CPU como con la placa base. Una compatibilidad que se resume en 2 aspectos clave: Tipo: la DDR4 es una de las más actuales, la tecnología DDR4 no es compatible con las anteriores (DDR3, DDR2...) y viceversa. Es fundamental que sean del mismo tipo para asegurar compatibilidad. Velocidad: la memoria guarda datos e información. Datos e información que se mueven a una velocidad adecuada, ni más rápido ni más lento. Es fundamental que tanto la CPU como la placa base puedan trabajar a la misma velocidad que la memoria RAM. ○ Importante: esta velocidad no tiene nada que ver con la frecuencia de reloj de la CPU, una cosa es la velocidad a la que la CPU hace cuentas (frecuencia de reloj) y otra a la que se guardan los resultados en memoria (la velocidad que estamos aquí comentando) La velocidad es de suma importancia, ya que la velocidad tiene que ser la misma pata que así los datos puedan fluir de un lado a otro de forma correcta Cuando se habla de compatibilidad, se habla de la máquina de Von Neumann, todos sus elementos conectados, trabajando al unísono con un solo objetivo, hacer cuantas como sinónimo de operaciones, de funcionalidad