Está en la página 1de 8

Tema 2: Estructuras bsicas de datos 2.0. Introduccin 2.1. Sistemas y cdigo de numeracin 2.2. Clasificacin de datos 2.3.

Datos bsicos 2.4. Dato derivado o puntero 2.5. Datos estructurados 2.6. Constantes y variables 2.7. Operadores 2.8. Expresiones 2.0. Introduccin Un dato es toda aquella informacin caracterstica de una entidad, que es susceptible de tratamiento en un programa informtico. Para todo ordenador, internamente toda la informacin es numrica (cdigo binario). Por ello, para su correcto tratamiento, todos los datos que forman dicha informacin deben estar clasificados de tal forma que los programas sean capaces de realizar operaciones sobre ellos sin dar lugar a error o fallos por parte del sistema. La forma en la que se clasifican los datos establece la estructura y formato de los mismos, as como su representacin dentro de un lenguaje de programacin. 2.1. Sistemas y cdigos de numeracin Desde el punto de vista numrico, el hombre ese expresa con el sistema decimal, constituido por 10 smbolos que son los smbolos del 0 al 9. Desde el punto de vista alfabtico mediante distintas combinaciones de los smbolos del alfabeto. Por otra parte, un ordenador manipula cualquier tipo de dato en cdigo binario, es decir, que toda la informacin la traduce a combinaciones de ceros y unos. Para que pueda darse la necesaria comunicacin hombremaquina es necesario traducir toda la informacin que se desea procesar a ceros y unos. En definitiva, los circuitos de tipo electrnico que conforman un sistema informtico viaja corriente elctrica, por ello, desde un punto de vista lgico la ausencia o presencia de tensin se representa: Mediante una lgica positiva la presencia de tensin representar un uno lgico. La ausencia de tensin representar el cero lgico. Mediante una lgica negativa la presencia de tensin representar un cero lgico. 1

