martes, 12 de marzo de 2019

Unidad 2. Practica #1

Fuente de consulta #1

Fuente de consulta #2

Tabla de instrucciones de saltos


Ejemplo #1
Código
org 100h
mov    ax, 5        ; set ax to 5.
mov    bx, 2          ; set bx to 2.

 jmp    calc            ; go to 'calc'.
 back:  jmp stop      ; go to 'stop'.
calc:
add    ax, bx         ; add bx to ax.
jmp    back           ; go 'back'.
 stop:
 ret                   ; return to os

Ejemplo #2
Código:
include 'emu8086.inc' 
.MODEL SMALL
.STACK .DATA  
num1 db 8  
num2 db 8  
msg1 db , 'NUMEROS IGUALES', '$'  
msg2 db , 'NUMEROS 1 MAYOR', '$'  
msg3 db , 'NUMEROS 2 MAYORES', '$'
 .code  
main:  
mov ax, @data  
mov ds, ax    
mov al, num1  
cmp al, num2    
jc Mayor2  
jz igual  
jnz Mayor1   
. exit
 igual:  
printn 'Los numeros son iguales'  
jmp fin

 Mayor2:  
printn 'Numero 2 es mayor'  
 jmp fin
 Mayor1:  
printn 'Numero 1 es mayor'  
 jmp fin
 fin:
 END
Ejemplo #3
Código:
include 'emu8086.inc'
.MODEL SMALL
.STACK
.DATA
    num1 db 8
    num2 db 8
    msg1 db , 'NUMEROS IGUALES', '$'
    msg2 db , 'NUMEROS 1 MAYOR', '$'  
    msg3 db , 'NUMEROS 2 MAYORES', '$' 
.code
    main:
    mov ax, @data
    mov ds, ax 
    
    mov al, num1  
    cmp al, num2
    
    jc Mayor2 
    jz igual
    jnz Mayor1    
    
.exit
igual:
    printn 'Los numeros son iguales'
    jmp fin
    ;mov ah, 09H
    ;lea dx,msg1
    ;int 21h
;.exit
Mayor2:
    printn 'Numero 2 es mayor'
    jmp fin
    ;mov ah,09H
    ;lea dx,msg1
    ;int 21h
;.exit
Mayor1:  
    printn 'Numero 1 es mayor'
    jmp fin
    ;mov ah,09H
    ;lea dx,msg1
    ;int 21h
;.exit
fin:
END 

No hay comentarios.:

Publicar un comentario

Practica #5 Unidad2

org 100h include 'emu8086.inc' mov si, 0 ;ponemos si en 0 comienzo: mov al, msg2[0] ;copiar la primera letra de la p...