|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Noah PerreauCollègien Troisième Inscription : mars 2011 Messages : 34 ![]() |
Bonjour tout le monde
J'ai écris une fonction qui permet d'écrire du texte en utilisant le même format que les chaines de caractères en C, et j'ai un petit problème Voilà, je voudrais récupérer le nom d'une variable dans une chaine, comme par exemple : "Coucou $nom", où "nom" est le nom d'une variable. Le but de la fonction serait de prendre de remplacer "$nom" par la variable correspondante, et je ne vois vraiment pas comment faire .Est-ce que quelqu'un pourrait m'aider ?
|
|
|
00
|
|
|
#2 | ||
|
Membre chevronné
![]() être humain Inscription : décembre 2007 Messages : 471 ![]() |
affichage direct de la chaine avec mise à jour de chaque $var
Code :
au boulot |
||
|
|
00
|
|
|
#3 | ||
|
Candidat au titre de Membre du Club
![]() Noah PerreauCollègien Troisième Inscription : mars 2011 Messages : 34 ![]() |
Merci, mais je ne comprends pas tout à fait
Pour l'instant, j'ai fait ça : Code asm :
Je n'ai pas encore optimisé le code Le programme saute à cette fonction si le caractère lu est "$". Sinon, la chaîne de caractères est structurée comme en C. Les caractères spéciaux affichables sont "\0", pour 0, \n, \t, et \$ pour indiquer qu'il ne s'agit pas d'une variable .Sinon, pour en revenir à la variable, il n'y aurait pas un moyen de créer un pointeur dans la chaîne et de placer la variable dans le segment .data ?
|
||
|
|
00
|
|
|
#4 |
|
Candidat au titre de Membre du Club
![]() Noah PerreauCollègien Troisième Inscription : mars 2011 Messages : 34 ![]() |
Ça sera surement plus simple comme ça et avec quelques explications
Cette fonction affiche une chaine que l'on place dans SI. Le format des chaines est ressemblant au C, on peut afficher des caractères spéciaux (voir plus haut). Le code est destiné à un fonctionnement en mode réel et sous aucune plateforme !
|
|
|
00
|
|
|
#5 | |||
|
Membre chevronné
![]() être humain Inscription : décembre 2007 Messages : 471 ![]() |
pour commencer, les compilateurs acceptent un caractère ascii en opérande. donc, au lieu d'avoir cmp al,41h, on a cmp al,'A', ce qui est beaucoup plus lisible.
idem pour $, /, etc. ensuite, pour ce qui est de la détection de variable, il faut passer par une liste de variables associées à des étiquettes, donc, un tableau de variables. chaque ligne est une variable le premier mot de chaque ligne pouvant être la valeur de notre variable le second mot pouvant être un pointeur vers la chaine du nom de la variable. la liste ressemblerait donc à ça: Code :
par exemple, si on à la chaine suivante: chaine db 'nous sommes le $day $mounth $year',0le resultat pourra donner Citation:
au pire, si j'ai le temps, je ferais un truc basique si tu as pas réussi de toi même. mais c'est assez simple, donc, je me fais pas de soucis pour toi. |
|||
|
|
00
|
|
|
#6 |
|
Candidat au titre de Membre du Club
![]() Noah PerreauCollègien Troisième Inscription : mars 2011 Messages : 34 ![]() |
Aaaaah, Ok...
Merci beaucoup !
|
|
|
00
|
Copyright © 2000-2013 - www.developpez.com