T10 Representacion interna de los datos PDF

Title T10 Representacion interna de los datos
Course Informática
Institution Universidad de Extremadura
Pages 15
File Size 476.3 KB
File Type PDF
Total Downloads 87
Total Views 142

Summary

Tema para oposiciones...


Description

TEMA 10

TEMA 10: REPRESENTACIÓN INTERNA DE LOS DATOS .

1

TEMA 10 ÍNDICE : 1.- INTRODUCCIÓN. 2.-CODIFICACIÓN INTERNA. CODIFICACIÓN NUMÉRICA. 2.1.-BASES DE NUMERACIÓN. 2.1.1.- SISTEMA DECIMAL. 2.1.2.- SISTEMA BINARIO. 2.1.3.- SISTEMA OCTAL. 2.1.4.- SISTEMA HEXADECIMAL. 2.2.-REPRESENTACIONES NUMÉRICAS EN COMA FIJA. 2.2.1.- BINARIO PURO. 2.2.2.-SIGNO-MAGNITUD. 2.2.3.- COMPLEMETO A LA BASE, COMPLEMENTO A 2 (C2). 2.2.4.- COMPLEMETO A LA BASE, COMPLEMENTO A 1 (C1). 2.2.5.- EXCESO A M. 2.2.6.- BCD. 2.2.7.-OTRAS REPRESENTACIONES NUMÉRICAS EN COMA FIJA. 2.2.7.1.- CODIFICACIÓN EBCDIC. 2.2.7.2.-CODIFICACIÓN BIQUINARIA. 2.3.-REPRESENTACIONES NUMERICAS EN COMA FLOTANTE. 3.-CODIFICACIÓN INTERNA. CODIFICACIÓN ALFANUMÉRICA. 4.-REPRESENTACIONES REDUNDANTES. 4.1.- CÓDIGO DE PARIDAD. 4.2.- CÓDIGO HAMMING.

2

TEMA 10

1.-INTRODUCCIÓN: Desde hace mucho tiempo, el hombre en su vida diaria se expresa, comunica, almacena información, la manipula, etc. mediante letras y números. Para la representación numérica utiliza el sistema de representación decimal, en tanto que, dependiendo del idioma, dispone de un alfabeto que representa estas letras. Siguiendo el mismo principio que guía al hombre, los ordenadores tienen su propio sistema de representación. Debido a su construcción basada fundamentalmente en circuitos electrónicos digitales, utiliza un sistema binario. Esto obliga a transformar la representación de nuestra información, tanto numérica como alfanumérica, a una representación binaria para que la máquina sea capaz de procesarlos. Por cuestiones de índole técnica, los circuitos electrónicos que conforman una ordenador suelen estar capacitados para reconocer señales eléctricas de tipo digital; por lo tanto, se hace necesario que los métodos de codificación internos tengan su origen en el sistema binario, y con ellos se pueda representar todo tipo de informaciones y órdenes que sean manejadas por la ordenador.

2.-CODIFICACIÓN INTERNA. CODIFICACIÓN NUMÉRICA. Con codificación interna numérica nos estamos refiriendo a la representación de los números dentro del ordenador en sus diferentes estados.

2.1.-BASES DE NUMERACIÓN: Son 4: decimal, binaria, octal y hexadecimal. Un sistema de numeración esta formado por una serie de símbolos y reglas que permiten representar cantidades. La base de un sistema de numeración es el número de símbolos disponibles para representar las cantidades. En general se entiende por sistema de numeración a la representación de cantidades numéricas como potencias sucesivas de una determinada base. Además cada sistema de numeración tiene tantos dígitos distintos como el número que expresa su base. Así por ejemplo el sistema de numeración en base 10 , tiene 10 cifras, que van desde el 0..9. De esto deducimos que en cualquier sistema de numeración de base n, el número de símbolos distintos de esa base es n, pero numéricamente hablando, los guaranismos que la representan siguen, de mayor a menor, la siguiente secuencia: [n-1,n-2, n-3 ,.....n-(n-1), n-n] Vamos a tratar los más comunes.

3

TEMA 10

