diff --git a/fundamentos-programacion/PEC2/README.md b/fundamentos-programacion/PEC2/README.md index 7512f2c..59c81c6 100644 --- a/fundamentos-programacion/PEC2/README.md +++ b/fundamentos-programacion/PEC2/README.md @@ -16,15 +16,103 @@ ## 4. Estructura de memoria - +Conceptos básicos de los efectos que produce un programa en la memoria. ### 4.1. Memoria +Un programa no se ejecuta desde el disco, sino que se carga en la memoria RAM (Random Access Memory). La memoria es un recurso finito y limitado, por lo que es importante gestionarla de forma eficiente. Por este motivo, el SO se encarga de ir moviendo los programas entre la memoria y el disco, pero desde la vista del programador debemos entender que el programa siempre está cargado en memoria. +Cada posición está identificada unívocamente con un valor numérico (su dirección) y tiene capacidad de 8 bytes. + +Cuando asignamos un valor (constante o variable) se asigna un rango de direcciones donde pondrá su valor. #### 4.1.1. Información y espacio +
Tipo | +Tipo C | +Tamaño en bytes | +Rango de valores | +|
---|---|---|---|---|
+ | ||||
Entero | +char | +1 | +-128 to 127 o 0 to 255 | +|
Entero | +unsigned char | +1 | +0 a 255 | +|
Entero | +signed char | +1 | +-128 a 127 | +|
Entero | +int | +2 o 4 | +-32,768 a 32,767 o -2,147,483,648 a 2,147,483,647 | +|
Entero | +unsigned int | +2 o 4 | +0 a 65,535 o 0 a 4,294,967,295 | +|
Entero | +short | +2 | +-32,768 a 32,767 | +|
Entero | +unsigned short | +2 | +0 a 65,535 | +|
Entero | +long | +4 | +-2,147,483,648 a 2,147,483,647 | +|
Entero | +unsigned long | +4 | +0 a 4,294,967,295 | +|
Real | +float | +4 | +1.2E-38 a 3.4E+38 -> 6 decimales | +|
Real | +double | +8 | +2.3E-308 a 1.7E+308 -> 15 decimales | +|
Real | +long double | +10 | +3.4E-4932 a 1.1E+4932 -> 19 decimales | +