Introduction
publication: 23 février 2023 / mis à jour 16 janvier 2026
Démarrage
Si vous n'avez jamais programmé en langage FORTH, nous vous conseillons cette version:
github.com/MPETREMANN11/eForth-Windows/blob/main/uEf64-7.0.7.21.exe
Il s'agit d'une version 64 bits, exécutable sous Windows.
- créez un dossier eForth dans votre espace de travail sous Windows;
- téléchargez cette version dans ce dossier eForth
- créez un raccourci sur le bureau pour lancer uEf64-7.0.7.21.exe
Ce programme uEf64-7.0.7.21.exe ne nécessite aucune installation. Si vous avez une alerte Windows, ignorez cette alerte.
La disponibilité de l'interpréteur/compilateur est quasi instantanée:

eForth n'est pas sensible à la casse.
L'interprèteur
eForth est un langage de programmation interactif composé de mots. Les mots FORTH sont l'équivalent de sous-programmes ou de fonctions dans d'autres langages et sont exécutés en les nommant. Bien que eForth soit interactif à la base, l'utilisateur n'a pas besoin d'interagir avec une application embarquée si son mot de niveau supérieur est défini pour s'exécuter automatiquement à la mise sous tension. Voici un exemple d'exécution d'un mot FORTH :
--> decimal ok -->
Cela exécute le mot decimal qui définit la base de représentation décimale des nombres, un format avec lequel
vous êtes susceptibles d'être plus familier, à moins que vous ne soyez un étudiant en mécatronique ou en informatique.
Maintenant, essayons quelque chose d'un peu plus intéressant en entrant:
2 17 + .
\ display: 19 ok
Cette fois, eForth montre plus clairement sa nature interprétative. Un petit programme appelé l'interpréteur externe boucle continuellement, attendant l'entrée du port série. L'entrée est une séquence de chaînes de texte (mots ou chiffres) séparées les unes des autres par un ou plusieurs caractères ASCII vides.
Les chaînes de texte sont interprétées de trois manières seulement: les mots (sous-programme ou fonction noms), numéros ou non définis. L'interprète externe essaie d'abord de chercher le mot du dictionnaire qui contient les mots déjà définis. S'il trouve le mot, il exécute le code correspondant.
Si aucune entrée de dictionnaire n'existe, l'interpréteur essaie de lire l'entrée comme un nombre. Si la chaîne satisfait aux règles de définition d'un nombre, elle est convertie en nombre dans le représentation interne du microcontrôleur, et stocké dans un emplacement de mémoire spécial, appelé le haut de la pile (TOS).
Dans l'exemple ci-dessus, FORTH a interprété 2 et 17 comme des nombres et les a poussés
sur la pile. + est un mot prédéfini, tout comme ., ils sont donc recherchés et exécutés.
Le mot +(plus) a supprimé 2 et 17 de la pile, les a additionnés et a laissé
le résultat 19 sur la pile. Le mot . (point) a supprimé 19 de la pile et l'a envoyé sur
le périphérique de sortie standard, ici la fenêtre de eForth. Voici une photo de la pile à travers le processus.
Nous pourrions également travailler en hexadécimal:
hex
0a 14 * . \ display: c8
Si vous souhaitez indiquer explicitement
la base d'un nombre, vous pouvez ajouter un sigil aux chiffres du nombre. Par exemple,
$10 ou #16 représentent tous la valeur décimale seize.
Si le texte entrant ne peut pas être localisé dans le dictionnaire ni interprété comme un nombre, eForth émet un message d'erreur.
thing
\ display: ERROR: thing NOT FOUND!
Enfin, voici le programme classique Hello World!.
: hey
." Hello, World!"
;
Forth vous permet de produire du texte en utilisant le mot ." tandis que les mots : et ; commencent et terminent le
définition de votre propre mot hey. Notez que des caractères blancs sont utilisés pour délimiter chacun des
ces mots. Maintenant, tapez hey et voyez ce qui se passe.
hey
\ display: Hello, World! ok
Dans le langage FORTH, les mots sont séparés par des espaces blancs - espaces, tabulations et retours à la ligne.
Toute chaîne de caractères affichables peut être un mot: asdf foo jello @W#$ gibbet.
L'interpréteur FORTH est très simple. Il analyse le mot suivant (c'est-à-dire qu'il saute les espaces, puis collecte des caractères jusqu'à ce qu'il voie un autre caractère d'espacement) et l'exécute.
Donc, si vous essayez de comprendre un programme Forth en détail, vous devez regarder chaque mot à tour de rôle et de comprendre ce qu'il fait. Cela semble simple, mais cela vous fera décrocher si vous insistez à vous référer à un algèbre. Allez simplement de gauche à droite, un mot à la fois.
Legal: site web personnel sans commerce / personal site without seling
