Escrito en lenguaje ensamblador 8086 para convertir números hexadecimales en códigos ASCII
código?segmento asumir?cs: código org?100h
inicio: jmp?bbb
numdw?0FF78h
array?db ?10, 13, 4?dup(?), 10, 13, '$'
bbb: push?cs pop?ds push?cs pop?es Los siguientes son los 16 bits extraídos por; shifting Haz números y colócalos en una matriz array lea?di, array add?di, 5 mov?cx, 4 mov?ax, word?ptr[num]
again1: push?cx push?ax and ? ax, 0fh mov?byte?ptr[di], al pop?ax mov?cl, 4 ror?ax, cl dec?di pop?cx loop?again1; Código ASCii lea?si, matriz add?si, 2 mov?cx, 4
otra vez2: cmp?byte?ptr[si], 9 jg?next1 add?byte?ptr[si], 30h jmp ? next2
next1: add?byte?ptr[si], 37H
next2: inc?si loop?again2; se llama a la siguiente función DOS para mostrar la matriz lea?dx, matriz mov?ah, 9 int?21h int?20h
código?ends end?start