REPRESENTACION DE DATOS LA MEMORIA La unidad básica de almacenamiento en memoria es el BYTE BYTE = Octeto o grupo de 8 bits
REPRESENTACION DE DATOS
LA MEMORIA
La unidad básica de almacenamiento en memoria es el BYTE
BYTE = Octeto o grupo de 8 bits
Luego, con 1 BYTE es posible representar 28=256 elementos de información (datos)
Tenemos
Se observa que existen 2 representaciones sin signo y con signo
TIPOS DE DATOS EN C++
Un Tipo entero en C++ ocupa 2 bytes = 16 bits.
Luego, es posible representar 216=65536 datos (elementos de información) con representaciones sin signo y con signo que corresponde a las declaraciones en C++
unsigned int Entero sin Signo. Ocupa 2 bytes = 16 bits. Varia desde 0 hasta 216 – 1 = 65535
EJEMPLO: Declaramos 1 variable entera p unsigned int p=24;cout<<p; // Visualiza en Pantalla el valor 24p=65535; // Maximo Valor que puede asumir la variablecout<<p; // Visualiza en Pantalla el valor 65535
En memoria, la variable p = 65535 se representa en su equivalente binario
1111 1111 1111 1111
int Entero con Signo. Ocupa 2 bytes = 16 bits. Varia desde -(215 – 1) = -32767 hasta +215 = +32768EJEMPLO: Declaramos 1 variable entera p int p=24;cout<<p; // Visualiza en Pantalla el valor 24p=-1;cout<<p; // Visualiza en Pantalla el valor -1
En memoria, la variable p = -1 se representa en su complemento binario a 2
1111 1111 1111 1111
long Entero Largo con Signo. Ocupa 4 bytes = 32 bits. Varia desde -(231 – 1) hasta +231
EJEMPLO: Declaramos 1 variable entera hlong h;h=1000000;cout<<h; // Visualiza en Pantalla el valor 1000000h=-1;cout<<h; // Visualiza en Pantalla el valor -1En memoria, la variable h = -1 se representa en su complemento binario a 2
1111 1111 1111 1111 1111 1111 1111 1111
char Carácter ó Entero sin signo. Ocupa 1 byte = 8 bits.Varia desde 0 hasta 28 – 1 = 255EJEMPLO: Declaramos 1 variable carácter cchar c;c=’@’;cout<<c; // Visualiza en Pantalla el carácter @c=64;cout<<c; // Visualiza en Pantalla el carácter @En memoria, la asignacion c = ‘@’ ó c=64 se representa en su equivalente binario
0110 0100
double Numero Real
NUMEROS NEGATIVOS
EJEMPLO
En base 10 tenemos la siguiente operación
Se observa que en el sistema decimal el número negativo -06514 se expresó en términos de su complemento a 10.
Dado que la Resta no existe desde el punto de vista del Procesamiento de Datos, en el sistema binario los números negativos se representan en un formato de COMPLEMENTO A 2
Ejemplo:
Representar los siguientes números negativos en un formato de 1 byte
-40
-105 (Ejercicio)
Representar los siguientes números negativos en un formato de 2 bytes
-40
-105 (Ejercicio)
PROGRAMACION ESTRUCTURADAIncorpora tres tipos de estructuras o lógicas de control:
Lógica Secuencial Lógica Condicional. Alternativa o Selectiva Lógica Iterativa o repetitiva
LÓGICA SECUENCIALo Establece que las instrucciones se ejecutan una a continuación de otra
Las instrucciones se ejecutan una a continuación de otra
o Ejemplos Calcular la suma y producto de dos enteros A y B
Convertir radianes a grados sexagesimales y centesimales Convertir grados Celsius a grados Fahrenheit y Kelvin Convertir gramos a onzas y libras Convertir metros a pulgadas, pies, yardas
LÓGICA CONDICIONAL, ALTERNATIVA O SELECTIVAo Establece el flujo de ejecución de acuerdo a una prueba o condición lógica
o Ejemplos Dado un entero N determinar si es par/impar
Dado un entero N asociar al día de la semana de modo que 1 Lunes 2 Martes 3 Miércoles 4 Jueves 5 Viernes 6 Sábado 7 Domingo
Versión 1
Versión 4
Solucionar la Ecuación Cuadrática Ax2+Bx+C=0
LÓGICA ITERATIVA Ó REPETITIVAo Permite la ejecución continua repetitiva de instrucciones
EJEMPLO :
- Generar N números aleatorios y determinar la suma y promedio
- LOGICA FOR
- LOGICA WHILE
PRACTICA
EJEMPLO : Dado un entero N generar sus divisores.
Al establecer un entero tal como 24, se deben generar sus divisores tal como se muestra
El algoritmo ó seudocódigo asociado al problema es
La codificación en C++ del problema
La pantalla de ejecución es
EJEMPLO: Aproximar el área bajo la curva de una función polinomial
Se desea aproximar el área bajo la curva de la función f(x)=x2 en un determinado intervalo [A,B]