Memoria Estatica y Dinamica
Que es memoria?
Es un espacio logico para guardar informacion
Que es estática?
Que no se modifica al menos en tiempo de ejecucion
Que es dinamica?
Que se modifica permanentemente .
Memoria estatica
su tamaño y forma es constante durante la ejecucion de un programa
y por tanto se determinan en tiempo de compilacion. El ejemplo tipico son los arrays.
Tienen el problema de que hay que dimensionar la estructura de antemano, lo que puede
conllevar desperdicio o falta de memoria.Concideraciones
- Error en tiempo de ejecucion de indice fuera de rango
- Se debe conocer con anticipación el tamaño de la estructura V [3 ], M[2,2], C[5,3,2]
- Se guarda en memoria adyacente ejem
- Vectores, Matrices, Cubos, registros, archivos
Ventajas
- Lógica simple
- Optimo para resolverproblemas P y M
Desventajas
- No se puede modificar el tamaño de las estructuras en T.D.E
- No se obtima con grandes cantidades de datos
- Desperdicio de momoria cando no se utiliza la totalidad del tamaño por ejem V[100]
Memoria Dinamica
Puede identificarse en tiempo de ejecucion
Puede identificarse en tiempo de ejecucion
Es la forma de implementación de una estructura de datos usando la memoria en forma dinámica del computador, esto consiste en que nuestro programa o estructura de dato solicite un espacio de memoria libre al Sistema Operativo, el Sistema Operativo verifica si existe el tamaño solicitado y lo asigna si lo hubiera ,caso contrario devuelve un puntero nulo. De la misma forma solicitada una ves ya no usada s debe devolver al Sistema Operativo.
Consideraciones
- Manejo transparente del tamaño de la estructura
- Se guarda donde se encuentra el espacio
- No se guarda necesariamente en memoria adyacente
Ventajas
- El tamaño de la estructura no infiere en la lógica del programa
- Es posible disponer de un espacio de memoria arbitrario que dependa de información dinámica (disponible sólo en ejecución) Toda esa memoria que maneja es implementada por el programador cuando fuese necesario.
Desventajas
- Es difícil de implementar en el desarrollo de un programa o aplicación.
- Es difícil implementar estructuras de datos complejas como son los tipos recursivos (árboles, grafos, etc.).Por ello necesitamos una forma para solicitar y liberar memoria para nuevas variables que puedan ser necesarias durante la ejecución de nuestros programas

completar, que es 2+?????????????
ResponderEliminar