Solo per fissare le idee:
La funzione 0AH dell'INT 21H ("Ingresso dati bufferizzato") consente l'acquisizione di una stringa di caratteri da tastiera, la cui lunghezza massima è memorizzata nel primo byte di un BUFFER appositamente riservato; tali caratteri (compreso il <CR>=0DH=<INVIO>, con cui l'utente conferma la fine della stringa digitata sulla tastiera) sono collocati nel BUFFER a partire dal terzo byte , mentre è il DOS medesimo a provvedere a scrivere nel secondo byte il numero di caratteri effettivamente introdotti; i caratteri immessi nel buffer sono proposti contemporaneamente a video.

La struttura del Buffer deve dunque essere questa:
codice:
BUFFER  LABEL BYTE            ;La Direttiva LABEL associa all'etichetta BUFFER
                              ;l'indirizzo corrente  nell'area  destinata alla
                              ;acquisizione  di stringhe da tastiera assicura-
                              ;ta dalla  funzione 0AH dell'INT 21H; tale indi-
                              ;rizzo coincide con quello di MAX_LEN
MAX_LEN DB Quanti-1           ;BUFFER+00H - Numero massimo  di  caratteri pre-
                              ;visto  per la stringa in ingresso  da tastiera:
                              ;la procedura di acquisizione consente perci• di
                              ;acquisire [Quanti-1] (cioŠ [Quanti] caratteri
                              ;effettivi pi— il <CR> con cui l'utente conferma
                              ;la fine della stringa digitata sulla  tastiera,
                              ;aggiunto "d'ufficio" alla stringa dalla funzio-
                              ;stessa
STR_LEN DB 00H                ;BUFFER+01H - Numero di caratteri  effettivamen-
                              ;te  introdotti  da tastiera  (il carattere <CR>
                              ;0DH,  pur presente nel BUFFER, non viene inclu-
                              ;so nel conteggio dei caratteri  che  il DOS re-
                              ;stituisce  in questo byte)
STRINGA DB STR_LEN-2 DUP (' ');BUFFER+02H - In questa zona  viene collocata la
                              ;stringa  digitata  dall'utente  sulla  tastiera
                              ;(compreso, come detto, il <CR> (0DH) con cui la
                              ;stringa viene introdotta)
        DB 0DH                ;Se la  stringa digitata  dall'utente ha la lun-
                              ;ghezza  massima prevista [Quanti] l'<ENTER> con
                              ;cui l'utente la conferma produce  la  scrittura
                              ;di un <CR> (0DH) in questa posizione; nel  caso
                              ;di stringa di dimensione inferiore  esso  viene
                              ;comunque  preparato  nella  posizione adatta  a
                              ;chiudere correttamente la stringa
        DB 0AH                ;Al contenuto del RECORD viene aggiunto anche il
                              ;carattere <LF>;  ci•  consente  di analizzare e
                              ;riutilizzare ("vedere") la  stringa  creata  da
                              ;questa funzione
codice:
                                Giobe®2000 - Tutto sull'Assembly   - Lezioni, programmi, segreti, trucchi