Programación General > ASM (Ensamblador)
Ayuda Con Perifericos
(1/1)
sKoRp:
Hola gente, soy nuevo en este foro y necesito un poco de ayuda pq estoy muy flojo con el ensamblador, utilizo un programa que se llama VonNeumann y necesito hacer 3 ejercicios muy cortitos pero necesito ayuda, a ver si me podeis ayudar:
Ejercicio 1
Hacer un programa que:
1. Borre el buffer del teclado
2. Consultar el estado del teclado hasta que se pulse una tecla
3. Cuando se aprete una tecla mirar si es una 'S' o una 's' y si es que si acabar el programa y si es que no que vuelva al punto dos.
Ejercicio 2
El segundo es hacer un programa donde me muestre la palabra Hola con fondo negro y letras blancas y mi nombre con letras negras y fondo blanco.
Ejercicio 3
Un programa que se ejecute hasta apretar la 'S' o 's' y que encianda y apague las luces del dispositivo segun el estado de los interruptores.
Nose si es pedir mucho pero me hariais un gran favor, tengo tiempo hasta las 23:45 para entregarlo.
Gracias por adelantado
Eternal Idol:
Lo que podes pedir en este foro es ayuda concreta y no programas/ejercicios/practicas completos.
Fuera de esto que es fundamental; ¿No te parece que te acordaste un poco tarde? Seria absolutamente injusto que hicieramos tu tarea el dia en que tenes que presentarla.
sKoRp:
--- Cita de: "Eternal Idol" --- Lo que podes pedir en este foro es ayuda concreta y no programas/ejercicios/practicas completos.
Fuera de esto que es fundamental; ¿No te parece que te acordaste un poco tarde? Seria absolutamente injusto que hicieramos tu tarea el dia en que tenes que presentarla.
--- Fin de la cita ---
Perdon tienes toda la razon, la verdad es que el 1 y el 3 lo tengo todo hecho pero me trae de cabeza lo de mostrar las letras por la pantalla. Tengo hecho esto que mas o menos es lo que me ha venido a la cabeza de hacer pero nada no sale. A ver si alguien me ayuda.
--- Código: Text ---PANTALLA EQU 0A000hORIGEN 400hINICIO ini;.DATOSpantalla VALOR PANTALLA;.CODIGO;;programa principal;ini:;direcció memòria de videoMOVH R0, BYTEALTO DIRECCION pantallaMOVL R0, BYTEBAJO DIRECCION pantalla ;carrega lletra H amb fons negre i lletra blancaMOVH R2, BYTEALTO 00000111bMOVL R2, BYTEBAJO 19H ;carrega possició primera lletra de "hola" respecte la possició de;memòria de video ---> (2*15)+5 = 35MOVH R3, BYTEALTO 00hMOVL R3, BYTEBAJO 35h ;calcula possició de memòria realADD R1, R0, R3 ;printa la lletraMOV [R1], R2 ;carrega la lletra O, la possició i printaMOVL R2, BYTEBAJO 12hINC R1MOV [R1], R2;carrega la lletra l, la possició i printaMOVL R2, BYTEBAJO 1ChINC R1MOV [R1], R2;carrega la lletra a, la possició i printaMOVL R2, BYTEBAJO 14hINC R1MOV [R1], R2;;carrega lletra L amb fons blanc i lletra negraMOVH R2, BYTEALTO 00111000bMOVL R2, BYTEBAJO 1CH;;carrega possició primera lletra de "laia" respecte la possició de;memòria de video --> (4*15)+4 = 64MOVH R3, BYTEALTO 0hMOVL R3, BYTEBAJO 64;;calcula possició de memòria realADD R1, R0, R3;;printa la lletraMOV [R1], R2;;carrega la lletra a, la possició i printaMOVL R2, BYTEBAJO 14hINC R1MOV [R1], R2;carrega la lletra i, la possició i printaMOVL R2, BYTEBAJO 11hINC R1MOV [R1], R2;carrega la lletra a, la possició i printaMOVL R2, BYTEBAJO 14hINC R1MOV [R1], R2JMP -1FIN
Navegación
Ir a la versión completa