El direccionamiento es la implementación de un enlace (referencia) a un dispositivo o elemento de datos en su dirección [1] ; establecer una correspondencia entre un conjunto de objetos del mismo tipo y un conjunto de sus direcciones; método para identificar la ubicación de un objeto [2] .
La instrucción no puede contener instrucciones explícitas sobre el operando ; en este caso, el operando está implícito y realmente especificado por el código de operación de la instrucción.
La instrucción puede no contener indicaciones explícitas sobre la dirección del operando que participa en la operación o la dirección en la que debe colocarse el resultado de la operación, pero esta dirección está implícita.
La instrucción no contiene la dirección del operando, sino el propio operando. Con el direccionamiento directo, no se requiere acceso a la memoria para obtener un operando y una ubicación de memoria para almacenarlo. Esto ayuda a reducir el tiempo de ejecución del programa y la cantidad de memoria que ocupa. El direccionamiento directo es conveniente para almacenar varios tipos de constantes.
La dirección se especifica directamente como algún valor, todas las celdas se encuentran en una página. La ventaja de este método es que es el más simple y la desventaja es que el ancho de los registros de propósito general del procesador debe ser al menos tan ancho como el ancho del bus de direcciones del procesador .
Con este método de direccionamiento, la dirección de ejecución se define como la suma del código de dirección de la instrucción y la dirección base, generalmente almacenada en un registro especial: el registro base.
El direccionamiento relativo permite proporcionar acceso a cualquier celda de memoria con una longitud menor del código de dirección de la instrucción. Para hacer esto, se elige el número de bits en el registro base de modo que se pueda direccionar cualquier celda de la memoria principal, y se usa el código de dirección de la instrucción para representar solo un "desplazamiento" relativamente corto. El desplazamiento determina la posición del operando en relación con el comienzo de la matriz dada por la dirección base.
El campo de dirección de la palabra de control contiene solo los bits menos significativos de la celda direccionada. Registro de índice adicional .
El direccionamiento de registro es un caso especial de direccionamiento abreviado. Se utiliza cuando los resultados intermedios se almacenan en uno de los registros de trabajo del procesador central. Dado que hay muchos menos registros que celdas de memoria, un pequeño campo de dirección puede ser suficiente para el direccionamiento.
Por primera vez, se utilizó el direccionamiento indirecto de segundo rango ( punteros ) al programar en MESM [3] . Agregar al comando con el valor de dirección del operando "0" el valor de la celda de memoria en la que se encuentra la dirección del operando requerido, hizo posible usar estas celdas de memoria como valores de dirección, es decir punteros a direcciones de operandos.
El direccionamiento indirecto de rangos superiores se introdujo por primera vez en el lenguaje de programación Address (1955) [4] [5] y se implementó en hardware en la computadora "Kiev" [6] . En el sistema de comando de la computadora "Kiev" hay una operación F, que le permite reducir el rango de la dirección, es decir realizar una "operación de guión" o eliminar la referencia de un puntero , y las operaciones de modificación de dirección de grupo [5] [6] hicieron posible realizar múltiples direccionamientos indirectos de punteros en hardware.
El código de dirección del comando en este caso no indica la dirección con datos, sino la dirección de la celda de memoria en la que se encuentra la dirección del operando o comando. Este es el direccionamiento o punteros de rango 2 . El direccionamiento indirecto se usa ampliamente en computadoras pequeñas y microcomputadoras que tienen una palabra de máquina corta para superar las limitaciones del formato de instrucción corto (el direccionamiento registrado e indirecto se usan juntos).
La eficiencia de los sistemas informáticos diseñados para el procesamiento de datos aumenta si es posible realizar operaciones sobre palabras de longitud variable. En este caso, la máquina puede proporcionar direccionamiento de palabras de longitud variable, lo que generalmente se implementa especificando en la instrucción la ubicación en la memoria del comienzo de la palabra y su longitud.
La memoria de pila , que implementa la asignación de operandos sin direcciones, se usa especialmente en microprocesadores y minicomputadoras .
Dado que el direccionamiento indirecto de registros requiere que el registro esté precargado con una dirección indirecta de la RAM, lo que está asociado con una pérdida de tiempo, este tipo de direccionamiento es especialmente efectivo cuando se procesa una matriz de datos si existe un mecanismo para incrementar o disminuir automáticamente la cantidad. contenido del registro cada vez que se accede a él. Este mecanismo se denomina direccionamiento de autoincremento y autodecremento, respectivamente. En este caso, es suficiente cargar una vez en el registro la dirección del primer elemento de la matriz que se procesa, y luego, cada vez que se acceda al registro, se formará en él la dirección del siguiente elemento de la matriz.
Con el direccionamiento de incremento automático, el contenido del registro se usa primero como la dirección del operando y luego se incrementa por el número de bytes en el elemento de la matriz. Con el direccionamiento de decremento automático, el contenido del registro especificado en el comando primero se decrementa por el número de bytes en el elemento de la matriz y luego se usa como la dirección del operando.
El direccionamiento de autoincremento y autodecremento se puede considerar como una versión simplificada de la indexación, un mecanismo muy importante para convertir las partes de dirección de los comandos y organizar los ciclos computacionales, por lo que a menudo se les llama indexación automática.
Para los métodos implementados por computadora para la resolución de problemas matemáticos y procesamiento de datos, es característica la naturaleza cíclica de los procesos computacionales, cuando los mismos procedimientos se realizan en diferentes operandos ordenados en la memoria. Dado que los operandos procesados durante las repeticiones del bucle tienen direcciones diferentes, sin usar la indexación, sería necesario que cada repetición compusiera su propia secuencia de instrucciones que difieren en las partes de la dirección.
La programación de ciclos se simplifica enormemente si, después de cada ejecución del ciclo, se proporciona un cambio automático en los comandos correspondientes de sus partes de dirección según la ubicación en la memoria de los operandos que se procesan. Este proceso se denomina modificación de instrucciones y se basa en la capacidad de realizar operaciones aritméticas y lógicas en los códigos de instrucciones.
de los sistemas operativos | Aspectos|||||
---|---|---|---|---|---|
| |||||
Tipos |
| ||||
Núcleo |
| ||||
Gestión de procesos |
| ||||
Gestión y direccionamiento de memoria | |||||
Herramientas de carga e inicialización | |||||
caparazón | |||||
Otro | |||||
Categoría Wikimedia Commons Wikilibros Wikcionario |