programa

org 100h

.model small
.stack 64
.data

mensaje db 10,13 ,"Dame un numero",10,13,"$"
mensaje2 db 10,13 ,"Dame un la potencia",10,13,"$"
n1 db 0
n2 db 0
n3 db 0
.code

inicio:


mov ax,@data
mov ds,ax
mov dx,offset mensaje
mov ah, 09h
int 21h



mov ah,01     ;pausa y espera a que el usuario precione una tecla
int 21h        ;interrupcion para capturar
sub al,30h
mov n1,al
mov n3,al

mov ah, 09h
mov dx,offset mensaje2

int 21h
mov ah,01     ;pausa y espera a que el usuario precione una tecla
int 21h
sub al,30h
mov n2,al

mov ah,0
mov cx,ax
sub cx,1



cmp al,0    
je ciclo    
cmp al ,1      
je ciclo
cmp al,2     
je ciclo
cmp al,3     
je ciclo
cmp al,4     
je ciclo
cmp al,5      
je ciclo
cmp al,6      
je ciclo
cmp al,7     
je ciclo
cmp al,8      
je ciclo
cmp al,9     
je ciclo
jmp fin


ciclo:
call ciclo1

ciclo1 proc near :
mov al,n1
mov bh,n3
mul bh

mov n1,al

loop ciclo1
add dl,al
sub dl,30h
mov ah ,2
int 21h

mov ah,04ch
int 21h

fin:
 mov ax,4c00h      ;funcion que termina el programa
 int 21h
end inicio

Comentarios

Entradas populares de este blog

Uso de INT 21h en ej. Limpiar Pantalla.

programa turbo assembler