• Aucun résultat trouvé

Cours le système Forth – Cours et formation gratuit

N/A
N/A
Protected

Academic year: 2022

Partager "Cours le système Forth – Cours et formation gratuit"

Copied!
9
0
0

Texte intégral

(1)

Forth: introduction

Brique ASC

Samuel Tardieu sam@rfc1149.net

École Nationale Supérieure des Télécommunications

(2)

Pourquoi Forth ?

Le langage Forth sera utilisé à plusieurs endroits de ce cours. Ses caractéristiques les plus intéressantes seront pour nous :

Modèle d’interaction, interprétation et compilation original Absence de grammaire

Piles multiples

Récursion terminale facile à implémenter Machines virtuelles

(3)

Avertissements

Ce cours n’est pas un cours de langage Forth Certains raccourcis seront effectués

On ne vous demandera pas de construire votre propre système Forth

(bien que cela soit facile, amusant et enrichissant)

(4)

Le système Forth

Mélange un interpréteur et un compilateur

Chaque nouveau mot(équivalent d’une fonction en Forth) est compilé immédiatement et devient instantanément disponible Les mots sont séparés par un blanc ou un retour à la ligne Un dictionnaire contient l’adresse du code de chaque mot Une pile de données sert à passer les paramètres entre les mots

(5)

Utilisation de la pile

En Forth, chaque mot manipule les objets au sommet de la pile (de données). Certaines opérations manipulent la pile.

12 4 12

4

dup 12

4 4

+ 12

8

swap 8

12

(6)

Exemple

Définition d’un mot carrequi élève au carré : carre dup * ;

Définition d’un mot cubequi élève au cube : cube dup carre * ;

La phrase suivante affiche 27 3 cube .

Note :seul le haut de la pile est important

(7)

Modes

Forth dispose de deux modes. Le cœur lit un mot, puis agit.

Interprétation :c’est le mode par défaut ; tout mot qui est tapé est exécuté, tout nombre est placé sur la pile

Compilation :chaque mot ajoute un appel à ce mot dans la

compilation courante, chaque nombre génère le code nécessaire pour placer ce nombre sur la pile

(8)

Changement de mode

: totodémarre la génération du mottoto

;termine la compilation du mot courant

: carre dup * ;génère en mémoire, à une adresse libre A, l’équivalent de

call dup call mult ret

et rajoute une entrée dans le dictionnaire pourcarre pointant sur l’adresse A.

(9)

Avantages du modèle

Parseur simplissime (blanc ou retour-chariot) Interpréteur simplissime

Compilateur simplissime (un système Forth complet tient typiquement en quelques Ko)

Code très compact

La pile de données permet de ne pas gérer le passage de paramètres Un mot machine par mot appelé

Pas d’allocation de registres

Références

Documents relatifs

Pour calculer la valeur d’une fonction f d´efinie par une expression pour une valeur donn´ee de l’ensemble de d´efinition A, il faut remplacer dans l’expression la variable par

Java Media Framework (JMF) est une architecture unifiée pour la.. synchronisation, le traitement, l'affichage de données temporelles comme les données audio, la vidéo, le format

⇒ pour rendre une interface explicite, le plus simple est d’enfermer la proc´edure externe dans un module (il existe d’autres solutions moins simples avec les bloc interface ,

Chaque nouveau mot (équivalent d’une fonction en Forth) est compilé immédiatement et devient instantanément disponible Les mots sont séparés par un blanc ou un retour à la ligne

Si les tableaux passés en arguments ont les mêmes clés (chaînes de caractères), les valeurs sont alors rassemblées dans un tableau, de manière récursive, de façon à ce que, si

extérieures exercées sur ce système sont symétriques par rapport à ce plan, alors on peut admettre que le mécanisme est « plan », c’est à dire que :. - les résultantes

BTS Systèmes Électroniques – Étude d’un Système Technique Session 2015 U4.2 – Physique Appliquée - Sujet Code : 15SEE4PA1 Page : B2/B15... Évaluer la valeur de la constante

Si la valeur propre est double (c'est-à-dire si elle est une solution de multiplicité deux de l'équation de Laplace), alors on a un système ou deux équations sont superflues, et