Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Datos ingresados
;inicio del programa
.org 0x000
;cargo valores a comparar
ldi r16,33 ;cargo valor actual
ldi r17,60 ;cargo valor max
ldi r18,10 ;cargo valor min
Datos ingresados
;inicio del programa
.org 0x000
;cargo valores a comparar
ldi r16,5 ;cargo valor actual
ldi r17,60 ;cargo valor max
ldi r18,10 ;cargo valor min
/*
* tabla.asm
*
* Created: 25/05/2015 11:35:03
* Author: Jonathan Cacuango
*/
.include "m164pdef.inc"
;defino variables
.def aux=r19
.def i=r20
;reservo espacio de memoria en la sram
.dseg
ACTUAL: .db 1
TMAX: .db 1
TMIN: .db 1
MENSAJE: .db 42
.cseg
;inicio del programa
.org 0x000
;cargo valores a comparar
ldi r16,-7 ;cargo valor actual
neg r16
ldi r17,-3 ;cargo valor max
neg r17
ldi r18,-20 ;cargo valor min
neg r18
sts actual,r16
sts tmax,r17
sts tmin,r18
lds r0,actual
lds r1,tmax
lds r2,tmin
;comparacion
comparacion:
s_1:cp r0,r1
brcs s_2
ldi zh,high(texto2<<1)
ldi zl,low(texto2<<1)
rjmp copia
s_2:cp r0,r2
breq s_3
brcs s_3
ldi zh,high(texto3<<1)
ldi zl,low(texto3<<1)
rjmp copia
s_3:ldi zh,high(texto2<<1)
ldi zl,low(texto2<<1)
rjmp copia
copia:
ldi yh,high(MENSAJE)
ldi yl,low(MENSAJE)
for:cpi i,42
breq fin
inc i
rjmp fin
;textos a mostrarse
texto1: .db "LA TEMPERATURA ESTA SOBRE EL VALOR MAXIMO "
texto2: .db "LA TEMPERATURA ESTA EN EL RANGO CORRECTO "
texto3: .db "LA TEMPERATURA ESTA BAJO EL VALOR MINIMO "
Comprobacin