fbpx
Wikipedia

Dirección de memoria

En informática, una dirección de memoria es un formato de localización de bytes de memoria con la cual un programa informático o un dispositivo de hardware accede o almacena datos para su posterior utilización.

Una forma común de describir la memoria principal de un ordenador es como una colección de celdas que almacenan datos e instrucciones. Cada celda está identificada unívocamente por un número o dirección de memoria.

Para poder acceder a una ubicación específica de la memoria, la CPU genera señales en el bus de dirección, que habitualmente tiene una longitud de 32 bits en la mayoría de máquinas actuales. Un bus de dirección de 32 bits permite especificar hasta = 4.294.967.296 direcciones de memoria distintas.

Las direcciones de memoria se expresan a menudo en código hexadecimal. Por ejemplo, para expresar el valor binario 111111010100000000000010101100 se escribe 0x3F5000AC en hexadecimal.

Aplicación informática

En aplicaciones informáticas las direcciones son asignadas por el sistema operativo a cada programa en ejecución, asegurándose este, comúnmente por medio de un daemon, que las direcciones utilizadas por un ejecutable u otro proceso no se solapen o se escriba en posiciones protegidas de memoria, por ejemplo, en el sector de arranque.

Los sistemas operativos actuales son comúnmente diferenciados según el ancho de palabra soportado por sus registros, es decir 32 y 64 bits. Estas cifras se refieren a la máxima capacidad que dichos sistemas operativos pueden direccionar, así un sistema de 32 bits podría acceder y direccionar, sin utilizar memoria virtual, un máximo de 232 posiciones de memoria, usualmente designadas por un código hexadecimal. Debido a esto, el rango de valores naturales que pueden ser almacenados en 32 bits es de 0 hasta 4.294.967.295 (0x0 - 0xFFFFFFFF), que vienen a ser los famosos 4 gigabytes de capacidad límite de los sistemas operativos de 32 bits.

Para los sistemas de 64 bits, siguiendo el razonamiento anterior, obtendríamos 264 posibilidades, lo que se traduce en un rango de valores desde 0 hasta 18.446.744.073.709.551.615 (0x0 - 0xFFFFFFFFFFFFFFFF), 18,4 exabytes o 18.400.000.000 de gigabytes direccionables.

En los lenguajes de programación, se puede acceder a las direcciones de memoria utilizando punteros. Si bien algunos sistemas operativos y lenguajes actuales no permiten acceder a determinadas direcciones de memoria (o incluso, lenguajes como Java que no implementan punteros), esto no significa que dichas direcciones no existan o no sean correctas, por ejemplo, la posición de memoria 0h es una posición válida y correcta y es normal que se trabaje sobre ella por ejemplo cuando se modifica la tabla descriptora de interrupciones. Pero cuando se trabaja en modo protegido, los programas ejecutándose como aplicaciones de usuario no tienen acceso a algunas posiciones (entre ellas la 0h), pero en el sistema operativo TRES que trabaja en modo real, se puede acceder a toda la memoria disponible con un simple programa de usuario.

Aplicación electrónica

En aplicaciones electrónicas una dirección es el identificador único de cada dispositivo conectado a un bus de datos, así el dispositivo maestro dispondrá de un código para seleccionar uno, y solo uno, de los dispositivos esclavos conectados a él.

Véase también

Enlaces externos

  • Direccionar la memoria
  • Direccionamiento de la memoria
  • Puertos de entrada/salida
  •   Datos: Q835713
  •   Multimedia: Computer memory

dirección, memoria, este, artículo, sección, necesita, referencias, aparezcan, publicación, acreditada, este, aviso, puesto, noviembre, 2011, informática, dirección, memoria, formato, localización, bytes, memoria, cual, programa, informático, dispositivo, hard. Este articulo o seccion necesita referencias que aparezcan en una publicacion acreditada Este aviso fue puesto el 6 de noviembre de 2011 En informatica una direccion de memoria es un formato de localizacion de bytes de memoria con la cual un programa informatico o un dispositivo de hardware accede o almacena datos para su posterior utilizacion Una forma comun de describir la memoria principal de un ordenador es como una coleccion de celdas que almacenan datos e instrucciones Cada celda esta identificada univocamente por un numero o direccion de memoria Para poder acceder a una ubicacion especifica de la memoria la CPU genera senales en el bus de direccion que habitualmente tiene una longitud de 32 bits en la mayoria de maquinas actuales Un bus de direccion de 32 bits permite especificar hasta 2 32 displaystyle 2 32 4 294 967 296 direcciones de memoria distintas Las direcciones de memoria se expresan a menudo en codigo hexadecimal Por ejemplo para expresar el valor binario 111111010100000000000010101100 se escribe 0x3F5000AC en hexadecimal Indice 1 Aplicacion informatica 2 Aplicacion electronica 3 Vease tambien 4 Enlaces externosAplicacion informatica EditarVease tambien Modos de direccionamiento En aplicaciones informaticas las direcciones son asignadas por el sistema operativo a cada programa en ejecucion asegurandose este comunmente por medio de un daemon que las direcciones utilizadas por un ejecutable u otro proceso no se solapen o se escriba en posiciones protegidas de memoria por ejemplo en el sector de arranque Los sistemas operativos actuales son comunmente diferenciados segun el ancho de palabra soportado por sus registros es decir 32 y 64 bits Estas cifras se refieren a la maxima capacidad que dichos sistemas operativos pueden direccionar asi un sistema de 32 bits podria acceder y direccionar sin utilizar memoria virtual un maximo de 232 posiciones de memoria usualmente designadas por un codigo hexadecimal Debido a esto el rango de valores naturales que pueden ser almacenados en 32 bits es de 0 hasta 4 294 967 295 0x0 0xFFFFFFFF que vienen a ser los famosos 4 gigabytes de capacidad limite de los sistemas operativos de 32 bits Para los sistemas de 64 bits siguiendo el razonamiento anterior obtendriamos 264 posibilidades lo que se traduce en un rango de valores desde 0 hasta 18 446 744 073 709 551 615 0x0 0xFFFFFFFFFFFFFFFF 18 4 exabytes o 18 400 000 000 de gigabytes direccionables En los lenguajes de programacion se puede acceder a las direcciones de memoria utilizando punteros Si bien algunos sistemas operativos y lenguajes actuales no permiten acceder a determinadas direcciones de memoria o incluso lenguajes como Java que no implementan punteros esto no significa que dichas direcciones no existan o no sean correctas por ejemplo la posicion de memoria 0h es una posicion valida y correcta y es normal que se trabaje sobre ella por ejemplo cuando se modifica la tabla descriptora de interrupciones Pero cuando se trabaja en modo protegido los programas ejecutandose como aplicaciones de usuario no tienen acceso a algunas posiciones entre ellas la 0h pero en el sistema operativo TRES que trabaja en modo real se puede acceder a toda la memoria disponible con un simple programa de usuario Aplicacion electronica EditarVeanse tambien Bus informatica y Front side bus En aplicaciones electronicas una direccion es el identificador unico de cada dispositivo conectado a un bus de datos asi el dispositivo maestro dispondra de un codigo para seleccionar uno y solo uno de los dispositivos esclavos conectados a el Vease tambien EditarSMBus Circuito integrado auxiliar Interrupcion Registro hardware Enlaces externos EditarDireccionar la memoria Direccionamiento de la memoria Puertos de entrada salida Datos Q835713 Multimedia Computer memoryObtenido de https es wikipedia org w index php title Direccion de memoria amp oldid 135350957, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos