Red de conocimiento informático - Conocimiento sistemático - Problemas de programación en ensamblador

Problemas de programación en ensamblador

Las variables de memoria y los nombres de los procedimientos no se pueden repetir, por lo que el nombre del procedimiento para encontrar el valor máximo se cambia a MAX1

DATA_SEG SEGMENT

ARRAY DB 72, 78 , 05, 85, 88, 12, 43, 67, 90, 51

MENSAJE1 DB 'MÁXIMO:'

MAX DB 2 DUP (?), 0DH, 0AH, '$ '

p>

DATA_SEG ENDS

segmento de código

asume cs: code, ds: data_seg

proceso principal lejos

mov ax, data_seg

mov ds, ax

lea si, array

llamar a max1

llamar a F2TO10

llamar DISPLAY

mov ah, 1

int 21h

mov ax, 4c00h

int 21h

final principal

proc MAX1 cerca

mov cx, MESSAGE1-array

dec cx

mov al, [si]

siguiente:

cmp al,[si 1]

jae next1

mov al,[si 1]

next1:

inc si

bucle siguiente

ret

max1 endp

F2TO10 proc

lea di, max

mov bl, al

mov cl, 10d

llamada dec_div

mov cl, 1d

llamar dec_div

ret

F2TO10 endp

dec_div proc

mov al, bl

mov ah, 0

div cl

mov bl,ah

añadir al, 30h

mov [di], al

p>

inc di

ret

dec_div endp

display proc near

lead dx, MENSAJE1

mov ah, 9

int 21h

ret

display endp

el código termina

finaliza el principal