sábado, 19 de mayo de 2018

MACRO DE ALMA IYARI

       
.model small ;modelo de memoria

.stack 64 ;segmento de pila


mmayor macro: ;declaracion de macro mmayor



MOV DX,OFFSET mens2;se lee la variable mens2

MOV AH,9


INT 21H;interupcion del DOS

endm;fin del macro


mmenor macro: ;declaracion de macro mmenor

MOV DX,OFFSET mens3se lee la variable mens3

MOV AH,9;trabaja con la interrupcion

INT 21H;interrupcion del DOS

endm;fin del macro


finn macro:;declaracion de macro fin

mov ah,4ch;sentencia para terminar el programa

int 21h;interrupcion del DOS

endm;fin del macro

;============================empieza segmento datos
.data


num1 db 0 ;variable para almacenar la edad

diez db 10 ;variable para poder imprimir 2 caracteres(se multiplica por el primer numero ingresado,para ser decenas)

mens db "ingresa tu edad ","$" ;mensaje inicial

mens2 db 13,10,"Eres mayor de edad","$" ;mensaje para mayor de edad

mens3 db 13,10,"Eres menor de edad","$" ;mensaje par amenor de edad
;===================================================termina segmento datos

;=================inicia segmento codigo
.code

inicio proc far

mov ax,@data;direccionamos el segmento de datos

mov ds,ax ;los datos se mueven a ax

mov ah,09;trabaja con la interrupcion

lea dx, mens;se lee la variable mens

int 21h ;interrupcion del DOS



mov ah,01;;espera la entrada del teclado

int 21h ;interrupcion de DOS



sub al,30h;se le restan 30 para convertir a numero

mul diez;se multiplica el numero ingresado para convertirlo a decenas

mov num1,al;el resultado se mueve al registro al 



mov ah,01;se espera entrada del teclado

int 21h;interrupcion del DOS



sub al,30h;se tranforma a numero el segundo digito ingresado

add num1,al ;se suma a las decenas obtenidas

mov al,num1;se mueva a al el resultado de la suma





cmp al,18;se compara si el contenidos de al es 18

jge mayor;en caso de ser mayor se salta al proceso mayor



;=========== de no cumplirse(sea menor a 18)el programa continua a este segmento

mov ah,09 ;trabaja con la interrupcion

lea dx,mens3;se lee la variable mens3

int 21h;interrupcion del DOS

jmp fin;y salta a proceso fin



;====================procesos

mayor:;se declara el proceso mayor

mmayor;el proceso llama al MACRO mmayor





fin:;se declara el proceso fin

finn;el prceso llama al MACRO finn



inicio endp ;se termina a inicio


       

No hay comentarios:

Publicar un comentario

EXPOSICIÓN 2: PROGRAMACION DEL PUERTO USB

RESUMEN DE LA EXPOSICIÓN DE PUERTOS USB PUERTO USB BUFFER DE VIDEO EN MODO TEXTO  Se llama modo texto a cualquier modo de vi...