2.1.1.- SISTEMA DECIMAL: Es nuestro sistema actual de numeración queda representado por los guaranismos del 0..9 . En este sistema, los números quedan representados en forma de potencias de 10, es decir, cada número que queramos representar en el sistema de numeración decimal de base 10, se representan por potencias sucesivas de la base en la que están representados (esto mismo se aplicará a cualquier base). Ej: Representación del número 4579 que está en base 10 en forma de potencias sucesivas. Empezando por el bit más significativo (MSB) el de la izquierda: 4*10^3 = 4000 5*10^2 =500 7*10^1=70 9*10^0=9 Que sumando da : 4579 De esta representación podemos deducir, que para representar un número como suma de potencias sucesivas de la base en la que está, tenemos que considerar, que este número multiplica de derecha a izquierda a la base en la que queremos representar el número pero de tal forma que la base estará elevada a una potencia que empieza siendo 0 y se irá incrementando de 1 en 1 hasta el número más alto representado. El sistema de numeración de base 10, responde a la siguiente fórmula: [a1*10^(n-1) + a2 * 10 ^(n-2) + a3 * 10 ^(n-3) + .... + an-n*10^(n-n)]

2.1.2- SISTEMA BINARIO: Es un sistema que empezó a utilizarse casi a la misma vez que aparecieron los primeros ordenadores, ya que todos los ordenadores tienen una arquitectura basada en ese sistema de numeración. En la actualidad los ordenadores digitales registran información en forma de impulsos eléctricos, de tal forma que las memorias, soportes y demás almacenes de información, se estructuran en forma de paso o no de corriente eléctrica. De esta forma queda representada la información. Es internamente, dentro del ordenador, donde la información que nosotros entendemos, está representada en forma binaria por una combinación de ceros y unos. En este sistema, los símbolos que lo componen son dos: el 0 y el 1. En este sistema los números quedan representados en forma de potencias sucesivas de 2 4

TEMA 10

Ej : Supongamos el número 23 en base 10 obtener su representación binaria . Su representación binaria es: 10111 Empezando por el bit más significativo (MSB) el de la izquierda: 1*2^4 +0*2^3+ 1*2^2+ 1*2^1 +1*2^0 = 16+0+4+2+1= 23 De esta representación podemos deducir, que para representar un número como suma de potencias sucesivas de la base en la que está, tenemos que considerar, que este número multiplica de derecha a izquierda a la base en la que queremos representar el número pero de tal forma que la base estará elevada a una potencia que empieza siendo 0 y se irá incrementando de 1 en 1 hasta el número más alto representado. El sistema de numeración de base 2, responde a la siguiente fórmula: [a1*2^(n-1) + a2 *2 ^(n-2) + a3 * 2 ^(n-3) + .... + an-n*2^(n-n)]

2.1.3- SISTEMA OCTAL: Sistema de numeración de base 8, en el que cada número está representado por guaranismos comprendidos entre el 0 y el 7. En este sistema de numeración los números quedan representados en potencias sucesivas de 8, utilizando también la notación posicional, en el que cada número de base 10 queda representado por una suma de potencias sucesivas de base 8. En el sistema de numeración octal podemos representar además cada dígito octal en forma de una combinación de 3 dígitos binarios. De esta forma los 8 dígitos octales, pueden quedar representados en forma binaria. Es por ello que es más fácil pasar el número a binario y luego por esta correspondencia a octal.

2.1.4- SISTEMA HEXADECIMAL: Sistema de numeración de base 16, en el que cada número está representado por guaranismos comprendidos entre el 0 y el 9 y las letras A..F, que en total suman 16 guaranismos. En este sistema de numeración los números quedan representados en potencias sucesivas de 16, utilizando también la notación posicional, en el que cada número de base 10 queda representado por una suma de potencias sucesivas de base 16.

5

TEMA 10 Ya sabemos que cada dígito octal se puede representar con tres dígitos binarios, pues bien, cada dígito hexadecimal se puede representar con 4 dígitos binarios. Si suponemos un número como el 29 en base 10, este en binario seria 11101 y 35 en octal. Pues si ahora agrupamos los dígitos binarios de 4 en 4 añadiendo a la izquierda los ceros que falten, obtenemos la siguiente combinación 0001 1101, que en hexadecimal es 1D.

