|
 |
Dentro il Sistema |
TASTIERA 2/3
[15 di 39] |
 | La variabile di sistema
0000:0417H (insieme a
0000:0418H)
contiene informazioni sullo Stato della Tastiera; entrambe le locazioni sono
tenute aggiornate dalla procedura di servizio INT 09H,
attivata dal sistema in occasione della pressione
e del rilascio di un tasto qualunque.
| 0000:0417H |
1
byte |
Stato dei tasti di Shift |
|
 | In particolare questa variabile di sistema
memorizza lo stato dei tasti
di Shift, che producono effetto solo
in combinazione con altri. |
 | Essi sono privi di un loro codice
ascii/scansione e
quindi non sono inseriti nel
Buffer Circolare
della tastiera, ma la loro pressione è
comunque riconosciuta dal sistema. |
 | Il sistema interpreta la pressione dei tasti
Shift,
Ctrl o Alt
associando al tasto premuto con essi una diversa combinazione della
coppia di bytes codice
di scansione/codice
Ascii (vedi, per
esempio, l'effetto imposto sulla codifica dei
Tasti Standard); più esattamente:
 | mantiene
inalterato il codice
di scansione
(la cosa è ragionevole, dato che il tasto premuto con Shift,
Ctrl o Alt
è ovviamente sempre nella
stessa posizione) |
 | si manifesta
con diversi
valori per il codice
Ascii. |
|
 | La codifica dei tasti
di Shift, disponibile nella variabile di sistema
0000:0417H è la seguente: |
| 7654
3210 |
Shift
Status
|
| xooo
oooo |
Insert
commutato |
| oxoo
oooo |
Caps
Lock commutato |
| ooxo
oooo |
Num Lock
commutato |
| ooox
oooo |
Scroll Lock
commutato |
| oooo
xooo |
Alt
premuto |
| oooo
oxoo |
Ctrl
premuto |
| oooo
ooxo |
Left Shift
premuto |
| oooo
ooox |
Right Shift
premuto |
 | I primi
4 bit (bit7÷bit4)
rappresentano lo stato di altrettanti tasti che, a differenza
degli altri, sono commutatori,
cioè cambiano stato ogni volta che vengono premuti; il valore
di questi bit viene dunque lasciato alternativamente a
0 e a
1. |
 | I secondi
4 bit (bit3÷bit0) sono associati ad altrettanti
tasti: se non premuti il loro valore è lasciato a
0. |
 | è
interessante sottolineare un paio di particolari utilizzi
di questi tasti:
 |
La pressione contemporanea di Ctrl-Alt-Del
consente al sistema di porre fine a
processi in corso; in
ambiente Windows viene attivata la finestra di Termina
Applicazione, mentre in ambiente Dos viene addirittura
resettato ("a caldo") il computer, con la cessione del controllo
alla
procedura POST
(power-on self-test),
cioè al Bios che, dopo aver verificato l'hardware, ricarica il
sistema operativo. |
 | l'azione di
Ctrl-Break produce
l'esecuzione automatica di una procedura di servizio in grado di
porre fine a
determinate azioni in determinati ambienti operativi. |
|
 |
La Funzione della Funzione
12H di
INT 16H restituisce nel registro
AL gli stessi valori di questa variabile di sistema
. |
 | La seguente casella di testo
mostra una interessante tecnica per assumere le informazioni dalla
variabile
0000:0417H: |
©
2001-2010 - Studio Tecnico
ing. Giorgio OBER
Tutti i diritti sono riservati
|