Anda di halaman 1dari 4

ESCUELA POLITCNICA NACIONAL

ESCUELA DE INGENIERIA ELCTRICA


SISTEMAS MICROPROCESADOS

DEBERES
Primer Bimestre

Alumno: Luis Chusin

Desarrollar un programa que permita determinar si los valores que se encuentran almacenados en tres localidades de la SRAM, etiquetadas como LADO1, LADO2 y LADO3, corresponden a las longitudes de los lados de un tringulo equiltero, issceles o escaleno. El resultado debe almacenarse en la SRAM a partir de la localidad etiquetada como RESPUESTA, en forma de una tabla de cdigos ASCII de uno de los siguientes textos: LOS LADOS CORRESPONDEN A UN TRIANGULO EQUILATERO LOS LADOS CORRESPONDEN A UN TRIANGULO ISOSCELES LOS LADOS CORRESPONDEN A UN TRIANGULO ESCALENO .nolist .include "m164pdef.inc" .list .def lado1=r16 .def lado2=r17 .def lado3=r18 .def aux=r19 .def cont=r21 .def tempo=r22 .def con1=r23 .def cont2=r24 .dseg .org 0x150 dato : .byte 51 .cseg ldi lado1,10 ldi lado2,2 ldi lado3,8 sts 0x100,lado1 sts 0x101,lado2 sts 0x102,lado3 ldi xl,low(dato) ldi xh,high(dato) ldi cont,51 ldi con1,48 ldi cont2,46 lazo: cp lado1,lado2 brcc lazo1 brne lazo2 lazo1: cp lado2,lado3 brcc equilatero brne isoceles lazo2: cp lado1,lado3 brcc isoceles brne lazo3 lazo3: cp lado2,lado3 brne escaleno

equilatero: ldi zh,high(texto1<<1) ldi zl,low(texto1<<1) esque: lpm tempo,z+ st x+,tempo dec cont brne esque rjmp fin

isoceles: ldi zh,high(texto2<<1) ldi zl,low(texto2<<1) isoc: lpm tempo,z+ st x+,tempo dec con1 brne isoc rjmp fin escaleno: ldi zh,high(texto3<<1) ldi zl,low(texto3<<1) esca: lpm tempo,z+ st x+,tempo dec cont2 brne esca rjmp fin fin : rjmp fin .org 0x120 texto1: .db "LOS LADOS CORRESPONDEN A UN TRIANGULO EQUILATERO" texto2: .db "LOS LADOS CORRESPONDEN A UN TRIANGULO ISOSCELES " texto3: .db "LOS LADOS CORRESPONDEN A UN TRIANGULO ESCALENO " A continuacin se muestran pantallas capturadas de la simulacin del programa con diferentes datos.

Lados de triangulos equilateros

Lados de triangulos isoceles

Las lados de un triangulo escaleno

Anda mungkin juga menyukai