2.2.- REPRESENTACIONES NUMERICAS EN COMA FIJA: La representación de números en punto fijo tiene varias formas de tratar el signo de un número. El término de punto fijo se refiere al hecho de que “el punto decimal” se puede considerar en una posición fija en una palabra de ordenador. Si se considera a esta posición al extremo derecho, todos los números son enteros, y positivos o negativos.

2.2.1.-BINARIO PURO: Sistema posicional de base 2 para números enteros. Extensión de signo, añadiendo 0s por la izquierda del MSB (bit más significativo). Rango:

2.2.2.-SIGNO-MAGNITUD: En este sistema de representación, el bit que está situado más a la izquierda representa el signo, y su valor será 0 para el signo + y 1 para el signo -. El resto de bits (n-1) representan el módulo del número. Suponemos en principio que los números no poseen parte decimal, por lo que la coma se supone implícita a la derecha.

6

TEMA 10 Por ejemplo, supongamos que disponemos de 8 bits, y queremos representar los números 10 y –10. Veamos cuales son sus representaciones. 0 (+) 0 0 0 1 0 1 0 representa al número 10, 1 (-) 0 0 0 1 0 1 0 representa al número –10. Se denomina rango de representación en un método determinado al conjunto de número representables en el mismo. Para módulo y signo el rango de representación es, si se disponen de n bits:

Rango : [−2n−1 + 1,- 0, 0, 2n−1 − 1] La ventaja que presenta este sistema frente a otros es la de poseer rango simétrico (igual cantidad de números positivos que negativos), mientras que su mayor inconveniente es el de poseer dos representaciones para el número 0. El cual se representa tanto con un signo positivo (0) como con uno negativo (1) y el resto de los bits en 0.

2.2.3.- COMPLEMETO A LA BASE, COMPLEMENTO A 2 (C2) Este sistema de representación utiliza el bit de más a la izquierda para el signo, correspondiendo el 0 para el signo + y el 1 para el signo -. Para los números positivos, los n -1 bits de la derecha representan el módulo (igual que en los dos sistemas anteriores). El negativo de un número positivo se obtiene en dos pasos: 1. Primer paso: Se complementa el número positivo en todos sus bits (cambiando ceros por uno y viceversa), incluido el bit de signo, similar a complemento a 1. 2. Segundo paso: Al resultado obtenido se le suma 1 (en binario), despreciando el último acarreo si existiera. Veamos la representación en complemento a 2 de los números 10 y –10 para el caso de n=8 bits. 0 (+) 0 0 0 1 0 1 0 representa al número 10, 1 (-) 1 1 1 0 1 1 0 representa al número –10. Para el complemento a 2 el rango de representación es, si se disponen de n bits: Rango: [−2n−1, 0, 2n−1 − 1] La principal ventaja es la de tener una única representación para el número 0, ya que el 0 positivo o negativo se representan igual (todo 0’s).

2.2.4.- COMPLEMETO A LA BASE, COMPLEMENTO A 1 (C1): Este sistema de representación utiliza el bit de más a la izquierda para el signo, correspondiendo el 0 para el signo + y el 1 para el signo -. Para los números positivos, los n-1 bits de la derecha representan el módulo (igual que en el sistema anterior). El negativo de un número positivo se obtiene 7

TEMA 10 complementando todos sus dígitos (cambiando ceros por uno y viceversa) incluido el signo. Veamos la representación en complemento a 1 de los números 10 y –10 para el caso de n=8 bits. 0 (+) 0 0 0 1 0 1 0 representa al número 10, 1 (-) 1 1 1 0 1 0 1 representa al número –10. Para el complemento a 1 el rango de representación es, si se disponen de n bits: Rango: [−2n−1 + 1, -0 , 0, 2n−1 − 1] La ventaja que presenta este sistema frente a otros es la de poseer rango simétrico (igual cantidad de números positivos que negativos), mientras que su mayor inconveniente es el de poseer dos representaciones para el número 0. El cual se representa tanto con todos 0 como con todos los bits a uno.

2.2.5.- EXCESO A M: El número A se representa como A + M en binario puro. M suele valer 2n-1 siendo n el número de bits utilizados en la representación. Con palabra de longitud n: Rango: [−2n−1, 0, 2n−1 − 1] (Idem. a C2) Ejemplos: El -16 se representa como El 0 se representa como El -128 se representa como El 32 se representa como

