Vous êtes sur la page 1sur 4

REPRESENTACIÓN DE BAJO NIVEL Y ALTO NIVEL DE DATOS.

Introducción

Un lenguaje de programación es un idioma artificial diseñado para expresar


computaciones que pueden ser llevadas a cabo por máquinas como las computadoras.
Pueden usarse para crear programas que controlen el comportamiento físico y lógico de
una máquina, para expresar algoritmos con precisión, o como modo de comunicación
humana. Está formado de un conjunto de símbolos y reglas sintácticas y semánticas 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 ningún sufijo, el tipo de una
constante entera se deduce de su valor según 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 serán truncadas. Obsérvese 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 función del valor declarado (en
ausencia de sufijos L o U)

0 a 32,767 Int
32,768 a 2,147,483,647 Long
2,147,483,648 a 4294967295 Unsigned long
>4294967295 Truncado

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 máximo 037777777777 son truncadas.

Tipos adoptados por las constantes octales en función del valor declarado ( en ausencia
de sufijos L o U).
00 a 077777 int
010000 a 0177777 Unsigned int
02000000 a 017777777777 Long
020000000000 a 017777777777 Unsigned long
>037777777777 truncado

Hexadecimal

Cualquier constante que comience po 0x o 0X es considerada hexadecimal, después se


puede incluir los digitos validos (0…9, a…f, A…F). como se indica en el cuadro adjunto,
las que excedan del valor máximo 0*FFFFFFFF son truncadas.

Tipos adoptados por las constantes hexadecimales en función 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 carácter 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 carácter, 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 carácter 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 carácter, char, signed char y unsigned char, se almacenan en
8-bits (un byte).

En los programas a c++, una función 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 científica, en cuyo caso se añade 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 símbolo 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;
}

Vous aimerez peut-être aussi