Descargar

Organización del computador

Enviado por Pablo Turmero


    edu.red

    Organización Los computadores comprenden el lenguaje de los números La organización de un computador depende entre otros factores del sistema de representación numérica adoptado Se trabaja con el sistema binario, de donde proviene el término bit como contracción de “binary digit”

    edu.red

    Sistemas de numeración

    Un sistema de numeración es un conjunto de símbolos y un conjunto de reglas de combinación de dichos símbolos que permiten representar los números enteros y/o fraccionarios. Dentro de los sistemas de numeración posibles un conjunto importante, destacado, es el constituido por los sistemas de numeración posicionales.

    edu.red

    En un sistema de numeración posicional de base b, la representación de un número se define a partir de la regla: (…a3a2a1a0.a-1 a-2 a-3 …)b= …+ a2b2+ a1b1+ a0b0+ a-1b-1+ a-2b-2+ a-3b-3+ … Donde b es un entero no negativo mayor a 1 y cuando los ai pertenecen al conjunto de enteros en el rango 0 =ai< b El punto que aparece entre los dígitos a0 y a-1 se denomina punto fraccionario. Cuando b = 10 se lo llama punto decimal y cuando b = 2, punto binario. Sistemas de numeración

    edu.red

    Sistema Decimal: Es el sistema de numeración utilizado en la vida cotidiana, cuya base es diez, utilizando los símbolos 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9 . Sistema Binario: los dos símbolos utilizados son el 0 y el 1, los que reciben el nombre de bit (binarydigit). Sistema Octal: de base 8, los símbolos utilizados son 0, 1, 2, 3, 4, 5, 6,7. Sistema Hexadecimal: de base 16, los símbolos utilizados son 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F Sistemas de numeración

    edu.red

    Ejemplos 243.5110 = 2 * 102 + 4 * 101 + 3 * 100 + 5 * 10-1 + 1 * 10-2

    2123 = 2 * 32 + 1 * 31 + 2 * 30 = 2310

    101102 = 1 * 24 + 0 * 23 + 1 * 22 + 1 * 21 + 0 * 20 = 2210

    edu.red

    Métodos de cambio de base Método de restas sucesivas Método del resto de cocientes

    Representemos 10410 en base 3

    edu.red

    Métodos de cambio de base(para fracciones) Métodos de restas sucesivas Métodos del resto de cocientes Representemos 0.430410 en base 5

    edu.red

    Métodos de cambio de base(para fracciones) Las fracciones no siempre pueden ser convertidas en forma exacta, con una expresión finita. (0.3)3 = 2 * 3-1 = 2 + 1/3 En definitiva, las fracciones en una base sólo pueden ser estimadas como una expresión finita en otra.

    edu.red

    Conversión de números con signo Signed magnitude: El bit más a la izquierda es usado como indicador de signo. 1 implica que el número es negativo, 0 que es positivo. Si usamos palabras de 8 bits, vamos a poder representar el rango [-(27-1), 27-1]. En general, sobre palabras de n bits podremos representar el rango [-(2n-1), 2n-1]. La suma es igual que en el sistema decimal, incluyendo el concepto de acarreo: En caso de llegar con un acarreo al bit 8, nos encontramos en una situación de overflow.

    edu.red

    Conversión de números con signo Sistemas de complemento: la idea es usar los números “más altos” como números negativos. El complemento de un número se obtiene restándo dicho número al número más grande que puede representarse con el tamaño de palabra con que contamos.

    (-52)10 = (999)10 – (52)10 = (947)10

    (167)10 – (52)10 = (167)10 + (947)10 = (114)10 + (1)10 = (115)10

    El acarreo se suma al dígito menos significativo. El complemento a r en d dígitos del número N es (rd-1)-N.

    edu.red

    Conversión de números con signo Complemento a 1: La idea es igual a lo que vimos en base 10 sólo que las operaciones se realizarán entre expresiones binarias: En este caso, el rango representado es el mismo que el que presentamos para signed magnitude.

    (-101)2 = (1111)2 – (0101)2 = (1010)2

    Ejercicio: convencerse de que tomar el complemento a 1 de un número binario es apenas invertir los dígitos.

    edu.red

    Conversión de números con signo Complemento a 2: La idea detrás de este método es la misma que se presentó como Complemento a 1, salvo que realizaremos la resta sobre el menor número que resulta mayor a todos los números representables con el tamaño de palabra con el que contamos: (-101)2 = (10000)2 – (00101)2 = (1011)2

    Ejercicio: convencerse de que complemento a 2 no es más que complemento a 1, más 1.

    El rango representable con complemento a 2 es [-(2n-1), 2n-1-1] El complemento a r en d dígitos del número N es rd-N si N != 0 y 0 en caso contrario.

    edu.red

    Representación decimal de un número en complemento a 2 Para los positivos es trivial, se hace lo que vimos en transparencias anteriores evaluando el polinomio que corresponda a la expresión binaria. En el caso de los negativos debemos hacer el procedimiento inverso. Se invierten los bits, Se suma 1, Se convierte a decimal Se le coloca el signo – adelante Esto es equivalente a obtener el complemento a 1 y sumarle 1.

    edu.red

    Suma en complemento a 2 La suma se opera exáctamente igual a la suma en complemento a 1. La resta, al igual que vimos antes se reduce a la suma del complemento del sustraendo. Detectando overflow: Si el acarreo sobre el bit de signo es igual al acarreo fuera de dicho bit, no hay overflow. En caso que sean distintos sí lo hay.

    edu.red

    Multiplicación de enteros Hay casos en los que se cuenta con hardware que optimiza esta operacióne, pero en el fondo son optimizaciones sobre el método que nos enseñaron en la primaria.

    Se basa en el simple hecho de que 0 multiplicando cualquier número es 0 y 1 multiplicando cualquier número es ese mismo número.

    edu.red

    Multiplicando números enteros La clave del algoritmo es reproducir el desplazamiento que se produce antes de la adición, que no es más que un decalaje en una posición.

    edu.red

    Dividiendo números enteros Al igual que en la multiplicación, hay casos en los que se cuenta con hardware que optimiza esta operación, pero nuevamente el método es el más intuitivo. Se basa en la sucesiva sustracción del divisor al dividendo. En el caso de la división entera, el resultado es presentado como dos números, cociente y resto.

    edu.red

    Bibliografía Null, L. and J. Lobur. The Essentials of Computer Organization and Architecture, Jones and Bartlett Publishers, Feb. 2003