Sezione |
Indirizzi Base
Registri Interni
|
Libreria GIOBE.ASM |
Raccolta di Procedure ASM |
Delay 1/3 [28 di 54] |
|
1° dicembre 2003 |
Genera un ritardo programmabile, multiplo di 54,925493 ms, in funzione del numero passato in ingresso. | |
Il ritardo minimo di circa 55 ms può costituire una limitazione: in certe applicazioni può effettivamente risultare troppo grande; in compenso i ritardi generati sono precisi, affidabili e soprattutto portabili (cioè completamente svincolati dalla velocità del processore e consumabili in modo uguale su tutti i computer), anche con i più moderni sistemi operativi (Windows 2000/NT/XP). |
|
Sulla base di questa Procedura ho reso disponibili anche le Del_100, Del_1000, Del_1500 e Del_2000, pronte a consumare rispettivamente 0,1s, 1s, 1,5s e 2s; la Procedura DelMicro assicura, inoltre, ritardi dell'ordine del µs e del ms. |
|
La Procedura si chiama in questo modo: |
|
|
In
ingresso bisogna predisporre:
|
|
La seguente Area di Testo mostra il Modulo varie07 utilizzato per inserire la Procedura nella Libreria Giobe.ASM/LIB: |
|
Delay / varie07 |
NB: se il testo contenuto nell'Area
ti
sembra strano (cioè se contiene caratteri inconsueti) non hai ancora installato il font Giobe.TTF : clicca qui!! |
|
L'analisi del codice (puoi scorrerlo con la
barra laterale)
mette in evidenza la tecnica utilizzata per garantire il ritardo con
esattezza:
|
|
I problemi legati alle procedure di ritardo sono concreti e pressanti: in ogni caso sembrano ora tutti risolti, con il ricorso al Timer di Sistema, un componente di vitale importanza per il funzionamento del Computer. Ad essi ho dedicato la pagina seguente. |
|
La nostra Procedura, a partire da un dato a 16 bit (praticamente affidato al registro CX), è in grado di generare tempi di ritardo da un minimo di 54,925493 ms ad un massimo di 216*54,925493ms = 65536*54,925493ms = 3599597ms, pari a 3600s, cioè circa 60 minuti, cioè 1 ora! |
|
Su questa base è possibile compilare la Tabella dei valori con i quali è possibile caricare il registro CX: |
ritardo | Delay | ritardo | Delay | ritardo | Delay | ||
1 | 55 ms | 16 | 879 ms | 920 | 50 s | ||
2 | 110 ms | 17 | 934 ms | 1092 | 1 m | ||
3 | 164 ms | 18 | 1 s | 2294 | 2 m | ||
4 | 219 ms | 27 | 1,5 s | 3277 | 3 m | ||
5 | 274 ms | 36 | 2 s | 4370 | 4 m | ||
6 | 329 ms | 45 | 2,5 s | 5462 | 5 m | ||
7 | 384 ms | 54 | 3 s | 6554 | 6 m | ||
8 | 439 ms | 63 | 3,5 s | 7647 | 7 m | ||
9 | 494 ms | 73 | 4 s | 9831 | 9 m | ||
10 | 549 ms | 82 | 4,5 s | 10964 | 10 m | ||
11 | 604 ms | 91 | 5 s | 21848 | 20 m | ||
12 | 659 ms | 182 | 10 s | 32771 | 30 m | ||
13 | 714 ms | 364 | 20 s | 43695 | 40 m | ||
14 | 769 ms | 546 | 30 s | 54619 | 50 m | ||
15 | 824 ms | 728 | 40 s | 65536 | 1 h |
|
Libreria GiobeASM | Delay 1/3 | |||||||
28 di 54 |
|
|
|
|
Home |
|
|||||||
|
Motore Ricerca |
|