Il comando debug


Come esempio di quanto detto proviamo il comando debug;
Premetto che tale comando e' funzionante solamente su sistemi derivanti dal DOs e quindi su Windows; se volete attivarlo in linux dovete avere il programma di emulazione Wine installato e funzionante.
Ricordo inoltre che i caratteri ASCII hanno grafica e utilizzi diversi a seconda del sistema operativo utilizzato e quindi su macchine diverse potreste vedere in modo diverso rappresentati i caratteri di controllo
Raccomando inoltre di seguire esattamente le istruzioni e non provare a "smanettare" a caso: potreste DANNEGGIARE il vostro sistema

In Windows aprite "tutti i programmi", scegliete "accessori" e scegliete l'opzione "terminale"
vi si aprira' una finestra in bianco e nero con il prompt dei comandi
digitate debug e premete invio
otterrete una breve lineetta lampeggiante
digitate d (comando dump = salta) e premete invio se ottenete tutti 0 digitate ancora d ed ogni volta premete invio
Per uscire scrivete semplicemente q (comando quit = esci) e premete invio
Poi, per chiudere il terminale scrivete exit e premete ancora il tasto invio


Digitando d piu' volte otterrete una schermata simile a questa



Questo e' il vostro computer: nelle prime colonne ci sono gli indirizzi a 32 bit dei dati della macchina
Dovete pensare al computer come ad un immenso nastro dove in ogni posizione (indirizzo) c'e' un dato (Byte) ed ogni posizione e' data da un numero binario a 16 bit
Intuitivamente il nastro scorre ed i dati possono essere letti ed utilizzati da un lettore
Come esempio consideriamo la sesta riga del secondo blocco intero (18-sima riga dell'immagine dove ho posizionato la freccia)
l'indirizzo cui sono scritti questi dati e', in esadecimale, da 0CC103D0 a 0CC103DF (su ogni riga e' scritto solamente l'indirizzo di inizio)
quindi se volessimo scrivere l'indirizzo in binario questi sono i dati
dall'indirizzo
0000 1100 1100 0001 0000 0011 1101 0000
all'indirizzo
0000 1100 1100 0001 0000 0011 1101 1111
In questi 16 indirizzi in ordine ci sono 16 dati in esadecimali
27 5A 07 5B 28 5B 07 B9 28 6C 07 60 29 80 07
I 16 gruppi di 2 numeri in esadecimale corrispondono ai caratteri ascii della parte destra dello schermo:          Non ho capito
ad esempio il primo dato 2716 corrisponde al carattere decimale 39 (16x2+9) cui corrisponde il carattere ascii ' (apostrofo)
il secondo dato 5A16 corrisponde al carattere decimale 90 (16x5+10) cui corrisponde il carattere ascii Z
il terzo dato 0716 e' un comando e precisamente quello che da' il suono del campanello e a destra viene evidenziato con un puntino; e siccome sulla riga ce ne sono 4 piu' uno sotto penso che abbiamo "beccato" dove Windows tiene il suono del campanello per segnalare gli errori (din,din din din din)
tutti i comandi e i caratteri diversi dai tipografici vengono evidenziati con un puntino, ad eccezione del 2016 che ci da' lo spazio tra una parola e l'altra
Potete divertirvi a guardare, nel blocco successivo, alcuni dei messaggi di errore piu' comuni che restituisce Windows
Quando (sistemi operativi Spectrum, Commodore, Amiga, DOS,...) i giochi su computer erano carissimi e rarissimi spesso qualcuno passava le nottate sul debug per poter individuare la password che permetteva di entrare nel gioco oppure di superare lo sbarramento di un livello (errori di gioventu'.....)

Pagina iniziale Indice di algebra Pagina successiva Pagina precedente