Red de conocimiento informático - Conocimiento sistemático - Intentando interpretar el ensamblador

Intentando interpretar el ensamblador

SEGMENTO DE CÓDIGO

ASUME CS: CÓDIGO

INICIO: MOV AL, 3EH; envíe 3E hexadecimal a AL

MOV BL, AL; luego envíe a BL, BL; también son 3E, principalmente para uso futuro, así que guárdelos primero

MOV DL, AL y luego envíelos a DL; Enviar a DL, DL también es 3E

MOV CL, 4; establezca CL en 4 para prepararse para el siguiente SHR, es decir, desplazarse 4 bits a la derecha

SHR DL, CL. ; SHR (desplazamiento a la derecha) desplazamiento a la derecha, CL incluye el número de desplazamientos a la derecha 4 veces

CMP DL, 9; CMP (comparar)

CMP DL, 9; desplazamientos a la derecha y tiempos de 9, cmp(). compare)

JBE NEXT1; JBE (saltar a una posición menor o igual a 9) es menor o igual a 9, luego salta a NEXT1

ADD DL, 7; si el número en DL es mayor que 9, agregue 7 a DL

NEXT1: ADD DL, 30H; convierta DL más 30H a código ASCII y convierta 0 a Código ASCII. código ASCII, el código ascii de 0 es 30H, el código ascii de 9 es 39H

MOV AH, 2; llame a dos interrupción 2, muestre los caracteres en DL

INT 21H; muestra el código ASCII de bits altos

MOV DL, BL; reasigna los números en BL a DL. Este es el significado de copiar los números a BL

AND DL, BL; DL 7.

AND DL, 0FH; AND (AND lógico), se toman los cuatro bits inferiores de DL y se obtienen los cuatro bits superiores de SHR.

CMP DL, 9; igual que lo anterior, las explicaciones son las mismas

JBE NEXT2

ADD DL, 7

NEXT2: ADD DL, 30H

MOV AH, BL; Vuelva a dar el número en BL a DL.

MOV AH, 2

INT 21H; muestra código ASCII bajo; muestra todo aquí

MOV AH, 4CH a partir de aquí es el formato final fijo general; , llame a dos interrupción 4 para regresar

INT 21H

CODE ENDS regresar a DOS

END STAR.