Sezione

Indirizzi Base Registri Interni
Area Comunicazione BIOS Funzioni BIOS Funzioni DOS
Prefazione Capitolo 1 Capitolo 2 Schede
Libreria ASM Libreria MAC Palestra Progetti ASM
Info Download INDICE

Palestra Livello Apprendisti Livello Esperti

Home » Programma il Computer » Tutorial Assembly

Palestra Assembly - Home Page

  Programmare in Assembly

INTRODUZIONE [1 di 23] 

               

Analisi del Problema · Main Loop · Tipi di Tasto · Rilievo tasti · Caps Lock · Servizio tasti · Conclusioni

Acquisizione Caratteri - Rileva la pressione di tasti autorizzati e segnala errore per gli altri
Analisi del problema

               

bullet Il problema della lettura della tastiera o dell'attesa della pressione di tasti, è fondamentale per la gestione interattiva dei programmi, tipica di un menu, di un gioco o di qualunque altro applicativo che lascia decidere all'utente.
bulletNessun programma può fare a meno di attendere la pressione di tasti, non fosse altro per fermarsi e mostrare il suo effetto, prima di restituire il controllo al padre DOS...
bulletDi fatto nessuno dei sorgenti assembly proposti fin ora ha potuto farne a meno; una rapida verifica evidenzia che ciascuno di loro è stato terminato con le seguenti istruzioni:

  

Gestione della Tastiera

Esercizio IMPEGNATIVO Esercizio
NB: se il testo nell'Area  ti sembra strano
     
installa il  font
Giobe.TTF: clicca qui!!
Mostra l'Effetto Prova l'eseguibile COM Scarica il codice Sorgente ASM

  

bulletQuesto servizio è assicurato dalla Funzione 00H di INT 16H (BIOS per la tastiera), organizzata in una struttura della Libreria Giobe.LIB: la Procedura KEYwait.
bulletIl suo compito è proprio quello di rimane in attesa della pressione di un tasto, come la funzione keypressed; del Pascal, di solito usata nel ciclo REPEAT UNTIL keypressed;.

 

Suggerimento Ogni volta che si preme un tasto si rendono disponibili 2 bytes; il compito della KEYwait è indispensabile: non appena un tasto è premuto lascia a disposizione il suo codice Ascii in AL e il suo codice di scansione in AH.

  

bulletIl codice Ascii è il numero corrispondente al simbolo riportato sul tasto premuto; le considerazioni su questi codici è marginale, in questa trattazione (per saperne di più, puoi comunque consultare la Tabella dedicata ai Codici Ascii o scaricare e stampare l'utile Manuale)
bulletIl codice di scansione è il numero corrispondente alla posizione occupata dal tasto premuto sulla tastiera; sebbene questa informazione sembri irrilevante dimostreremo, tra un po', l'esatto contrario!

  

bulletLa Sezione GiobeASM dedica ben 5 pagine all'argomento, per dare risposta ai seguenti quesiti:
bulletcome è fatta la procedura KEYwait?
bulletcome è fatta una tastiera? i tasti sono tutti uguali?
bulletcome faccio a ricordarmi tutti quei codici strani?
bulletin che ordine devo interpretarli per evitare malfunzionamenti?
bulletcosa succede quando premiamo un tasto?

  

bulletSarebbe saggio interrompere la lettura di questo esercizio per assumere queste importanti informazioni; se intendi farlo segnati il numero di questa pagina, clicca sul link appena segnalato e leggi con attenzione le 5 pagine.

    

Pagina Precedente Palestra Esperti Pagina Successiva INTRODUZIONE   Torna alla Home  della Palestra Assembly Lezioni - Vai al DownLoad dei files DOC Torna al Menu del "Tutorial"
1 di 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

    

PALESTRA » Esperti » Es.001 Es.002 Es.003 Es.004 Es.005 Es.006 Es.007 Es.008 Es.009 Es.010 Es.011

| Che serve per iniziare | Prima compilazione | Livello Apprendisti |

TUTORIAL » Indirizzi Base | Registri Interni | Area Comunicaz. BIOS | Funzioni BIOS | Funzioni DOS
Prefazione | CAP 1 | CAP 2 | Schede | Palestra
Libreria ASM | Libreria MAC | Progetti ASM | Download | Info | Indice
Home 
Pascal|Manuali|Tabelle|Schede
Tutorial Assembly|Palestra Assembler
Aggiungi Giobe®2000 ai preferiti  
Motore
Ricerca
  Rendi Giobe®2000 pagina di Default
© 2001-2010  -  Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati