Le noyau FORTH
Le noyau FORTH équipant ce
système est basé sur le standard FORTH-79 avec les
différences suivantes:
- la pile des données est au
format 32 bits (long mot) au lieu de 16 bits (mot). Ceci perme
d'exploiter toutes les ressources du microprocesseur MC68030
(68000 pour le mini système). Par contre, il est toujours
possible de manipuler des mots de 16 bits ou des octets (8bits).
Lors d'une lecture d'information de cette largeur, tous les bits
de poids forts prennent la valeur du 15ième bit pour un
mot ou du 7ième bit pour un octet. Avec cette extension
du signe, toutes les opérations arithmétiques son
valables à partir d'un mot ou d'un octet.
- la notion de vocabulaire n'est pas
gérée. Elle permet normalement d'optimiser les
durées d'interprétation/compilation en minimisan
le nombre de comparaisons lors de la recherche d'une instruction.
Mon interpréteur/compilateur gère une table d'indirection
permettant le classement par ordre alphabétique de toutes
les instructions ce qui permet d'avoir un nombre de comparaisons
maximum égal au logarithme en base 2 du nombre total d'instructions
: pour 1000 instructions, l'interpréteur/ compilateur
n'aura ainsi que 10 comparaisons à effectuer au maximum
pour trouver une instruction ou bien décider qu'elle n'existe
pas.
Les instructions sont présentées
de la manière suivante:
- les paramètres d'entrée
pris sur la pile des données sont en vert (une absence
de paramètre est signalé par le caractère
"-"),
- le nom de l'instruction est en rouge,
- les paramètres de sortie
placés sur la pile des données sont en bleu (une
absence de paramètre est signalé par le caractère
"-"),
- la description de l'instruction
est en noir et en italique.
Tous les paramètres sont des
nombres de 32 bits. Lorsque plusieurs paramètres sont indiqués,
ils sont séparés par une virgule. Le paramètre
le plus à gauche est le premier déposé dans
la pile et celui le plus à droite constitue le sommet de
la pile.
Toutes les instructions du coeur FORTH sont affichées dans cette page.
Toutes les instructions du mini système FORTH sont affichées dans cette page.