martes, 3 de diciembre de 2019

Conversión de ASCII a Binario (Dado por el programador)





import base64
try:
CR EQU 13
LF EQU 10
IMPRIMIR EQU 9
FIN EQU 4C00H
DOS EQU 21H
TAB EQU 09H
BELL EQU 07H
DATOS SEGMENT
ENCABEZADO DB 13,10,13,10,TAB,TAB,"======================================================="
DB 13,10,13,TAB,TAB,"PROGRAMA QUE CONVIERTE UN NUMERO ASCII A BINARIO"
DB 13,10,13,TAB,TAB,"=====================================================================",13,10,"$"
VALOR_ASCII DB '33',"$"
VALOR_BINARIO DW 0,"$"
LONGITUD_ASCII DW 2,"$"
POTENCIA_10 DW 00000001B,"$"
DATOS ENDS
PILA SEGMENT STACK
DB 64 DUP('0')
PILA ENDS
CODIGO SEGMENT
POTE PROC NEAR
ASSUME CS:CODIGO,DS:DATOS,SS:PILA
MOV AX,DATOS
MOV DS,AX
LEA DX,VALOR_ASCII
CALL ESCRIBE
MOV BX,00001010B
MOV CX,LONGITUD_ASCII
LEA SI,VALOR_ASCII+1
ETIQUETA_1:
MOV AL,[SI]
AND AX,000FH
MUL POTENCIA_10
ADD VALOR_BINARIO,AX
MOV AX,POTENCIA_10
MUL BX
MOV POTENCIA_10,AX
DEC SI
LOOP ETIQUETA_1
LEA DX,ENCABEZADO
CALL ESCRIBE
LEA DX,VALOR_BINARIO
CALL ESCRIBE
CALL SALIR
POTE ENDP
ESCRIBE PROC
MOV AH,9
INT 21H
RET
ESCRIBE ENDP
SALIR PROC NEAR
MOV AX,FIN
INT DOS
RET
SALIR ENDP
CODIGO ENDS
END POTE