El ensamblador convierte el número binario en AX en un código BCD de 4 bits y el resultado de la conversión se almacena en AX.
No hay mucha gente jugando ensamblador ahora, anímenme
; Parámetros de entrada
AX: código binario de 16 bits, rango: 0~270FH, es decir, 0~9999.
;Parámetros de salida
; AX: código BCD de 4 dígitos, rango 0~9999
Proceso BIN2BCD
PUSH BX p>
PUSH CX
PUSH DX
PUSH DI;protección de campo
MOV AX, 1234
RE: p>
MOV CX, 10
SUB DX, DX; borrar dx
DIV CX; dividir DXAX por 10
MOV BL, DL; el resto como DL= =DX
SUB DX, DX; dx clear
DIV CX; igual que arriba
SHL DL, 4
OR BL, DL; comprimir código BCD
SUB DX, DX; dx borrar
DIV CX
MOV BH, DL guardar resto
SUB DX, DX; dx clear
DIV CX
SHL DL, 4
O BH, DL código BCD comprimido
MOV AX, BX
Recuperación de campo POP
POP DX
POP CX
POP BX
RET
BIN2BCD ENDP