Programa en lenguaje ensamblador: hay 20 números decimales con valores absolutos menores que 100. Encuentre los valores máximo y mínimo a través de la programación y muéstrelos. (Determínelo usted mismo después de programar 20 números)
zuida db 'Max es $'
zuixiao db 'Min es $'
buffer dw 1,5,8,9,3,8 ,3,5,5,5,1,5, 2, 3, 4, 4, 5, 6, 8,9, 6,12
N equ $- buffer
max dw ?
min dw ?
final de datos
Segmento de código
Supongamos cs: código, ds: datos
inicio:mov ax,data
mov ds,ax
mov cx,N
shr cx,1
lea bx,buffer
mov ax,[bx]
mov dx,[bx]
dec cx
nuevamente: inc bx
inc bx
cmp ax,[bx]
jge next1
mov ax,[bx]
jmp next2
next1:cmp dx,[bx]
jl next2
mov dx,[bx]
next2: otra vez Bucle
mov max,ax
mov min,dx
mov dx,seg zuida
mov ds,dx
mov dx,offset zuida
mov ah,09h
int 21h; muestra que Max es
mov dl,byte ptr max
add dl,30H
mov ah,02h
int 21h; el valor máximo mostrado es
mov dl,0ah
int 21h ; avance de línea
mov dl,0dh
int 21h ; retorno de carro
mov dx,seg zuixiao
mov ds , dx
mov dx,offset zuixiao
mov ah,09h
int 21h; Mostrar mínimo es
mov dl,byte ptr min ;Mostrar valores máximos y mínimos
agregar dl