La ausencia de tensin representar el uno lgico. 2.1.1. Sistemas de numeracin Un sistema de numeracin es un conjunto de smbolos y reglas que se utilizan para la representacin de datos numricos. Todo sistema de numeracin se caracteriza por su base, que marca o indica el nmero de smbolos distintos que utiliza para la representacin de cantidades. Siendo el coeficiente el que determina cual es el valor de cada smbolo dependiendo de la posicin que ocupe con respecto al punto decimal. Este tipo de sistemas de numeracin reciben el nombre de sistemas posicinales o ponderados. Dicho de otra forma, un sistema posicional es aquel en el que el valor que representa cada smbolo o cifra de una determinada cantidad depende de su valor absoluto y de la posicin relativa que ocupa dicha cifra con respecto con respecto a la coma o punto decimal. Sistema decimal: Es un sistema posicional que consta de diez smbolos llamados dgitos para la representacin de cantidades. Segn el teorema fundamental de la numeracin (TFN), cualquier nmero expresado en un sistema posicional cualquiera puede expresarse mediante el siguiente polinomio equivalente. Nmero(b = X1 Bi + X11 Bi1 + ... + X2 B2 + X1 B1 + X0 B0 + X1 B1 + X2 B2 + Xn Bn 126,84(0 = 1 102 + 2 101 + 6 100 + 8 101 + 4 102 B es la base. Xi son los coeficientes. i es el ndice o la posicin relativa con respecto al punto decimal. Dada una cantidad expresada en un sistema de numeracin cuya base es B, cada uno de los smbolos (dgitos) utilizados queda representado por Xi donde el subndice i marca la posicin del dgito con respecto al punto decimal. Posicin que hacia la izquierda de la coma se numera de 0 en adelante con incremento de 1 en 1 y hacia la derecha se numera desde 1 con incremento de 1. El nmero de smbolos que constituyen un determinado sistema de numeracin viene dado por la siguiente desigualdad. 0<= Xi < B 2.1.2. Sistema binario Es tambin un sistema posicional o ponderado que consta de 2 nicos smbolos para la representacin de cantidades, esos dos smbolos son el 0 y el 1 y reciben el nombre de bit. El nmero de combinaciones que podemos realizar en el sistema de numeracin binario viene dado por la expresin 2n siendo n el nmero de bits. Para la medida de cantidades de informacin representada en binario se utiliza una serie de unidades mltiples del bit que reciben nombre propio: Nibble o cuarteto: 4 bits 2

Byte u octeto: 8 bits Kilobyte (KB): 1024 Bytes Megabyte (MB): 210 Kb = 10242 Bytes Gigabyte (GB): 210 MB = 10243 Bytes Terabyte (TB): 210 GB = 10244 Bytes Paso de binario a decimal El paso de binario a decimal se llevar a cabo aplicando el TFN al nmero en base 2, ejemplo pasar a decimal el siguiente nmero binario. 11011101,11(2) B(10) 1 20 + 0 21 + 1 22 + 1 23 + 0 24 + 1 25 + 1 26 + 1 21 + 1 22 = 109,75(10) Paso de decimal a binario 37,86(10) B(2)= 101001,1101 0,86 2 = 1,72 0,72 2 = 1,44 0,44 2 = 0,88 0,88 2 = 1,76 37 17 1 2 18 0

2 9 1

2 4 0

2 2 0

2 1

Suma de binario 0+0=1 0+1=1 1+0=1 1+1=0 1 1 1 1 0 0 0 1 0 1 1 1 1(2) 1(2) 0(2)

+ 1

Resta de binario

00=0 0 1 = 1; AC = 1 10=1 11=0 Sistema octal: Es un sistema posicional o ponderado que consta de 8 smbolos para la representacin de cantidades. Paso de B(10) B(8) 45(10) B(8) = 55 (8) 45 5 8 5

Sumas en octal 1 6 0 6 4 3 5 2 0 4 4 1 3(8) 6(8) 1(8)

+ 1

Restas en octal 7 6 1 6 4 2 5 2 2 4 4 7 3(8) 6(8) 5(8)

2.2. Clasificacin de datos Como se vio en el tema anterior, los datos son aquellos elementos considerados como unidad de tratamiento de dentro de un sistema de proceso de datos (SPD), y que al conjunto de esos datos se le denomina informacin. Para el diseo de un programa es importante establecer cuales son las estructuras de datos que se van a utilizar, con el objeto de establecer las operaciones que sobre dichos datos se pueden realizar, para lo cual debemos proporcionar informacin al sistema acerca de los mismos. Los datos manejados en un programa deben llevar asociado por tanto un identificador, un tipo y un valor. Identificador: Es el nombre utilizado en un programa haciendo referencia a un dato, existen algunas normas generales para su empleo, entre los cuales destacan: Pueden estar constituidos por letras y dgitos, y en algunos casos por el signo del subrayado. Ej.: dato_1 Deben comenzar por una letra. No deben contener espacios. El n mximo de caracteres depender del compilador utilizado. El nombre asignado debe tener relacin con la informacin que contiene.

Tipo: Establece el rango o intervalo de valores que puede tomar el dato. Adems determina el espacio de memoria que ocupa dicho rango. Valor: Elemento que debe pertenecer al rango o intervalo de valores segn el tipo definido. Una clasificacin de los posibles tipos de datos que suelen encontrarse en cualquier lenguaje de programacin es la siguiente: Entero Datos Numricos No numricos Reales Carcter Lgico

Datos derivados

Parmetros Estticos Tablas Listas enlazadas Dinmicos Lineal

Datos estructurados

Internos No Lineal Externos Archivos Bases de datos Compuestos Registro

Pilas Colas rboles Grafos

2.3. Datos bsicos Dato de tipo numrico: Se utilizan para obtener magnitudes y se clasifican en enteros y reales. Numrico entero: Se emplea para representar nmeros enteros pudiendo llevar o no el signo correspondiente. Se expresa mediante una serie de dgitos que pueden estar precedido por el signo + o . Ej.: (+1516,1516)(1516). Existen varias formas de representacin interna de los datos numricos enteros. Para nmeros enteros sin signo: Binario puro: El nmero entero completo se pasa a binario teniendo en cuenta la palabra del ordenador. Ej.: 45 0 0 1 Byte 1 0 1 1 0 1

Decimal codificado en binario BCD: Cada dgito decimal se pasa a binario utilizando 4 bits para cada dgito. Ej.: 45 0 4 0 1 0 1 5 1 0 1

Ej.: 657 0 0 1 Byte 0 0 0 1 1 0 0 1 1 Byte 0 1 0 1 1 1

Para nmeros enteros con signo se utilizan 6 mtodos para la representacin interna de nmeros enteros positivos y negativos que son los siguientes: Binario o modulo y signo: Este mtodo de representacin asigna el bit situado ms a la izquierda para la representacin del signo, utilizando el bit 0 para el signo positivo y el bit 1 para el signo negativo. El resto de los bits contiene el modulo o valor del nmero representado en binario puro. Ejemplo: BS (Bit de signo) 0 1 0 1 1 1 0 1

N=3 Binario o mdulo y signo. N bits. 111 3 110 2 101 1 000 0 001 1 010 2 011 3

Rango de presentacin: 2n1 + 1 <= X <= 2n1 1 Se denomina rango de representacin en un mtodo determinado al conjunto de nmeros representables en dicho mtodo. Este mtodo de representacin posee la ventaja frente a otros de tener un rango de representacin simtrico (igual cantidad de valores positivos que negativos). Su mayor inconveniente es el de poseer dos representaciones posibles para el 0. Complemento a 1 (C. a 1) En este mtodo de representacin tambin se reserva el bit situado ms a la izquierda para representar el signo. Los nmeros positivos se representarn igual que en el mtodo anterior y los nmeros negativos se obtienen calculando el complemento a 1 de los nmeros positivos. Ej.: 1011 (11) 0100 6

Resta sumando 1100 (12) 1000 (8) 0100 (4) 1100 0111 10011 1 0100 (4) N=3 110 1 000 0 001 1 010 2 011 3

Rango de representacin 2n+1+1<= X <= 2n11 Complemento a 2 (C. a 2) Tambin se utiliza el bit situado ms a la izquierda para la representacin del signo. Los nmeros positivos se representan en binario puro y los nmeros negativos calculando el complemento a 2 de los positivos. 1101 (13) 0011 (13) 10000 0010 +1 0011

En la operacin de comprobacin se desprecia si hay un ultimo acarreo. N=3 110 2

111 1

000 0

001 1

010 2

011 3

Rango de representacin 2x1 = X <= 2n11 Exceso a 2n1 En este mtodo no se empleo ningn bit para el signo y el valor se corresponde con el nmero ms el exceso. N=8 Exceso = 2n1 = 281 = 128 Ej.: 27 + 128 = 155 10011011 (2) 27 + 128 = 101 01100101 (2) El nmero a codificar es 27 en el ejemplo. Rango de representacin 2n1 <= X <= 2n11 7

Este mtodo de representacin posee al igual que complemento a 2, un rango asimtrico al tiempo que posee una nica representacin posible para el 0. Decimal desempaquetado Cada digito ocupa un octeto (1 byte) teniendo un cuarteto de zona (el cuarteto a la izquierda que para todos los dgitos menos para el ltimo contiene 1111) y un cuarteto de contenido donde se haya el digito decimal codificado en binario (el cuarteto de la derecha). El ltimo digito del nmero contiene el signo del nmero en el cuarteto de zona (1100 para el signo ms y 1101 para el signo menos). 2015 1111 Zona 2 0010 Contenido 1111 Zona 0 0000 Contenido 1111 Zona 1 0001 Contenido 1100 Signo 5 0101 Contenido

Decimal empaquetado En este mtodo de representacin cada digito ocupa un cuarteto y al ultimo digito se le aade un cuarteto con el signo. 2015 0000 Relleno 0010 2 0000 0 0001 1 1100 + 0101 5

Nmero real Se emplea para representar los nmeros con parte decimal o los nmeros muy grandes o muy pequeos que no pueden ser contenidos en un nmero entero. Se puede expresar de dos formas: Punto decimal: Emplea los dgitos del 0 al 9 con su signo correspondiente y un punto para separar la parte entera de la decimal. Notacin cientfica o exponencial: Utiliza el formato mantisa E caracterstica. Nmero = Mantisa * base de exponenciacin exponente 95'16 = 0.9516 * 102 Mantisa: Es un nmero real. Se suele representar en formato normalizado (0.(...)). E: Representa a la base decimal. Caracterstica: Es el exponente correspondiente a un nmero entero con su signo. La representacin interna de los nmeros reales segn el estndar internacional es el siguiente. La base es igual a 2. La caracterstica 0, el exponente se representa normalmente en formato 2n1 y finalmente la mantisa se puede representar en binario puro, modulo signo, C. a 1, C. a 2. Simple precisin: Es para maquinas de 32 bits, el 31 seria el bit de signo. Para el exponente se van a utilizar 8 bits, de las posiciones 30 a la 23 y para la mantisa 23 bits, es decir, desde la posicin 22 a 0.

También podría gustarte