112 128 0 160

0111 0000 1000 0000 0000 0000 1010 0000

Esto es equivalente escribir el número en C2 con n bits y negar el MSB

2.2.6.- BCD: El sistema BCD es una forma particular de emplear el sistema binario, que sirve para la representación de números decimales. Cada dígito decimal se expresa por 4 bits, según se representa en la siguiente tabla:

8

TEMA 10

2.2.7.-OTRAS REPRESENTACIONES NUMÉRICAS EN COMA FIJA: Cabe destacar:

2.2.7.1.- CODIFICACIÓN EBCDIC: Es un sistema de codificación de caracteres alfanuméricos y numéricos Cada número queda representado por un número de 8 bits. De esta forma con este CÓDIGO se pueden representar hasta 256 combinaciones diferentes, ya que 2^8 = 256 , es decir, posibles combinaciones de dígitos binarios. La tabla de código de EBCDIC , para representación numérica es : Carácter

EBCDIC

0 1 2 3 4 5 6 7 8 9

1111 0000 1111 0001 1111 0010 1111 0011 1111 0100 1111 0101 1111 0110 1111 0111 1111 1000 1111 1001

Hay dos clases: EBCDIC empaquetado: Con el EBCDIC empaquetado se puede representar cada dígito decimal por un grupo de cuatro dígitos binarios. De esta forma se representa cada número con sus cuatro dígitos correspondientes en binario. En el caso del empaquetado es que en cada octeto (8 bits) representa 2 dígitos, además, el signo se representa con los últimos cuatro bits del último octeto. EBCDIC desempaquetado: En este caso se utilizan para representar un dígito los 8 bits, el octeto al completo, es decir, para representar un dígito usaremos los cuatro bits menos significativos para representar el dígito y los cuatro más significativos (MSB) serán 1’s, al revés que en el empaquetado que utilizamos un octeto (8 bits) para representar dos dígitos .

2.2.7.2.- CODIFICACIÓN BIQUINARIA: Es un código en el que cada dígito representa un peso determinado usando siempre una longitud constante de 7 bits. Está constituido en dos grupos, uno de 2 bits y otro de 5 bits. Los dos bits del grupo de la izquierda se emplean para indicar si el número está por encima del 5 o por debajo.

9

TEMA 10 Carácter

BIQUINARIO

0 1 2 3 4 5 6 7 8 9

01 00001 01 00010 01 00100 01 01000 01 10000 10 00001 10 00010 10 00100 10 01000 10 10000

2.3.- REPRESENTACIONES FLOTANTE:

NUMERICAS

EN

COMA

La coma o punto flotante surge de la necesidad de representar números reales y enteros con un rango de representación mayor que el que nos ofrece la representación en punto fijo y posibilitar a la ordenador el tratamiento de números muy grandes y muy pequeños. Estas ventajas que nos ofrece la coma flotante traen como contraprestación una disminución (relativamente pequeña) en la precisión de los números representados. En su representación se utiliza la notación científica o exponencial matemática en la que una cantidad se representa de la siguiente forma: n° = mantisa * base de exponenciación^exponente

Un número en esta notación tiene infinitas representaciones, de las que se toma como estándar la denominada normalizada, que consiste en que la mantisa no tiene parte entera y el primer dígito o cifra a la derecha del punto decimal es significativo (distinto de 0), salvo en la representación del número 0. Ejemplo: Representación del número decimal 835.4 con base de exponenciación 10 siendo está última expresión la que corresponde al número normalizado. En este sistema de codificación de números, se dividen los bits disponibles en la palabra o doble palabra de la ordenador entre la mantisa y el exponente, teniendo una base de exponenciación determinada (2 o potencia de 2). Normalmente la definición de la coma flotante de una ordenador sigue las siguientes reglas: 

El exponente se representa en uno de los siguientes sistemas de codificación: módulo y signo o exceso a 2n-1, siendo siempre n un número entero. En este sistema de codificación el exponente también recibe el nombre de característica. 10

TEMA 10  

