Projet ForthEx

Description

Cette page est l'index principal de la documentation du projet ForthEx. La documentation décris chaque mot du dictionnaire forth accessible à l'utilisateur. Il y a une page html par fichier source qui porte le nom de celui-ci. Chaque page décris le module et chacun des mots définis dans le fichier. Cette page est l'index principal qui référence chacune de ces pages.

Liste des fichiers

Organisation de la documentation

Pour chaque fichier source qui contient des définitions du vocabulaires ForthEx il y a un page WEB associée documentant chacun des mots de ce fichiers. La structure est toujours la même. Une présentation initiale du groupe de mots suivit d'une description de chaque mot. A la fin de la page il y a un index des mots du fichiers. A la fin de chaque définition il y a 3 liens, le premier mène à l'index de la page, le second renvoie en haut de la page et le troisième permet de revenir à cet index principal.

Le commentaire entre parenthèses après le nom du mot est une description de l'état de la pile des arguments avant l'exécution du mot et après ( avant -- après ). par exemple:
( u1 -- )
signifie que le mot prend un argument de type u (entier simple non signé) et le consomme et ne retourne aucune valeur.
Si un mot affecte le contenue de la pile des retours le commentaire ressemble à ceci:
>R ( n -- R: -- n )
Ceci signifie que le mot
>R prend l'argument n et le transfert sur la pile des retours.

Types de données

notationdescription
cCaractère ASCII, 8 bits, mais le code ASCII est de 7 bits,{0..127}.
nEntier simple signé, 16 bits,{-32768..32767}.
n+Entier simple signé, positif, 16 bits,{1..32767}.
uEntier simple non signé, 16 bits,{0..65535}.
dEntier double, 32 bits,{-2147483648..2147483647}.
udEntier double non signé, 32 bits,{0..4294967295}.
c-addrAdresse alignée sur un octet, peut avoir une valeur impaire, 16 bits,{0..65535}.
a-addrAdresse alignée sur un mot de 16 bits, doit-être paire, 16 bits,{0..65534}.

Lexique

symboledescription
cell Dimension de base d'un élément de donnée. Pour ForthEx les cellules ont 16 bits.
cell-pairDeux cellules juxtaposée pour sauvegarder une donnée dont la grandeur est de 32 bits.
C: Utilisé dans les commentaires pour désigner la pile de contrôle.
dictionnaireContient le nom symbolique et un pointeur vers le code des mots du language.
DSPData Stack Pointer, pointeur de la pile des arguments.
Pile des argumentsContient les données passées aux fonctions ainsi que les valeurs retournées.
Pile de contrôleUtilisée par le compilateur pour conserver les références de branchement à résoudre.
Pile des retoursUtilisée pour conserver les adresses de retour lors des appels de sous-routines.
Aussi utilisée pour stocker temporairement des valeurs pour dégager la pile des arguments.
R: Utilisé dans les commentaires pour désigner la pile des retours.
RSPReturn Stack Pointer, pointeur de la pile des retours.
S: Utilisé dans les commentaires pour désigner la pile des arguments.

Liste des fichiers

Présentation Présentation du projet ForthEx.
block Gestion du stockage de données par blocs sur les périphériques de stockage.
blockEdit Éditeur de texte en mode bloc.
core Vocabulaire de base du système ForthEx.
console Interface avec la console utilisateur.
dynamem Gestion de la mémoire dynamique.
eds Accès à la RAM étendue du Microcontrôleur.
flash Accès à la mémoire flash du microcontrôleur.
hardware Configuration matérielle du microcontrôleur.
interpret Interpréteur/compilateur. Interface utilisateur en mode console texte.
keyboard Lecture du clavier.
math Fonctions arithmétiques, logiques et comparaisons numériques.
sdcard Accès de base à la carte SD.
serial Interface port de communication sériel RS-232.
store Accès RAM et EEPROM externe.
strings Manipulation des chaînes de caractères et conversion numérique en chaîne.
tools Support au débogage.
tvout Fonctions d'accès au moniteur vidéo local.
vt102 Fonctions d'accès à un terminal VT102 via le port sériel.
tutoriel par la pratique.
ANS Forth 200x proposition 16.1 (pdf) Proposition de standardisation du langage Forth.