Red de conocimientos turísticos - Conocimientos sobre calendario chino - El código de la función del lenguaje ensamblador del microcontrolador HEX_ASC es el siguiente. Por favor comente, ¿qué función está implementada? Por favor dé su opinión. Por favor dé su opinión.

El código de la función del lenguaje ensamblador del microcontrolador HEX_ASC es el siguiente. Por favor comente, ¿qué función está implementada? Por favor dé su opinión. Por favor dé su opinión.

La función de este programa es convertir números hexadecimales en números decimales de código ASCII. El número máximo de dígitos es mil.

HEX_ASC:MOV R4,#00H

MOV R2,#0E8H

MOV R3,#03H ;03E8H -- 1000

ASC1: LCALL SUB2; Restar 1000 del número convertido

INC R4; Sumar 1 a R4

JNC ASC1; Continuar la ejecución si el número convertido es mayor que 1000

LCALL ADD2; Suma 1000 al número convertido. Debido a que no es suficiente restar 1000, equivale a restaurarlo.

DEC R4 ; Resta 1 de R4 para obtener el dígito de miles correcto

MOV A,R4 ; ANL A ,#0FH ;

ORL A,#30H ;TO ASCii

MOV R4,A ;

MOV R5,#00H

MOV R2,#64H

MOV R3,#00H ;0064H -- 100

ASC2: LCALL SUB2 ; Igual que arriba, número de 100 dígitos convertido a ASCII

INC R5

JNC ASC2

LCALL ADD2

DEC R5

MOV A,R5

ANL A,# 0FH

ORL A,#30H ;TO ASCii

MOV R5,A

MOV R6,#00H

MOV R2,# 0AH

MOV R3,#00H; 000AH -- 10

ASC3: LCALL SUB2; igual que el número de 10 dígitos anterior convertido a ASCII

INC R6

JNC ASC3

LCALL ADD2

DEC R6

MOV A,R6

ANL A,#0FH

ORL A,#30H ;TO ASCii

MOV R6,A

MOV A,R0 ;conversión de dígitos a ASCII

ANL A,#0FH

ORL A,#30H

MOV R7,A

RET