martes, 3 de diciembre de 2019

Impresión de valores hexadecimales y decimales.

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,TAB,TAB,"==============================="
DB 13,10,13,TAB,TAB,"PROGRAMA QUE IMPRIME VALORES NUMERICOS DEC Y EXA 91.3 XD"
DB 13,10,13,TAB,TAB,"================================",13,10,"$"
VALOR_1 DW 41D,"$"
VALOR_2 DW 42D,"$"
VALOR_3 DW 43D,"$"
VALOR_4 DW 44D,"$"
VALOR_5 DW 45D,"$"
VALOR_6 DW 46,"$"
VALOR_7 DW 47,"$"
VALOR_8 DW 48,"$"
VALOR_9 DW 49,"$"
VALOR_10 DW 50,"$"
VALOR_11 DW 31H,"$"
VALOR_12 DW 32H,"$"
VALOR_13 DW 33H,"$"
VALOR_14 DW 34H,"$"
VALOR_15 DW 35H,"$"
VALOR_16 DW 36H,"$"
VALOR_17 DW 37H,"$"
VALOR_18 DW 38H,"$"
VALOR_19 DW 39H,"$"
VALOR_20 DW 40H,"$"
DATOS ENDS
PILA SEGMENT STACK
DB 64 DUP ('0')
PILA ENDS
CODIGO SEGMENT
EXA PROC NEAR
ASSUME CS:CODIGO,DS:DATOS,SS:PILA
MOV AX,DATOS
MOV DS,AX
LEA DX,ENCABEZADO
CALL ESCRIBE
LEA DX,VALOR_1
CALL ESCRIBE
LEA DX,VALOR_2
CALL ESCRIBE
LEA DX,VALOR_3
CALL ESCRIBE
LEA DX,VALOR_4
CALL ESCRIBE
LEA DX,VALOR_5
CALL ESCRIBE
LEA DX,VALOR_6
CALL ESCRIBE
LEA DX,VALOR_7
CALL ESCRIBE
LEA DX,VALOR_8
CALL ESCRIBE
LEA DX,VALOR_9
CALL ESCRIBE
LEA DX,VALOR_10
CALL ESCRIBE
LEA DX,VALOR_11
CALL ESCRIBE
LEA DX,VALOR_12
CALL ESCRIBE
LEA DX,VALOR_13
CALL ESCRIBE
LEA DX,VALOR_14
CALL ESCRIBE
LEA DX,VALOR_15
CALL ESCRIBE
LEA DX,VALOR_16
CALL ESCRIBE
LEA DX,VALOR_17
CALL ESCRIBE
LEA DX,VALOR_18
CALL ESCRIBE
LEA DX,VALOR_19
CALL ESCRIBE
LEA DX,VALOR_20
CALL ESCRIBE
CALL SALIR
EXA 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 EXA