Red de conocimiento informático - Material del sitio web - ¿Cómo implementar estos 2 programas simples en lenguaje ensamblador (8086)?

¿Cómo implementar estos 2 programas simples en lenguaje ensamblador (8086)?

1. Se definen diez números de 16 bits en la unidad de memoria BUFF. Intente encontrar sus valores máximo y mínimo y colóquelos en las unidades designadas MAX y MIN respectivamente.

PILA DE SEGMENTOS SSEG

STK DB 20 DUP(?).

EXTREMOS SSEG

SEGMENTO DSEG

BUFF DW -5,56,45,-96,5,2,457,8,7,-8

¿MAX DW?

MIN DW?

EXTREMOS DSEG

SEGMENTO CSEG

Supongamos CS:CSEG,DS:DSEG ,SS:SSEG

INICIO:MOV AX,DSEG

MOV DS,AX

LEA BX,BUFF

MOV CX,10

MOV AX,[BX]

MOV MIN,AX

MOV MAX,AX

INC BX

DEC CX

OTRA VEZ: MOV AX,[BX]

CMP AX,MIN

JE NEXT

JA A1

MOV MIN,AX

JMP SIGUIENTE

A1: CMP AX,MAX

JB SIGUIENTE

MOV MAX,AX

SIGUIENTE: INC BX

DEC CX

JNZ OTRA VEZ

MOV AH,4CH

INT 21H

CSEG ENDS

END START

2. En el área de almacenamiento a partir de BUFF, se almacenan 30 números con signo y ceros. y coloque estos números en las celdas A1, A2 y A3 respectivamente.

PILA DE SEGMENTOS SSEG

STK DB 20 DUP(?)

EXTREMOS SSEG

SEGMENTO DSEG

BUFF DB .................; Omitido

A1 DB ;Número positivo

A2 DB ;Número negativo

A3 DB ?;cero;

EXTREMOS DSEG

SEGMENTO CSEG

Supongamos CS:CSEG,DS:DSEG,SS:SSEG

INICIO : MOV AX,DSEG

MOV DS,AX

LEA BX,BUFF

MOV DI,30

MOV CX,0

MOV DL,0

L1: MOV AL,[BX]

CMP AL,0

JE L2

JG L3

INC CL

JMP SIGUIENTE

L2: INC DL

JMP SIGUIENTE

L3 : INC CH

SIGUIENTE: INC BX

DEC DI

JNZ L1

MOV A1,CH

MOV A2,CL

MOV A3,DL

MOV AH,4CH

INT 21H

CSEG TERMINA

p>

FINALIZAR INICIO