Directorio de artículos
Introduccion
Este capítulo es un resumen de todo el contenido anterior. Sabemos que una computadora es una máquina que realiza el procesamiento y el cálculo de datos, por lo que hay dos problemas básicos involucrados:
(1) ¿Dónde están los datos procesados?
(2) ¿Cuánto duran los datos que se procesarán?
Para simplificar la descripción, utilizaremos dos símbolos descriptivos reg y sreg en cursos futuros. reg significa registro, sreg significa registro de segmento.
reg包括:ax,bx,cx,dx,ah,al,bh,bl,ch,cl,dh,dl,sp,bp,si,di
sreg包括:ds,ss,cs,es
8.1 bx, sí, de bp
(1) En la CPU 8086, solo estos cuatro registros pueden usarse para [...] direccionar la unidad de memoria. Por ejemplo, puede usar [bx], pero no puede usar [ax]
(2) En "[...]", estos cuatro registros pueden aparecer individualmente o en una de las siguientes cuatro combinaciones:
1.bx y si
2.bx y di
3.bp y si
4.bp y di
(3) Mientras el registro bp se utilice en [...], y la dirección del segmento no se indique explícitamente en la instrucción, la dirección del segmento se establece por defecto en ss
8.2 Ubicación de los datos procesados por las instrucciones de la máquina
La gran mayoría de las instrucciones de la máquina son instrucciones para el procesamiento de datos. El procesamiento se puede dividir aproximadamente en tres categorías: lectura, escritura y operación.
Antes de que se ejecute la instrucción, los datos a procesar pueden estar en tres lugares: CPU interna, memoria, puerto
8.3 Expresión de ubicación de datos en lenguaje ensamblador
Se utilizan tres conceptos en lenguaje ensamblador para expresar la ubicación de los datos:
- Datos inmediatos (idata)
- Registrarse
- Dirección de segmento (SA) y dirección de desplazamiento (EA)
Datos inmediatos (idata)
Los datos directamente contenidos en la instrucción de la máquina (en el búfer de instrucciones de la CPU antes de la ejecución) se llaman en lenguaje ensamblador: datos inmediatos (idata), que se proporcionan directamente en la instrucción de ensamblaje.
Registrarse
Los datos que debe procesar la instrucción están en el registro, y el nombre del registro correspondiente se proporciona en la instrucción de ensamblaje.
Dirección de segmento (SA) y dirección de desplazamiento (EA)
Los datos a procesar por la instrucción están en la memoria, y el EA se puede dar en el formato de [X] en la instrucción de ensamblaje, y SA está en un cierto registro de segmento.
- El registro que contiene la dirección del segmento puede ser el predeterminado
- El registro que contiene la dirección del segmento también se puede dar explícitamente
Registro de dirección de segmento predeterminado
Dar explícitamente el registro que contiene la dirección del segmento
8.4 Modo de direccionamiento
Cuando los datos se almacenan en la memoria, podemos usar múltiples formas para dar la dirección de desplazamiento de esta unidad de memoria, este método de posicionamiento de la unidad de memoria generalmente se denomina modo de direccionamiento.
8.5 ¿Cuánto duran los datos que serán procesados por la instrucción?
Las instrucciones del 8086CPU pueden manejar dos tamaños de datos, byte (operación de byte, 8 bits) y palabra (operación de palabra, 16 bits). Por lo tanto, debe indicarse en la instrucción de la máquina si la instrucción realiza una operación de palabra o una operación de byte.
(1) Especifique el tamaño de los datos a ser procesados por el nombre del registro
(2) En ausencia del nombre del registro, utilice el operador X ptr para indicar la longitud de la unidad de memoria, X puede ser palabra o byte en la instrucción de ensamblaje.
(3) Otros métodos
Algunas instrucciones predeterminan el acceso a unidades de palabras o unidades de bytes. Por ejemplo, push [1000H] por defecto es unidades de palabras, porque las instrucciones push solo realizan operaciones de palabras. Pop también es solo para operaciones de palabras, porque cada cambio de sp está en unidades de 2.