Calcolatori Elettronici
Prova d'esame del 12 settembre 2002
Esercizio:
Scrivere un programma in Assembly che prenda in ingresso una stringa alfanumerica di massimo 10 caratteri.
Il programma prenda in ingresso anche una seconda stringa di lunghezza pari alla precedente e che possa contenere esclusivamente i caratteri: 'A', 'B', 'D' e 'S'. Questi caratteri codificano gli spostamenti Alto, Basso, Destra e Sinistra.
Il programma stampi la prima stringa in posizione centrale nello schermo in modalità testuale. Il programma deve continuamente spostare ciascun carattere della prima stringa di una posizione nello schermo in accordo con il carattere avente la stessa posizione nella seconda stringa.
Lo spostamento dei caratteri della prima stringa deve terminare quando questi raggiungono i bordi dello schermo.
Successivamente integrare il programma in modo che i caratteri si fermino per un ciclo quando la posizione che devono andare ad occupare sia già occupata da un altro carattere.