Je ne comprends pas bien ce que signifie encoder dans ton contexte car tu ne le précise pas mais d'après le titre du message il s'agit de changer de base avec la base 10 comme base initiale.
Alors cela donne:
le nombre à changer de base se trouve dans AX, le résultat dans ECX et la base résultante est dans BX.
push eax
push edx
push esi
mov si, 10
xor ecx, ecx
boucle:
xor edx, edx
div si
xchg ax, dx
mul bx
add cx, ax
adc dx, 0
shl edx, 16
add ecx, edx
push ax
pop ax
or ax, ax
jz boucle
pop esi
pop edx
pop eax
Je n'ai pas testé mais ça devrait marcher.
Core Breaker :)