PROGRAMA
"MAYOR O MENOR DE EDAD"
.model small
.stack
.data
include "emu8086.inc"
num1 db 0; variable para la edad
.code
inicio proc far
;poner el primer letrero
print " Ingrese su edad: "
;lectura del valor
call scan_num ;llamada al procedimiento de la lib para pedirla
mov num1,cl
;lectura segundo valor
xor ax,ax ;xor para limpiar el registro
mov al,num1
cmp al,18d ;Si lo que se encuentra en al>18
JGE mayor ;salta a mayor
JMP menor ;sino ve a menor
mayor:
printn " "
print "Eres mayor de edad"
jmp final
menor:
printn " "
print "Eres menor de edad"
jmp final
final:
print " "
printn " "
print "Presiona enter para salir..."
mov ah,0 ;servicios de lectura de una pulsación de teclado
int 16h ;Invoca a servicios de teclado
mov ah,4ch
int 21h
ret
define_print_string
define_print_num
define_print_num_uns
define_scan_num
endp inicio
end
SALIDA DEL PROGRAMA
------------------------------------------------------------------------------------------------------------
PROGRAMA DE SUMA DE DOS NUMEROS
name "suma de dos numeros"
include "emu8086.inc"
org 100h
.data
suma db 2 dup (?) ;,manera de declarar un arreglo de 2
lugrares
.code
sumas proc
print " Introduce el primer numero:
" ;macro de la lib
call scan_num ;llamada a un
prodecimiento para pedir un numero
mov suma[0],cl
printn " "
print " Introduce el segundo numero:
"
call scan_num
mov suma[1],cl
xor ax,ax ;xor nemonico
que limpia registros
add al,suma[0] ;valor de suma posicion 0
add al,suma[1] ;valor de suma posicion 1
printn " " ;macro de la libreria
pone un espacio y retorno
print " La suma es: " ; macro que
imprime un letrero
call print_num ;llamada a un
procedimiento para imprimir un num del
sumas endp
exit:
print " "
printn " "
print "Presiona enter para salir..."
mov ah,0 ;servicio de pulsacion de
teclado
int 16h ;invoca a servicios de
taclado
ret
define_print_string ;no se uso
define_print_num ;es del print_num
define_print_num_uns ;conversion decimal a scan_num
define_scan_num ;del scan_num prodedimiento
end
SALIDA DEL PROGRAMA
------------------------------------------------------------------------------------------------------------
PROGRAMA "APROBADO O REPROBADO"
model small
.stack 64
.data
include "emu8086.inc"
nota db 0
.CODE
OPERACIONES PROC FAR ;DECLARACION DE PROCEDIMIENTO
;MUESTRO EL MENSAJE
print " " ;usa macro print
para un espacio
print "Ingrese la calificacion: "
call scan_num ;Leo el
numero proc scan_num de la libreria
mov nota,cl ;lo guardo en
nota
xor ax,ax ;borro el
contenido de ax
mov al,nota ;muevo nota a
al
CMP AL,70d ;comparo
al con 70
JGE MAYOR ;si es
mayor o igual pasa a mayor
JMP MENOR ;si no a
menor
MAYOR:
printn " "
print "Aprobado"
JMP SALIR
MENOR:
printn " "
print "Reprobado"
JMP SALIR
SALIR:
print " "
printn " "
gotoxy 10,10 ;coloco
el cursor en las coordenadas 10x,10y
print "Presiona enter
para salir..." ;imprimo despues este mensaje
mov ah,0 ;servicio
de lectura de pulsacion de tecla
int 16h
;invoca servicios de teclado
mov ah,4ch
int 21h
ret
OPERACIONES ENDP
define_print_string
define_print_num
define_print_num_uns
define_scan_num
END
SALIDA DEL PROGRAMA