17 Conversion de ASCII a binario (dado por el programador)

corrida



codigo
       

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




       

Comentarios