La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

SEMANA 05_2.

Presentaciones similares


Presentación del tema: "SEMANA 05_2."— Transcripción de la presentación:

1 SEMANA 05_2

2 Lenguaje de maquina SEGMENTO DE PILA EL SEGMENTO DE PILA ES UN AREA DE MEMORIA QUE SE RESERVA PARA HACER ALMACENAMIENTO TEMPORAL DE DATOS (16 BITS) O DIRECCIONES DE RETORNO PARA LOS SUBPROGRAMAS (SUBRUTINAS). LA DIRECCION DE ESTE SEGMENTO SE MANTIENE EN EL REGISTRO SS. EL REGISTRO PUNTERO DE PILA SP CONTIENE EL DESPLAZAMIENTO DE LA CIMA DE LA PILA CUYA DIRECCION ABSOLUTA ES POR TANTO SS:SP. EL REGISTRO DE BASE DE PILA BP SE UTILIZA PARA ACCEDER A LOS DATOS DEL SEGMENTO DE PILA ASI: [BP] , [BP+2], [BP+SI], ETC, REPRESENTAN SS:BP, SS:BP+2, SS:BP+SI, RESPECTIVAMENTE.

3 nombre ES EL IDENTIFICADOR DEL SEGMENTO DE PROGRAMA DE TIPO PILA.
Lenguaje de maquina SEGMENTO DE PILA nombre SEGMENT STACK DB n DUP(?) nombre ENDS EN DONDE: nombre ES EL IDENTIFICADOR DEL SEGMENTO DE PROGRAMA DE TIPO PILA. n ES EL NUMERO DE DIRECCIONES O TAMAÑO DEL SEGMENTO DE PILA DECLARADO (Que estara comprendido entre SS:0000 Y SS:n-1

4 … SEGMENTO DE PILA DIRECCION MEMORIA 1 SS:0000 SS:0001
Lenguaje de maquina SEGMENTO DE PILA DIRECCION MEMORIA 1 SS:0000 SS:0001 SEGMENTO DE PILA SS:n-1 Apila, crece SP = n SS:n

5 CON LA INSTRUCCIÓN: PUSH dato
Lenguaje de maquina APILAMIENTO: PUSH CON LA INSTRUCCIÓN: PUSH dato SE APILA O PONE EL VALOR DE DATO SOBRE LA CIMA DE LA PILA, ES DECIR SP DISMINUYE SU VALOR EN DOS UNIDADES Y SE ESCRIBE EL VALOR DEL DATO EN LA DIRECCION ACTUAL( CON LOS OCTETOS EN ORDEN INVERTIDO). EL DATO PUEDE SER UN REGISTRO O UN VALOR DE MEMORIA.

6 EJEMPLO: SI AX=10AFh Y SP=12E6h, ENTONCES PUSH AX
Lenguaje de maquina APILAMIENTO: PUSH EJEMPLO: SI AX=10AFh Y SP=12E6h, ENTONCES PUSH AX HACE: SP = 12E4h (12E6-2) Y PONE EL VALOR DE AX EN SS:SP. ASI EN LA PILA SE TIENE: AF 10 CIMA ACTUAL SS:12E4 SS:12E5 SS:12E6 CIMA ANTERIOR

7 CON LA INSTRUCCIÓN: POP destino.
Lenguaje de maquina DESAPILAMIENTO: POP CON LA INSTRUCCIÓN: POP destino. SE DESAPILA LA PALABRA A LA QUE APUNTA SP , ESTO ES, SE COPIA ESTA PALABRA EN EL DESTINO ( CON LOS OCTETOS EN ORDEN INVERTIDO) Y SP AUMENTA SU VALOR EN DOS UNIDADES. EL DATO PUEDE SER UN REGISTRO O UN VALOR DE MEMORIA.

8 PONE SP EN 12E6 Y BX RECIBE EL VALOR 10AF.
Lenguaje de maquina DESAPILAMIENTO: POP EJEMPLO: SI LA PILA SE ENCUENTRA COMO EN LA FIGURA ANTERIOR, ENTONCES POP BX PONE SP EN 12E6 Y BX RECIBE EL VALOR 10AF. CIMA ANTERIOR SS:12E6 CIMA ACTUAL

9 MOV AX,[BP] ; MUEVE A AX LOS DOS OCTETOS UBICADOS EN SS:BP
Lenguaje de maquina ACCESO A LOS DATOS DEL SEGMENTO DE PILA LOS DATOS DEL SEGMENTO DE PILA PUEDEN SER ACCEDIDOS (SIN CAMBIAR LA CIMA DE LA PILA) A TRAVES DEL REGISTRO BASE DE PILA BP: MOV AX,[BP] ; MUEVE A AX LOS DOS OCTETOS UBICADOS EN SS:BP MOV BYTE PTR [BP+4],12h ; COMPARA EL OCTETO DADO EN ; SS:BP+4 CON 12h


Descargar ppt "SEMANA 05_2."

Presentaciones similares


Anuncios Google