Está en la página 1de 4

REPRESENTACIN DE BAJO NIVEL Y ALTO NIVEL DE DATOS.

Introduccin Un lenguaje de programacin es un idioma artificial diseado para expresar computaciones que pueden ser llevadas a cabo por mquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento fsico y lgico de una mquina, para expresar algoritmos con precisin, o como modo de comunicacin humana. Est formado de un conjunto de smbolos y reglas sintcticas y semnticas que definen su estructura y el significado de sus elementos y expresiones. En este tema aplicaremos solamente caracteres para poder armar nuestro programa. Las constantes enteras representan un int, y pueden estar expresadas en los sistemas de numeracion decimal octal o hexadecimal. En ausencia de ningn sufijo, el tipo de una constante entera se deduce de su valor segn se muestra en las tablas que sigue: Observese que las reglas para las constantes decimales son distintas del resto. Decimal: se permiten constantes enteras en formato decimal dentro del rango 0 a 4,294,967,295; las que excedan este limite sern truncadas. Obsrvese que las constantes decimales no puedan comenzar con 0, porque serian interpretadas como octales. int i = 10; // decimal 10 Int i =010; // decimal 8 (octal 10) Int i=0; // decimal 0 = octal 0 Tipos adoptados por las constantes decimales en funcin del valor declarado (en ausencia de sufijos L o U) 0 32,768 2,147,483,648 >4294967295 Octal Todas las constantes que empiecen por 0 se suponen en octal. Si una constante de este tipo contiene digitos ilegales (8 o 9), se produce un mensaje de error; como se indica en la tabla adjunta, las que exceden del valor mximo 037777777777 son truncadas. Tipos adoptados por las constantes octales en funcin del valor declarado ( en ausencia de sufijos L o U). a 32,767 a 2,147,483,647 a 4294967295 Int Long Unsigned long Truncado

00 010000 02000000 020000000000 >037777777777

a 077777 a 0177777 a 017777777777 a 017777777777

int Unsigned int Long Unsigned long truncado

Hexadecimal Cualquier constante que comience po 0x o 0X es considerada hexadecimal, despus se puede incluir los digitos validos (09, af, AF). como se indica en el cuadro adjunto, las que excedan del valor mximo 0*FFFFFFFF son truncadas. Tipos adoptados por las constantes hexadecimales en funcin del valor declarado ( en ausencia de sufijos L o U). 0*0000 a 0*7FFF int 0*8000 a 0*FFFF Unsigned int 0*10000 a 0*7FFFFFFF Long 0*80000000 a 0*FFFFFFFFF Unsigned long >0*FFFFFFFF truncado Una constante carcter es uno o mas caracteres delimitados por comillas simples, como A, +, o \n. en c++, son de un tipo especifico: char del que existen 2 versiones, signed y unsigned. El valor por defecto, el que se supone cuando no se indica nada en concreto ( char a secas depende del compilador, pero puede ser seleccionado. Los 3 tipos char Las constantes de un carcter, tales como A,\t y 007, son representados como valores enteros, int (signed). En estos casos, si el valor es mayor que 127, el bit mas alto es puesto a-1 (=0*FF), es decir, las constantes carcter cuyo valor ASCII es mayor de 127 se representan como numeros negativos, aunque esto puede ser desactivado declarando que los caracteres son unsigned por defecto. Cualquiera de los 3 tipos carcter, char, signed char y unsigned char, se almacenan en 8-bits (un byte). En los programas a c++, una funcin puede ser sobrecargada con argumentos de cualquiera de los 3 tipos: char, signed char y unsigned char (porque son tipos distintos para el compilador). Por ejemplo, los siguientes prototipos de funciones son validos y distintos:

void func (char ch); void fun.(signed char ch); void func(unsigned char ch);

Constantes reales Estas se conforman por una parte entera, seguida por un punto decimal y una parte fraccionaria . se permite la notacion cientfica, en cuyo caso se aade el valor una e o E, seguida por un exponente positivo o negativo. parte entera.parte fraccionaria De lo anterior, decimos que los digitos representan 0 o mas digitos del 0 al 9 y E o e es el smbolo de exponente de la base 10 que puede ser positivo o negativo . Si la constante real es positiva no es necesario especificar el signo es negativa lleva el signo (-). Ejemplos: -17.24 y 17.244283 una constante real tiene tipo double, a menos que se introduzca en ella una f o F ya que en tal caso indicara que es de tipo flotante o una l o L que indicara que es un tipo de long double. El tipo real consiste en un subconjunto de los numeros reales. Los numeros reales siempre tienen un punto decimal y pueden ser positivos o negativos. Un numero real consta de un entero y una parte decimal.

Ejemplo de representacionde alto y bajo nivel #include<iostream.h> #include<string.h> #include<conio.h> int main() { char cadena[100]; char *pcad; char *pcad2;

int longitud=0; cout<<"Dame una cadena"<<endl; cin.getline(cadena,100); pcad=cadena; longitud= cadena; pcad2= pcad+(longitud-1); while(pcad2!=pcad) { cout<<pcad2<<endl; pcad2--; } cout<<*pcad<<endl<<endl; returno 0; }

También podría gustarte