Cómo escribir un programa en lenguaje ensamblador que convierta un número hexadecimal en un número binario
Lenguaje compilado
;Allí. Hay muchos métodos para preguntas similares, pero esta vez se usa un método diferente...
;Compila y pasa usando MASM 5.0. (CTRL C termina)
; Los resultados de la ejecución son los siguientes:
; aa ====gt; 10101010
; == =gt;gt;gt; 10111011
;cc ====gt;gt;gt; 11001100
;dd ====gt;gt ;gt ; 11011101
;ee ====gt;gt;gt; 11101110
;ff ====gt;gt;gt; >; af ====gt;gt;gt.10101111
;^C
segmento de datos
crlf db 0dh, 0ah, '$'; Salida Carro Regreso Avance de línea
f1 db 0; Define el número de indicadores de dígitos de la entrada, un 0 significa que la entrada es de un solo dígito
temp db 0; /p >
mess1 db ' ====gt;gt;gt; $'
s1 db '0123456789ABCDEFabcdef'
LL EQU $-S1
fin de los datos
Segmento de código
Supongamos cs: código, ds: datos
proceso principal hasta
inicio: p>
push ds
xor ax, ax
push ax
mov ax, data
mov ds, ax
PUSH DS
POP ES
;-------------------------
ini: ; Inicializar
mov al, 0
mov f1, al
mov temp, al
n1:; carácter de entrada Bit de inicio
mov ah, 8
int 21h
cmp al, 0dh si es retorno de carro, salida
jnz goon
mov bl, temp
salida jmp
goon:
CALL C_1 Compruebe si los caracteres de entrada son legales
mov bl, temp
salida jmp
goon:
CALL C_1; p>