Dos problemas básicos del procesamiento de datos en el Capítulo 8 del lenguaje ensamblador (versión Wang Shuang) notas de estudio (1)

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]

Inserte la descripción de la imagen aquí

(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

Inserte la descripción de la imagen aquí

(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

Inserte la descripción de la imagen aquí


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

Inserte la descripción de la imagen aquí


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:

  1. Datos inmediatos (idata)
  2. Registrarse
  3. 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.
Inserte la descripción de la imagen aquí

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.
Inserte la descripción de la imagen aquí

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
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí

Dar explícitamente el registro que contiene la dirección del segmento
Inserte la descripción de la imagen aquí


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.

Inserte la descripción de la imagen aquí


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
Inserte la descripción de la imagen aquí
(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.
Inserte la descripción de la imagen aquí
(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.

116 artículos originales publicados · Me gusta 82 · Visitas 10,000+

Supongo que te gusta

Origin blog.csdn.net/weixin_43092232/article/details/105502239
Recomendado
Clasificación