Brevet FR2805058A1 — publié le 20010817

DU0 SPICATA, X2805058 DU PL!IC;ATA& STRUCTURE INFORMATIQUE POUR UN SUPPORT DE DONNEES PORTABLE L'invention se rapporte à l'arrangement d'un support de données portable pour l'exécution de codes de programme interprétants. En particulier, l'invention concerne une structure informatique pour un support de données portable, un procédé pour la réalisation et l'interprétation d'un programme d'application ainsi qu'un ensemble de moyens d'exploitation pour la structure informatique. De plus l'invention se rapporte à un support de données portable avec une structure informatique pour l'exécution d'un programme d'application. Il est de pratique courante de réaliser des processus de traitement de données dans lesquels des données utiles fixées à l'avance sont traitées par utilisation de supports de données portables, en particulier sous la forme de cartes à puce. Une tendance de développement tend à améliorer la flexibilité de tels supports de données portables intelligents aussi bien en ce qui concerne les fonctionnalités réalisables qu'en ce qui concerne la compatibilité des composants participants. Selon une propo- sition connue du document EP-A-794 519, le système d'exploitation d'une carte à puce doit être formé comme système d'interprétation pour que le code de programme à prendre en charge se transforme en code spécifique de processeur et exécutable par le processeur à carte. Le systèmes d'interprétation proposé permet le rechargement de codes de programme sur une carte à puce et rend possible l'exécution d'un programme par différents processeurs. L'interprétation des codes de programme à prendre en charge a cependant pour conséquence une réduction notoire de la vitesse de prise en charge, par exemple par rapport à un code de programme obtenu par compilation. Pour rendre possible une vitesse d'exécution plus élevée, le document USA- 367 685 propose l'utilisation d'un système hybride d'interprétationcompilation, la compilation et l'interprétation étant activées l'une derrière l'autre. Le code de programme d'application est d'abord transmis par compilation en un format intermé- diaire exécutable, qui est ensuite interprété. Dans le code de programme de format intermédiaire, les références symboliques contenues sont remplacées dans une l145FRdoc - 5 féwricr2001 - 1113 2 2805058 première boucle d'interprétation par des références numériques. L'interprétation est commandée par une routine principale d'interprétation. Pendant l'exécution de l'interprétation, la routine principale d'interprétation lit une instruction à prendre en charge puis appelle une séquence de programme correspondante, rédigée en langage machine et qui est exécutable immédiatement par l'unité de processeur, séquence de programme qui est ensuite exécutée par l'unité de processeur. Après le lancement de l'exécution, l'unité de processeur continue avec l'interprétation de l'instruction suivante. Pendant l'exécution d'une séquence de programme en langage machine dans une mémoire, l'adresse de l'instruction suivante à interpréter est conservée généralement dans la zone de mémoire empilée de la mémoire centrale associée à l'unité de processeur. Le problème que se propose de résoudre l'invention est d'obtenir une structure informatique interprétante pour un support de données portable, de telle sorte que la vitesse d'exécution d'un programme d'application soit encore augmentée. Ce problème est résolu par une structure informatique pour un support de données portable avec des moyens de mémoire pour mémoriser un programme d'application consistant en une suite d'instructions et avec une unité de processeur pour l'exécution interprétante du programme d'application, chaque instruction, vers laquelle est dirigé un indicateur d'instruction, étant traitée, caractérisée par une unité de transfert reliée avec l'unité de processeur, avec les moyens de mémoire compre- nant le programme d'application et avec l'indicateur d'instruction, unité de transfert qui comprend au moins un élément de programme logique, qui indique une ampli- tude de pas de réglage, et unité de transfert qui règle l'indicateur d'instruction après l'exécution du traitement d'une instruction à chaque fois à l'amplitude de pas de réglage indiquée dans un élément de programme logique. La structure informatique selon l'invention se caractérise en ce qu'elle prévoit pour le réglage de l'indicateur d'instruction désignant la prochaine instruction de programme d'application à prendre en charge, une unité de transfert spécialement prévue pour cela. Elle rend superflue la mémorisation de l'adresse de retour dans la pile de mémoire. Ainsi, l'économie des opérations de transfert et de retour diminue le temps de traitement d'une instruction du programme. Pour cela, l'unité de transfert est réalisée sous la forme d'un programme invariable à l'intérieur de l'unité de processeur. Selon un autre mode de réalisation de l'invention, l'unité de transfert est reliée à une unité de mémoire de code machine, dans laquelle se trouve un code de programme, rédigé en langage machine et correspondant à chaque instruction à interpréter du programme d'application. L'unité de transfert est reliée à une unité de stockage de tables qui associe un élément de programme de l'unité de mémoire de code de machine à chaque instruction du programme d'application. L'unité de 1I145FRdoc - 5 févner 2001 - 2/13 3 2805058 transfert est réalisée sotus la forme d'un programme non modifiable et réalisable par l'unité de processeur. Le problème posé est également résolu par un procédé pour la réalisation de l'interprétation d'un programme d'application composé d'une suite d'instructions par une structure informatique fonnée d'un support de données portable, chacune des instructions à traiter étant indiquée par un indicateur d'instruction, caractérisé en ce que le réglage de l'indicateur d'instruction pour indiquer l'instruction suivante à traiter est produit par l'exécution de chaque instruction traitée en dernier. Le traite- ment d'une instruction se produit pendant qu'un élément de programme corres- pondant, rédigé en langage machine, est détecté et exécuté. Les éléments de programme correspondants rédigés en langage machine sont stockés de manière séparée du programme d'application. Il est appliqué au moins un élément de programme logique rédigé en langage machine et qui produit un réglage de l'indicateur d'instruction. Les éléments de programme rédigés en langage machine et correspondant aux instructions sont chacun isolés par une séquence d'ordre, qui produit l'exécution d'un élément de programme logique. Une table est utilisée pour détecter un élément de programme rédigé en langage machine et correspondant à une instruction d'un programme d'application, table qui associe l'adresse d'un élément de programme rédigé en langage machine à chaque instruction possible d'un programme d'application. Le procédé selon l'invention a l'avantage, pour enchaîner la prise en charge d'un programme d'application, qu'aucun programme principal d'interprétation d'attaque n'est nécessaire. L'ajustement de l'indicateur d'instruction pour désigner chacune des instructions à prendre en charge est réalisé à partir de chacune des instructions exécutées en dernier. Le problème posé ci-dessus est également résolu par un ensemble de moyens d'exploitation pour la mise en oeuvre d'une structure informatique d'un support de données portable pour l'exécution interprétante d'un programme d'application composé d'une suite d'instructions, avec une première unité de programme qui rend une unité de processeur exécutante de la structure informatique capable de trouver chaque instruction à traiter ensuite, du programme d'application, avec une deuxième unité de programme qui comporte des éléments de programme, représentés en langage machine immédiatement exécutables par l'unité de processeur, éléments de programme qui correspondent chacun à une instruction fixée à l'avance dans un programme d'application et dont ils produisent l'exécution, ainsi qu'avec une troisième unité de programme qui comporte au moins un élément de programme logique rédigé en langage machine, et qui contraint la structure informatique à 18145FRdoc - 5 févrie 2001 - 3/13 4 2805058 transmettre la suite de l'exécution du programme à la première unité de programme. Les éléments de programme sont isolés de la deuxième unité de programme chacun par une séquence d'ordre qui contraint l'unité de processeur exécutante à exécuter un élément de programme logique. La première unité de programme de l'unité de processeur prépare une information qui indique dans la deuxième unité de mémoire l'élément de programme à traiter ensuite. La première unité de programme contraint l'unité de processeur à déterminer un indicateur, de manière qu'il indique dans le programme d'application la prochaine instruction à traiter. La première unité de programme exploite l'instruction à traiter et désignée par l'indicateur pour détenni- ner l'informnation sur l'élément de programme à exécuter à la suite. L'invention comporte une unité de programme contenant le code de pro- gramme susceptible d'être exécuté par l'unité de processeur et au moins un élément de programme logique, qui assure le réglage de l'indicateur d'instruction sur chacune des instructions exécutées par la suite. Un dispositif de routine d'interprétation prin- cipale provoquant la prise en charge du programme d'application n'est donc plus nécessaire. Chaque élément de programme obtenu depuis un code de programme exécutable par l'unité de processeur comprend une séquence de programme, qui bifurque vers un élément de programme logique. L'invention concerne également: - un support de données portable avec une structure informatique pour l'exécution d'un programme d'application, caractérisé en ce que la structure informatique est constituée comme décrit ci-dessus; - l'utilisation du procédé pour la réalisation de l'interprétation d'un programme d'application décrit ci-dessus pour l'exploitation d'un support de données portable présentant une structure informatique pour l'exécution d'un programme d'application; l'utilisation de l'ensemble des moyens d'exploitation constituant un produit informatique pour un dispositif de structure informatique d'un support de données portable apte à l'exécution d'un programme d'application. Un exemple de mode de réalisation de l'invention est expliqué par la suite en se référant au dessin dans lequel: La figure 1 représente la structure d'une structure informatique proposée. La figure 2 montre le mode opératoire de cette structure informatique. La figure 3 montre le processus de la prise en charge d'un programme d'application. La figure I montre la structure informatique proposée, avec les liaisons effica- ces fonctionnelles et les éléments impliqués. Une plate-forme de réalisation physique pour la structure représentée peut être en particulier le système informatique d'un 18145FRdoc - 5 février2001 -4/13 2805058 support de données portable, de préférence sous la forme d'une carte à puce c'est-à- dire un système considérablement réduit en ce qui concerne ses ressources physi- ques. Le coeur de la structure représentée à la figure I constitue une unité de proces- seur 10 centrale, qui est formée d'une manière classique en soi pour l'exécution de s l'interprétation de codes de programme rédigés en langage machine. Dans l'unité de processeur 10 centrale (CPU) sont réalisés un premier dispositif (IP) de réglage d'indicateur 20 pour le réglage d'un indicateur d'instruction 22 ainsi qu'un deuxième dispositif (PC) de réglage d'indicateur 30 pour le réglage d'un indicateur de programme 32. L'indicateur d'instruction 22 désigne une adresse d'une première zone de mémoire 40 (mémoire de programme d'application), dans laquelle se trouve un programme d'application constitué d'une pluralité d'instructions simples. L'indicateur de programme 32 indique une adresse de départ dans une deuxième zone de mémoire 50 dans laquelle se trouve un code de machine rédigé en langage machine et exécutable par l'unité de processeur 10 centrale. Le dispositif de réglage d'indicateur d'instruction 20 est relié avec une unité de transfert 60 par une liaison 24 de signal bidirectionnel, unité de transfert 60 qui est désignée par la suite comme interprète interne. Le dispositif indicateur d'instruction communique à l'interprète la position de l'indicateur d'instruction 22 par la liaison 24 de signal. En sens inverse, l'interprète interne 60 provoque le réglage de l'indication d'instruction 22. L'interprète 60 interne est relié au deuxième dispositif de réglage d'indicateur au moyen d'une autre liaison de signal 34. L'interprète contraint ainsi le dispositif de réglage d'indicateur à activer l'indicateur 32 de programme. L'interprète interne 60 est relié avec la zone de mémoire 40 du programme d'application au moyen d'une autre liaison 62 de signal. La liaison de signal 62 sert ainsi à extraire le contenu de l'adresse désignée par l'indicateur d'instruction 22 dans la zone de mémorisation du programme d'application 40. En partant de l'interprète 60 interne, un indicateur d'adresse 64 est en plus dirigé vers une troisième zone de mémoire (des adresses de départ) 70. Pour cela se trouve une table, qui associe une adresse de départ à chacune des instructions extrai- tes de la zone de mémorisation 40 du programme d'application, adresse de départ qui désigne un élément de programme 500, 520 exécuté en langage machine dans la deuxième zone de mémoire 50. L'indicateur de programme 32 provenant de l'unité de processeur 10 centrale est dirigé sur l'adresse de départ. Une quatrième zone de mémoire 80 (d'empilement) est associée à la deuxième zone de mémoire 50 par une liaison de données 52 bidirectionnelle, et sert de mémoire de pile à l'unité de processeur 10. 18145FR doc - 5 fcvier 2001 - 5/13 6 2805058 La réalisation technique de la structure représentée sur la figure I dans une base de matériel est effectuée en tenant compte d'une opportunité aussi bonne que possible s'adaptant aux dispositifs de matériel donné. Dans une forme de réalisation avantageuse, les première, seconde et troisième zones de mémoire 40, 50, 70 sont réalisées sous la forme d'une mémoire EEPROM, la pile 80 sous la forme d'une mémoire RAM. L'interprète 60 interne est convenablement représenté par un micro- programme enregistré dans une mémoire ROM, les dispositifs indicateurs 20, 30 étant des registres de l'unité de processeur 10 centrale. La figure 2 montre le mode de fonctionnement du système représenté sur la figure I. La première zone de mémoire 40 est occupée par un programme d'application, dont les instructions ont la forme d'un code byte et dont l'indicateur d'instruction 22 est pointé sur une première instruction 42 en code byte du programme d'application. L'interprète interne 60 extrait l'instruction 42 sous forme de code byte désigné par l'indicateur d'instruction 22 et détermine un élément de programme 500, 520 rédigé en code machine et déplaçant l'instruction 42 en code byte dans la deuxième zone de mémoire 50. Pour cela, il utilise la table déposée dans la troisième zone de mémoire 70, table qui associe à chaque instruction 42, 44 en code byte comprise dans la syntaxe en code byte, l'adresse de départ 76, 78 d'un élément de programme 500, 520 en code machine réalisant l'instruction dans la deuxième zone de mémoire 50. Les instructions 42, 44 en code byte sont représentées sur la table dans la troisième zone de mémoire 70 en ordre continu par une valeur offset ramenée au début de la table, valeur offset qui constitue un index continu 72, 74. L'index 72, 74 est directement dérivé d'une manière appropriée de la représentation des instructions 42, 44 en code byte dans la première zone de mémoire 40 par la prise en compte de la longueur de mot des adresses de départ 76, 78. Dans le cas d'une représentation en code byte courante des adresses de départ, il résulte, comme cela est représenté sur la figure 2, de la multiplication des instructions 42, 44 en code byte dans la première zone de mémoire 40 par le chiffre 2. L'interprète interne 60 dirige l'indicateur 64 d'adresse vers l'index 72, 74 correspondant chaque fois à une instruction 42, 44 en code byte dans la troisième zone de mémoire 70, et il extrait l'adresse de départ 78 associée. Conformément à l'adresse de départ 78 trouvée, l'interprète interne 60 trans- met une instruction de commande au dispositif indicateur 30 dans l'unité de proces- seur centrale 10 par la liaison de signal 34, instruction de commande sur laquelle le dispositif indicateur 30 oriente l'indicateur de programme 32 sur l'adresse de départ désignée dans la deuxième zone de mémoire 50. L'élément de programme 500, 520 I18145FR.doc - 5 févier 2001 - 6/13 7 2805058 qui est déposé dans cette zone et qui est formé d'une suite de séquences de code machine, est exécuté par l'unité de processeur 10 centrale. Chaque élément de programme 500, 520 comprend pour cela des étapes de programme, qui réalisent l'instruction 42, 44 en code byte à la base. A la fin de chaque élément de programme 500, 520, se trouve une séquence d'instructions 540, 550 suivante, que l'unité de processeur 10 centrale contraint à exécuter un élément de programme logique 600, 610, 620. L'élément de programme logique 600, 610, 620 ne correspond pas à une instruction en code byte d'un programme d'application, mais agit en tant que partie de l'interprète 60 interne. L'élément de programme logique se trouve de préférence aussi dans la deuxième zone de mémoire 50 et se compose, comme les éléments de programme 500, 520, d'un code rédigé en langage machine et exécutable directement par l'unité de processeur 10 centrale. Une première séquence d'instructions 612, 622 de l'élément de programme logique 610, 620 contraint le dispositif indicateur 20 de l'unité de processeur 10 centrale à diriger l'indicateur d'instructions 22 vers la prochaine instruction 44 en code byte dans la première zone de mémoire 40. Une autre séquence d'instruction 614, 624 agit de telle façon que l'interprète interne 60 règle l'indicateur d'adresses 64 dirigé vers la troisième zone de mémoire 70 pour détecter l'adresse de départ 76, 78, appartenant à une instruction 44 en code byte, d'un élément de programme 500, 520 exécutable, et pour provoquer l'exécution de cette instruction. Fréquemment, différentes instructions d'un programme d'application nécessi- tent différents pas de progression de réglage de l'indicateur d'instruction. Des instructions de saut définissent à peu près en règle générale la position des indica- teurs d'instruction, de sorte qu'un réglage par un élément logique n'est pas néces- saire. Dans un programme d'application typique présent sous la forme de code byte, les instructions 42, 44 en code byte montrent en règle générale des opérandes avec différents chiffres de byte. Dans de tels cas, sont prévus de manière appropriée plusieurs éléments de programme logique 600, 610, 620, qui provoquent un réglage de l'indicateur d'instruction 22 selon des pas de progression différents. Un premier élément logique 600 sert pour cela à faire exécuter les instructions de saut. Il ne comporte pas de réglage de l'indicateur d'instruction 22, mais comporte seulement une séquence d'instruction qui agit de manière que l'interprète interne 60 règle l'indicateur d'adresse 64 pour la détection des adresses de départ 76, 78 appar- tenant à une instruction en code byte prédéterminée d'un élément de programme 500, 520 exécutable, afin d'en contraindre l'exécution. D'autres éléments de programme logique 610, 620 résultent de la structure de la syntaxe en code byte. Si les instruc- tions en code byte présentent une longueur préférée, prédominent sensiblement les 18145FR.doc - 5 fwier 2001. 7/13 8 2805058 instructions avec un ou deux bytes, et qui sont déposées de manière appropriée sur les éléments logiques 610, 620 sélectionnés et de longueur préférée. Un élément de programme logique 610 provoque par un indicateur d'instruction 26 agissant sur le premier dispositif (IP) de réglage 20, le réglage de l'indicateur d'instruction 22 à un byte et un autre élément 620 de programme logique provoque le réglage à deux bytes. En premier lieu, la séquence d'instruction 612 agissant sur la position de l'indicateur d'instruction 22 consiste en une incrémentation, et en second lieu consiste en une addition 622 du chiffre deux. D'une manière analogue, on peut installer d'autres éléments de programme logique permettant d'obtenir d'autres pas de progression. Conformément aux différentes amplitudes de saut provoquées par l'intermédiaire des différents éléments de programme logique 600, 610, 620, les éléments de programme 500, 520 correspondant aux instructions 42, 44 en code byte, sont isolés par différentes séquences de programme 540, 550 pour l'appel des éléments de programme logique 600, 610, 620. Une première séquence de programme 540 provoque l'appel d'un élément de programme logique 610 qui conduit à l'incrémentation de l'indicateur d'instruction 22 d'un byte, pendant qu'une autre séquence de programme 550 appelle un élément de programme logique 620, qui conduit à un réglage de l'indicateur d'instruction 22 à deux bytes. La figure 3 montre sur un organigramme la suite d'étapes générales lors de la prise en charge d'un programme d'application avec l'aide de l'interprète interne proposé. La suite d'étapes commence, à l'étape 100, avec le positionnement de l'indicateur d'instruction 22 sur la première instruction, c'est-à-dire sur la première instruction en code byte, du programme d'application par le dispositif de réglage indicateur 20 agencé dans l'unité de processeur 10 centrale. L'unité de processeur 10 centrale mentionne la position de l'indicateur d'instruction 22 atteinte par la suite, à l'interprète 60 interne, ce qui correspond à l'étape 102, qui continue la prise en charge. L'interprète interne 60 extrait ensuite dans la première zone de mémoire 40 l'instruction en code byte désignée par l'indicateur d'instruction 22, ce qui corres- pond à l'étape 104, et détermine l'index 72 correspondant à l'instruction en code byte sur la table dans la troisième zone de mémoire 70. Conformément à l'index déterminé, l'interprète soutire de la table dans la zone de mémoire 70 l'adresse de départ d'un élément de programme en code machine, réalisant l'instruction en code byte, dans la deuxième zone de mémoire 50, ce qui correspond à l'étape 106, et contraint le dispositif indicateur 30 dans l'unité de processeur 10 centrale à position- ner l'indicateur 32 du programme sur l'adresse de départ trouvée, ce qui correspond à l'étape 108. L'élément de programme en code machine 500, 520 désigné par 18145FR.doc - 5 fvrir 2001 - 8/13 9 2805058 l'adresse de départ est exécuté par l'unité de processeur 10 centrale, ce qui corres- pond à l'étape 110. Contrainte par les séquences de programme 540, 550 envoyées chacune à un élément de programme logique 600, 610, 620 à la fin de chaque élément de programme 500, 520, l'unité de processeur 10 centrale appelle de nouveau à chaque fois l'interprète interne 60 à l'achèvement de l'exécution d'un élément de programme 500, 520, ce qui correspond à l'étape 112 et délivre à l'interprète interne 60 la suite de la prise en charge du programme, ce qui correspond à l'étape 114. L'interprète interne 60 contraint alors, confonnément à la proposition par l'élément de programme logique 540, 550 exécuté en dernier, le dispositif de réglage d'indicateur 20 à régler l'indicateur d'instruction 22 et commence de nouveau l'exécution de l'étape 100 et des suivantes. Les instructions des étapes 100 à 114 de l'ordinogramme représenté à la figure 3, peuvent se résumer ainsi - a l'étape 100 dans l'unité centrale CPU, régler le premier dispositif de réglage (IP, 20) selon la proposition de l'élément logique; - a l'étape 102: dans l'unité centrale, annoncer le premier dispositif de réglage IP à l'interprète interne (II, 60); - a l'étape 104: dans l'interprète interne II, lire le code byte désigné par le premier dispositif de réglage IP; - a l'étape 106 dans l'interprète interne II, déterminer l'adresse de départ à partir de la table; - a l'étape 108: dans l'interprète interne, placer le deuxième dispositif de réglage (PC, 20) sur l'adresse de départ; - a l'étape 110: dans l'unité centrale CPU, exécuter l'élément de programme en code machine; - a l'étape 112: dans l'unité centrale CPU, passer à l'élément de programme logique; a l'étape 114: dans l'unité centrale CPU, mettre en oeuvre l'élément logique. Bien entendu, la présente invention n'est pas limitée aux modes de réalisation décrits et représentés, mais elle est susceptible de nombreuses variantes accessibles à l'homme de l'art sans que l'on ne s'écarte de l'invention. 1814SFRdoc - 5 fécr 2001 -9/13 l0 2805058 REVENDICATIONS 1.- Structure infornlatique pour un support de données portable avec des moyens de mémoire pour mémoriscr un programme d'application consistant en une suite d'instructions et avec une unité de processeur pour l'exécution interprétante du programme d'application, chaque instruction vers laquelle est dirigé un indicateur d'instruction étant traitée, caractérisée par une unité de transfert (60) reliée avec l'unité de processeur (10), avec les moyens de mémoire comprenant le programme d'application et avec l'indicateur d'instruction (22), unité de transfert (60) qui comprend au moins un élément de programme logique (600, 610, 620) , qui indique une amplitude de pas de réglage, et qui règle l'indicateur d'instruction (22) après l'exécution du traitement d'une instruction (42) à chaque fois de l'amplitude de pas de réglage indiquée dans un élément de programme logique (600, 610, 620). 2.- Structure informatique selon la revendication 1, caractérisée en ce que l'unité de transfert (60) est reliée à une unité (50) de mémoire de code machine, dans laquelle se trouve un code de programme (500, 520), rédigé en langage machine et correspondant à chaque instruction (42, 44) à interpréter du programme d'application. 3.- Structure informatique selon la revendication 1 ou 2, caractérisée en ce que l'unité de transfert (60) est reliée à une unité (70) de stockage de tables qui associe un élément de programme (500, 520) de l'unité de mémoire de code de machine (50) à chaque instruction (42, 44) du programme d'application. 4.- Structure informatique selon l'une quelconque des revendications 1 à 3, caractérisée en ce que l'unité de transfert (60) est réalisée sous la forme d'un programme non modifiable et réalisable par l'unité de processeur (10). 5.- Procédé pour la réalisation et l'interprétation d'un programme d'application composé d'une suite d'instructions par une structure informatique formée d'un support de données portable, chacune des instructions à traiter étant indiquée par un indicateur d'instruction, caractérisé en ce que le réglage de l'indicateur d'instruction (22) pour indiquer l'instruction (44) suivante à traiter est produit par l'exécution de chaque instruction (42) traitée en dernier. 18145FR.doc - 21 nmai 2001 - 10/13 l 2805058 6.- Procédé selon la revendication 5, caractérisé en ce que le traitement d'une instruction (42, 44) se produit pendant qu'un élément de programme (500, 520) correspondant, rédigé en langage machine, est détecté et exécuté. 7.- Procédé selon la revendication 5 ou 6, caractérisé en ce que les éléments de programme correspondants rédigés en langage machine sont stockés de manière séparée du programme d'application. 8.- Procédé selon l'une quelconque des revendications 5 à 7, caractérisé en ce qu'est appliqué au moins un élément de programme logique (600, 610, 620) rédigé en langage machine et qui produit un réglage de l'indicateur d'instruction (22). 9.- Procédé selon l'une quelconque des revendications 5 à 8, caractérisé en ce que les éléments de programme (500, 520) rédigés en langage machine et corres- pondant aux instructions sont chacun isolés par une séquence d'ordre, qui produit l'exécution d'un élément de programme logique (600, 610, 620). 10.- Procédé selon l'une quelconque des revendications 5 à 9, caractérisé en ce qu'une table est utilisée pour détecter un élément de programme (500, 520) rédigé en langage machine et correspondant à une instruction d'un programme d'application, table qui associe l'adresse d'un élément de programme rédigé en langage machine à chaque instruction possible d'un programme d'application. I1.- Ensemble de moyens d'exploitation pour la mise en oeuvre d'une structure informatique d'un support de données portable pour l'exécution interprétante d'un programme d'application composé d'une suite d'instructions, l'instruction en cours de traitement étant indiquée par un indicateur d'instruction, avec une première unité de programme (60) qui rend une unité de processeur exécutante (10) de la structure informatique capable de trouver chaque instruction (42, 44) à traiter ensuite, du programme d'application, avec une deuxième unité de programme (50) qui comporte des éléments de programme (500, 520) représentés en langage machine et immédiatement exécutables par l'unité de processeur (10), éléments de programme qui correspondent chacun à une instruction (42, 44) fixée à l'avance dans un programme d'application et dont ils produisent l'exécution, ainsi qu'avec une troisième unité de programme (50) qui comporte au moins un élément de programme logique (600, 610, 620) rédigé en langage machine, qui indique une amplitude de pas de réglage pour le réglage de l'indicateur d'instruction (22) et qui contraint la 1I145FR doc - 21 ri201.11/13 12 2805058 structure informatique à transmettre la suite de l'exécution du programme à la première unité de programme (60). 12.- Ensemble de moyens d'exploitation selon la revendication 11, caractérisé en ce que les éléments de programme (500, 520) sont isolés de la deuxième unité de programme (50) chacun par une séquence d'ordre (540, 550) qui contraint l'unité de processeur exécutante (10) à exécuter un élément de programme logique (600, 610, 620). 13.- Ensemble de moyens d'exploitation selon la revendication 11 ou 12, caractérisé en ce que la première unité de programme (60) de l'unité de processeur (10) prépare une information qui indique dans la deuxième unité de mémoire (50) l'élément de programme (520) à traiter ensuite. 14.- Ensemble de moyens d'exploitation selon l'une quelconque des revendica- tions 11 à 13, caractérisé en ce que la première unité de programme (60) contraint l'unité de processeur (10) à déterminer un indicateur (22), de manière qu'il indique dans le programme d'application la prochaine instruction à traiter. 15.- Ensemble de moyens d'exploitation selon la revendication 14, caractérisé en ce que la première unité de programme (60) exploite l'instruction (42, 44) à traiter et désignée par l'indicateur (22) pour déterminer l'information sur l'élément de programme (500, 520) à exécuter à la suite. 16.- Support de données portable avec une structure informatique pour l'exécution d'un programme d'application, caractérisé en ce que la structure infor- matique est réalisée selon la revendication 1. 17.- Utilisation du procédé selon la revendication 5, pour l'exploitation d'un support de données portable présentant une structure informatique pour l'exécution d'un programme d'application. 18.- Utilisation du produit informatique selon la revendication 11, pour un dispositif de structure informatique d'un support de données portable apte à l'exécution d'un programme d'application. 18145FR.doc- 21 mni 2001 - 12/13