Site d’Emmanuel Saint-James
Philologie de la programmation
Programme = données
- L’assembleur est donc un programme qui a comme donnée d’entrée un programme écrit en langage d’assemblage et fournit en résultat sa forme binaire, qui sera placée en mémoire afin d’exécution ; une suite de bits passe donc du statut de donnée au statut de programme ;
- Ce double point de vue était encore plus au centre des premiers ordinateurs :
- Pour parcourir une suite de valeurs, il faut effectuer une boucle en passant à la valeur suivante à chaque itération, autrement dit en incrémentant l’adresse de cette suite ;
- Seul moyen alors, incrémenter l’opérande de l’instruction comportant cette adresse, autrement dit modifier le texte de son programme au cours de son exécution !
- Un mauvais repérage entrainant une réécriture quasi‐aléatoire d’un tel programme, des alternatives sont apparues : instructions à double indirection (coûteuse en temps) puis ajout aux processeurs de petites mémoires internes, les registres ;
- Suite à cette évolution, toute écriture dans la mémoire où réside le programme est à présent considérée comme une intrusion, volontaire (piratage) ou involontaire (bug) ;
- En conséquence, l’auto‐modification de programme a été définitivement interdite et plus généralement la synthèse de programme directement en mémoire ;
- Il n’en reste pas moins que les ordinateurs ont cette incroyable faculté de permettre à des textes de s’auto‐modifier lorsqu’ils s’énoncent.
- Valid CSS 2.1
- Valid XHTML Basic 1.1
- Triple-A conformance Web Content Accessibility Guidelines 2.0
-
Calculé le 17 mars 2026 à 06h13minpar DidacSPIPuniversite
- SPIP
- Valid RSS Atom