Programa que realiza una Tabla de multiplicar en ENSAMBLADOR

.model small
.stack 64
.data
num db 0  ;Variable para reslpaldar el número digitado por el usuario.
.code
  inicio:
   mov ah,01h  ;Pedir el número al usuario
   int 21h
   sub al,30h
   mov num,al ;guardamos el número digitado en num.
   mov cl,01h ;Iniciamos el contador en 1
tabla:
    mov al,num  ;movemos al número guardado en num a AL
    mul cl ;se multiplica CL por AL, el resultado se guarda en AL
    aam  ;ajuste ASCII para multiplicación
    mov bx,ax  ;Se respalda la multiplicación el BX
    mov ah,02h
    mov dl," "  ;imprimimos un espacio
    int 21h
    mov ah,02h
    mov dl,bh  ;Imprime la parte alta del registro BX, si el número es mayor de 9 imprime las decenas
    add dl,30h ;Suma 30 para imprimir el número real.
    int 21h
    mov dl,bl ;imprime la parte baja de BX o las unidades.
    add dl,30h
    int 21h
    inc cx   ;incrementa nuestro contador
    cmp cx,11 ;compara contador igual a 11
    ja salir  ; Si es mayor sale del programa
    jb tabla ;si es menor se repite el ciclo.
    salir:
    mov ah,4ch
    int 21h
  end inicio

Comentarios

Entradas populares de este blog

Programa que da el Factorial de un numero ENSAMBLADOR