Witam,
Mam taki problem mam zapisany wynik mnożenia dwóch liczb 8 bitowych w zmiennej (w postaci dziesiętnej ). Następnie wczytuje liczbę do AX i chcę ją przekonwertować na kod ascii i wypisać. Problem polega na tym ze jeżeli wartość jest mniejsza od 255 czyli zapisana w AL to wynik jest prawidłowy natomiast jeżeli wynik jest większy i znajduje się w na 16 bitach AX ( AH i AL ) to wypisuje mi tylko wartość z AL.
Kod wygląda tak:
MOV AX,0
MOV AX,[AB]
MOV BL,AL
MOV AH,0
MOV AL,BL
MOV BL,10
DIV BL
MOV BL,AL
MOV BH,AH
ADD BH,30H ; convert to ascii code
MOV DH,BH
MOV AH,0
MOV AL,BL
MOV BL,10
DIV BL
MOV BL,AL
MOV BH,AH
ADD BH,30h ; convert to ascii code
ADD BL,30h ; convert to ascii code
MOV DL,BL
MOV AH,02H
INT 21H
MOV DL,BH
MOV AH,02H
INT 21H
MOV DL,DH
MOV AH,02H
INT 21H