La mantisa es un número real con el punto decimal implícito a la izquierda de sus bits, representada normalmente en uno de los siguientes sistemas de codificación: módulo y signo, complemento a 1 o complemento a 2. La base de exponenciación es una potencia de 2 determinada por el fabricante de la ordenador (2, 8 o 16)

Existen muchas formas de representación en coma flotante, variando su longitud de la palabra de la ordenador, la base de la exponenciación, el número de bits reservados para la mantisa y para el exponente, el sistema utilizado para representar la mantisa y el exponente, etc.. La coma flotante se define particularmente en cada caso.

El rango de representación en la coma flotante debe ser analizado teniendo en cuenta los máximos y mínimos valores representables tanto con signo positivo como negativo:

Conviene observar que existen cuatro zonas de números que no pueden ser representados mediante un determinado formato de coma flotante. Estas zonas están ubicadas cercanas al 0, tanto para valores positivos como negativos (subdesbordamiento positivo o negativo), como para valores grandes (positivos) o chicos (negativos) que exceden el rango de representación. Ejemplo: Un ordenador utiliza el siguiente formato para registrar números en coma flotante: 1) Los bits del 23 al 30 se utilizan para representar el exponente en exceso a 128 (27). 2) Los bits del 0 al 22 se utilizan para representar la mantisa normalizada para el sistema Módulo y signo. 11

TEMA 10 3) El bit 31 se utiliza para representar el signo de la mantisa (0 para el +). 4) La base de exponenciación es 2. 5) El 0 se representa con todos los bits en 0. Representar en este formato el número 12: 1) 12 en notación normalizada de base 2 es 0.75 * 24 . 2) El exponente de valor 4 en exceso a 128 es: 10000100. 3) La mantisa 0.75 en binario es 0.11 de donde la representación del número 12 quedará como: 0 10000100 11000000000000000000000 signo (+) exponente 4 mantisa 0.75 Representar en el formato definido el –12. En este caso la notación normalizada sólo sufre cambio en el signo de la mantisa (-0.75 * 24), la expresión quedará entonces: 1 10000100 11000000000000000000000

signo (-) exponente 4 mantisa 0.75

El rango de representación de este formato en coma flotante será:

3.-CODIFICACION INTERNA. CODIFICACIÓN ALFANUMÉRICA. Una ordenador puede trabajar internamente con un conjunto de caracteres que nos permitirán manejar datos, informaciones, instrucciones, órdenes de control, etc. Este conjunto de caracteres podemos subdividirlo en los siguientes grupos:       

Caracteres alfabéticos . Mayúsculas (A..Z sin la Ñ) . Letras minúsculas (a..z sin la ñ) . Cifras decimales: los números 0, 1, ..., 9 . Caracteres especiales . Caracteres como el . , ; : * @, etc. Ordenes de control. Equivalen a las teclas enter, tabulación, esc, etc.

Ejemplos de códigos alfanuméricos:    

6 bits (64 caracteres posibles) FIELDATA y BCDIC . 7 bits (128 caracteres posibles) ASCII. 8 bits (256 caracteres posibles) ASCII extendido y EBCDIC. 16 bits (65536 caracteres posibles) UNICODE.

12

TEMA 10

En general cada carácter se maneja internamente en un ordenador por medio de un conjunto de 8 bits mediante un sistema de codificación binario que denominaremos código de caracteres. Cada ordenador tiene su código de caracteres definidos por el fabricante, si bien la mayoría de ellos adaptan a sus equipos códigos estándar de los ya establecidos. En estos códigos se representa cada carácter por medio de un byte, con lo cual todo tipo de información puede ser utilizada internamente, formando cadenas de bytes sucesivos que representarán cadenas de caracteres para que la máquina las maneje e interprete. No todos los tipos de códigos utilizan para la representación de caracteres los ocho bits de un byte; en la actualidad se tiende a utilizar códigos de 8 bits aunque siguen existiendo algunos códigos de 6 y 7 bits. Los primeros códigos utilizados fueron de 6 bits, que permitían la representación de 26 caracteres distintos (64 caracteres), que generalmente se corresponden a:   

26 letras mayúsculas. 10 cifras numéricas . 28 caracteres denominados especiales .
...


Similar Free PDFs