Turbo Pascal e uses crt sui PC “moderni”

Durante l’ora di informatica mi è capitato di incontrare un errore che da tempo “affliggeva” tecnici e professori, ossia un errore durante l’uso del Turbo Pascal, precisamente il’error 200, che visualizza il messaggio “division by zero”. La cosa che ha colpito un po’ tutti è che l’errore è comparso da quando sono stati acquistati i nuovi PC. Ed è stato proprio questo a portarmi alla scoperta della soluzione. Ecco dunque in cosa consisteva e come ho risolto il problema.

Il fatto che il programma abbia iniziato a dare problemi solo con i nuovi computer, ha creato un bivio con due strade possibili: 1- Problema relativo al sistema operativo (incompatibilità), ma era al quanto improbabile; 2- Quella division by zero mi ha fatto subito pensare ad una formula, dove lo zero stava evidentemente ad indicare qualche errore nell’argoritmo. Essendo il Turbo Pascal piuttosto datato, ed è stato quindi progettato per macchine di una certa data, vecchie, lente. Il numero di eventuali giri di clock prima era molto lento rispetto alle macchine moderne, ed il fatto che ora sia più veloce abbia potuto provocare quell’errore. Tengo a precisare che questa è una mia supposizione, potrebbe non essere assolutamente vero niente e tutto ciò che ho scritto è sbagliato.
Ritorniamo all’errore. Questo si visualizzava quando veniva dato l’uses crt, che a scuola usiamo spesso per utilizzare la funzione del clrscr. Questo è quindi l’errore.

La soluzione che ho usato è stata questa:

  • Scaricare il pacchetto disponibile a questo link: http://www.brain.uni-freiburg.de/~klaus/pascal/runerr200/t7tplfix.zip;
  • Estrarre il pacchetto;
  • Incollare tutto il contenuto in C:\TP\BIN (o dove avete il file “TURBO.TPL”;
  • Aprite il file t7tplfix e digitate “p” e poi “invio;
  • Aprite (o riavviate se lo avevate già aperto) Turbo Pascal.

Sia stata intuizione o fortuna, il problema l’ho risolto così :) .
N.B.: Questo procedimento è stato testato su sistema operativo Windows XP (quello usato a scuola).

6 Risposte

  1. Supposizione esatta cmq, anni fa mi capito di dover patchare a mano il pezzo di codice responsabile.
    Se ricordo bene quel “zero” era un contatore utilizzato in fase di inizializzazione del programma, una specie di banckmark del processore.

    Ormai la directory TP non c’e’ da tempo sul mio hd cmq bei ricordi O_o

  2. Già bei ricordi… anche se recenti. Nelle scuole si preferisce continuare a studiare questo linguaggio piuttosto datato che altri più recenti.

  3. Anche se datato è cmq adatto a livello didattico e quindi buono per introdurre un allievo al mondo della programmazione, specie in un semplice corso di informatica delle scuole superiori e/o scuole inferiori…
    Il bello del PASCAL è che risulta molto dichiarativo e l’allievo puo’ cominciare a programmare senza DOVER sapere in realtà cosa c’è sotto (a diferenza del linguaggio C che anche se molto potente alcun volte è davvero rompiballe…)
    Sarebbe invece uno “scandalo” se il PASCAL venisse ancora utlizzato a pieno che so in una scuola tecnica inforamtica (perito informatico)…

  4. Infatti non metto in dubbio le sue qualita’ come linguaggio a scopo didattico. Per iniziare ad imparare a programmare e’ forse il migliore.

  5. salve, il link di download non funziona, se avete il file mandatemelo lonfer94@hotmail.it; o postate un link funzionante…

  6. Io invece credo che il pascal sia ormai obsoleto, e che sarebbe meglio introdurre i ragazzi alla programmazione con il basic, sicuramente più attuale.
    Per il resto… il link di download, come già detto da lonfer94, non funge…

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger cliccano Mi Piace per questo: