Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : taille d'un tableau [ Archives / Forum general 80xxx ] (krater)

mardi 3 juin 2003 à 10:31:08 | taille d'un tableau

krater

Bonjour,

je voudrait utiliser un tableau de ce style :

exemple db 0,8,0,0,0,8,0,8,0,0,0,0,0,8,8,8,8,12,8,8,8,8,0,0,0,0,0,8,0,8,0,0,0,8,0

seulement avec plus d'élément ml me met un message d'erreur : statement too complexe
il ne veu pas comprendre un tableau de plus de 48 élément alors que j'en voudrais au moins 64 voir bien plus

savez vous comment faire pour reésoudre mon probleme

mardi 3 juin 2003 à 14:45:19 | Re : taille d'un tableau

TangiX

suffit de mettre plusieurs fois db :

example db 0,0,8,8,0,0,0,0
db 0,8,8,0,0,0,0,0
etc ...

non seulement tu met plus de valeur mais en plus
c beaucoup plus lisible (tu peux organiser en 8*8 par ex)

TangiX


-------------------------------
Réponse au message :
-------------------------------

> Bonjour,
>
> je voudrait utiliser un tableau de ce style :
>
> exemple db 0,8,0,0,0,8,0,8,0,0,0,0,0,8,8,8,8,12,8,8,8,8,0,0,0,0,0,8,0,8,0,0,0,8,0
>
> seulement avec plus d'élément ml me met un message d'erreur : statement too complexe
> il ne veu pas comprendre un tableau de plus de 48 élément alors que j'en voudrais au moins 64 voir bien plus
>
> savez vous comment faire pour reésoudre mon probleme
>

mardi 3 juin 2003 à 15:43:41 | Re : taille d'un tableau

krater

J'ai fait comme tu as dit et donc ecrit de cette façon :

exemple db 0,0,0,5,0,0,0,
db 0,0,0,5,0,0,0,
db 0,0,0,5,0,0,0,
db 0,0,5,5,5,0,0,
db 0,5,5,15,5,5,0,
db 0,5,0,0,0,5,0,
db 5,5,0,0,0,5,5,
db 0,5,0,0,0,5,0,

mais lorsque je compile, cela donne ceci :
statement too complex

je précis eque je travaille avec masm au cas ou ca changerai quelque chose

mardi 3 juin 2003 à 16:18:08 | Re : taille d'un tableau

TotalIllusion

Essaie de declarer ton tableau avant de l'initialiser avec tes valeur:

Tableau BYTE 64 DUP (?)

et si tu veut un tableau en 2 dimension alors tu fais

Tableau BYTE 8 DUP(8 DUP(?))
Sa te donnerais un tableau de 8x8 donc 64

Mon exemple est pour un tableaux de BYTE mais tu na qua mettre INTEGER si tu veut des nombre dedans.

Jai compiler avec les 2 facon en utilisant MASM et tout fonctionne.
Bonne continuation.
By TotalIllusion


-------------------------------
Réponse au message :
-------------------------------

> J'ai fait comme tu as dit et donc ecrit de cette façon :
>
> exemple db 0,0,0,5,0,0,0,
> db 0,0,0,5,0,0,0,
> db 0,0,0,5,0,0,0,
> db 0,0,5,5,5,0,0,
> db 0,5,5,15,5,5,0,
> db 0,5,0,0,0,5,0,
> db 5,5,0,0,0,5,5,
> db 0,5,0,0,0,5,0,
>
> mais lorsque je compile, cela donne ceci :
> statement too complex
>
> je précis eque je travaille avec masm au cas ou ca changerai quelque chose

mardi 3 juin 2003 à 16:29:25 | Re : taille d'un tableau

TotalIllusion

Dans ton tableau que tu avais declarer tout fonctionne, cest juste la maniere que tu la declarer qui fais que ca ne fonctionnais pas car tu avais mit des virgules a la fin de tes ligne alors qu'il ne devrais pas y en avoir.Essaie ceci si tu veut et sa fonctionne je les tester aussi

exemple db 0,0,0,5,0,0,0,0
db 0,0,0,5,0,0,0,0
db 0,0,0,5,0,0,0,0
db 0,0,5,5,5,0,0,0
db 0,5,5,5,5,5,0,0
db 0,5,0,0,0,5,0,0
db 5,5,0,0,0,5,5,0
db 0,5,0,0,0,5,0,0

Je te conseille d'utiliser un tableau en 2 dimension (decrit dans mon message precedent) car sa va etre plus facile a gerer, a mon avis biensure.

Bonne continuation

By TotalIllusion


-------------------------------
Réponse au message :
-------------------------------

> Essaie de declarer ton tableau avant de l'initialiser avec tes valeur:
>
> Tableau BYTE 64 DUP (?)
>
> et si tu veut un tableau en 2 dimension alors tu fais
>
> Tableau BYTE 8 DUP(8 DUP(?))
> Sa te donnerais un tableau de 8x8 donc 64
>
> Mon exemple est pour un tableaux de BYTE mais tu na qua mettre INTEGER si tu veut des nombre dedans.
>
> Jai compiler avec les 2 facon en utilisant MASM et tout fonctionne.
> Bonne continuation.
> By TotalIllusion
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > J'ai fait comme tu as dit et donc ecrit de cette façon :
> >
> > exemple db 0,0,0,5,0,0,0,
> > db 0,0,0,5,0,0,0,
> > db 0,0,0,5,0,0,0,
> > db 0,0,5,5,5,0,0,
> > db 0,5,5,15,5,5,0,
> > db 0,5,0,0,0,5,0,
> > db 5,5,0,0,0,5,5,
> > db 0,5,0,0,0,5,0,
> >
> > mais lorsque je compile, cela donne ceci :
> > statement too complex
> >
> > je précis eque je travaille avec masm au cas ou ca changerai quelque chose
>

mardi 3 juin 2003 à 16:52:58 | Re : taille d'un tableau

krater

Je comprend ce que tu me dis mais tu pourrais expliciter ce dont tu parle avec INTEGER
deplus je croyais que dup remplisser le tableau avec un nombre défini or je voudrais entrer le tableau comme dans l'exemple, c'est en fait un tableau de dessin



-------------------------------
Réponse au message :
-------------------------------

> Essaie de declarer ton tableau avant de l'initialiser avec tes valeur:
>
> Tableau BYTE 64 DUP (?)
>
> et si tu veut un tableau en 2 dimension alors tu fais
>
> Tableau BYTE 8 DUP(8 DUP(?))
> Sa te donnerais un tableau de 8x8 donc 64
>
> Mon exemple est pour un tableaux de BYTE mais tu na qua mettre INTEGER si tu veut des nombre dedans.
>
> Jai compiler avec les 2 facon en utilisant MASM et tout fonctionne.
> Bonne continuation.
> By TotalIllusion
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > J'ai fait comme tu as dit et donc ecrit de cette façon :
> >
> > exemple db 0,0,0,5,0,0,0,
> > db 0,0,0,5,0,0,0,
> > db 0,0,0,5,0,0,0,
> > db 0,0,5,5,5,0,0,
> > db 0,5,5,15,5,5,0,
> > db 0,5,0,0,0,5,0,
> > db 5,5,0,0,0,5,5,
> > db 0,5,0,0,0,5,0,
> >
> > mais lorsque je compile, cela donne ceci :
> > statement too complex
> >
> > je précis eque je travaille avec masm au cas ou ca changerai quelque chose
>

mercredi 4 juin 2003 à 00:41:21 | Re : taille d'un tableau

TotalIllusion

INTEGER est definie dans masm , tu a dit que tu utilisais MASM et jai vue que tu entrais des integer donc jai penser que cest cela que tu voulais et pour le DUP cest pas pour rien que jai mit entre parentese (?) sa fais que la memoire est initialiser mes non definie.Exemple si je veut un tableau de 16 qui contient comme valeur definie 8 jaurais declarer mon array comme suit:
Tableau BYTE 16 (8)
et la oui tu aurrais des valeur predefini mais que tu peut toujour changer par la suite car ce nest pas des constance mais bien des valeur .
Bonne continuation
By TotalIllusion


-------------------------------
Réponse au message :
-------------------------------

> Je comprend ce que tu me dis mais tu pourrais expliciter ce dont tu parle avec INTEGER
> deplus je croyais que dup remplisser le tableau avec un nombre défini or je voudrais entrer le tableau comme dans l'exemple, c'est en fait un tableau de dessin
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Essaie de declarer ton tableau avant de l'initialiser avec tes valeur:
> >
> > Tableau BYTE 64 DUP (?)
> >
> > et si tu veut un tableau en 2 dimension alors tu fais
> >
> > Tableau BYTE 8 DUP(8 DUP(?))
> > Sa te donnerais un tableau de 8x8 donc 64
> >
> > Mon exemple est pour un tableaux de BYTE mais tu na qua mettre INTEGER si tu veut des nombre dedans.
> >
> > Jai compiler avec les 2 facon en utilisant MASM et tout fonctionne.
> > Bonne continuation.
> > By TotalIllusion
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > J'ai fait comme tu as dit et donc ecrit de cette façon :
> > >
> > > exemple db 0,0,0,5,0,0,0,
> > > db 0,0,0,5,0,0,0,
> > > db 0,0,0,5,0,0,0,
> > > db 0,0,5,5,5,0,0,
> > > db 0,5,5,15,5,5,0,
> > > db 0,5,0,0,0,5,0,
> > > db 5,5,0,0,0,5,5,
> > > db 0,5,0,0,0,5,0,
> > >
> > > mais lorsque je compile, cela donne ceci :
> > > statement too complex
> > >
> > > je précis eque je travaille avec masm au cas ou ca changerai quelque chose
> >
>

mercredi 4 juin 2003 à 00:44:31 | Re : taille d'un tableau

TotalIllusion

Petite erreur dans mon code,
Tableau BYTE 16 (8)
remplace sa par :
Tableau BYTE 16 dup (8)
desoler
By TotalIllusion


-------------------------------
Réponse au message :
-------------------------------

> INTEGER est definie dans masm , tu a dit que tu utilisais MASM et jai vue que tu entrais des integer donc jai penser que cest cela que tu voulais et pour le DUP cest pas pour rien que jai mit entre parentese (?) sa fais que la memoire est initialiser mes non definie.Exemple si je veut un tableau de 16 qui contient comme valeur definie 8 jaurais declarer mon array comme suit:
> Tableau BYTE 16 (8)
> et la oui tu aurrais des valeur predefini mais que tu peut toujour changer par la suite car ce nest pas des constance mais bien des valeur .
> Bonne continuation
> By TotalIllusion
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Je comprend ce que tu me dis mais tu pourrais expliciter ce dont tu parle avec INTEGER
> > deplus je croyais que dup remplisser le tableau avec un nombre défini or je voudrais entrer le tableau comme dans l'exemple, c'est en fait un tableau de dessin
> >
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Essaie de declarer ton tableau avant de l'initialiser avec tes valeur:
> > >
> > > Tableau BYTE 64 DUP (?)
> > >
> > > et si tu veut un tableau en 2 dimension alors tu fais
> > >
> > > Tableau BYTE 8 DUP(8 DUP(?))
> > > Sa te donnerais un tableau de 8x8 donc 64
> > >
> > > Mon exemple est pour un tableaux de BYTE mais tu na qua mettre INTEGER si tu veut des nombre dedans.
> > >
> > > Jai compiler avec les 2 facon en utilisant MASM et tout fonctionne.
> > > Bonne continuation.
> > > By TotalIllusion
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > J'ai fait comme tu as dit et donc ecrit de cette façon :
> > > >
> > > > exemple db 0,0,0,5,0,0,0,
> > > > db 0,0,0,5,0,0,0,
> > > > db 0,0,0,5,0,0,0,
> > > > db 0,0,5,5,5,0,0,
> > > > db 0,5,5,15,5,5,0,
> > > > db 0,5,0,0,0,5,0,
> > > > db 5,5,0,0,0,5,5,
> > > > db 0,5,0,0,0,5,0,
> > > >
> > > > mais lorsque je compile, cela donne ceci :
> > > > statement too complex
> > > >
> > > > je précis eque je travaille avec masm au cas ou ca changerai quelque chose
> > >
> >
>

mercredi 4 juin 2003 à 09:08:48 | Re : taille d'un tableau

krater

en effet ce tableau est bien compilé, mais concernant l'adressage il est différent car le résultat n'est pas celui attendu

j'utilise un adressage itératif ou la ligne suivante est enfait le total d'element de la ligne (x)*nombre de ligne et le nombre d'element de la ligne en question(y)
soit x*(nb ligne)+y



-------------------------------
Réponse au message :
-------------------------------

> Dans ton tableau que tu avais declarer tout fonctionne, cest juste la maniere que tu la declarer qui fais que ca ne fonctionnais pas car tu avais mit des virgules a la fin de tes ligne alors qu'il ne devrais pas y en avoir.Essaie ceci si tu veut et sa fonctionne je les tester aussi
>
> exemple db 0,0,0,5,0,0,0,0
> db 0,0,0,5,0,0,0,0
> db 0,0,0,5,0,0,0,0
> db 0,0,5,5,5,0,0,0
> db 0,5,5,5,5,5,0,0
> db 0,5,0,0,0,5,0,0
> db 5,5,0,0,0,5,5,0
> db 0,5,0,0,0,5,0,0
>
> Je te conseille d'utiliser un tableau en 2 dimension (decrit dans mon message precedent) car sa va etre plus facile a gerer, a mon avis biensure.
>
> Bonne continuation
>
> By TotalIllusion
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Essaie de declarer ton tableau avant de l'initialiser avec tes valeur:
> >
> > Tableau BYTE 64 DUP (?)
> >
> > et si tu veut un tableau en 2 dimension alors tu fais
> >
> > Tableau BYTE 8 DUP(8 DUP(?))
> > Sa te donnerais un tableau de 8x8 donc 64
> >
> > Mon exemple est pour un tableaux de BYTE mais tu na qua mettre INTEGER si tu veut des nombre dedans.
> >
> > Jai compiler avec les 2 facon en utilisant MASM et tout fonctionne.
> > Bonne continuation.
> > By TotalIllusion
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > J'ai fait comme tu as dit et donc ecrit de cette façon :
> > >
> > > exemple db 0,0,0,5,0,0,0,
> > > db 0,0,0,5,0,0,0,
> > > db 0,0,0,5,0,0,0,
> > > db 0,0,5,5,5,0,0,
> > > db 0,5,5,15,5,5,0,
> > > db 0,5,0,0,0,5,0,
> > > db 5,5,0,0,0,5,5,
> > > db 0,5,0,0,0,5,0,
> > >
> > > mais lorsque je compile, cela donne ceci :
> > > statement too complex
> > >
> > > je précis eque je travaille avec masm au cas ou ca changerai quelque chose
> >
>

mercredi 4 juin 2003 à 16:03:31 | Re : taille d'un tableau

TotalIllusion

x*(nb ligne)+y ??????
Ton tableau que tu avais declarer ne permet que de faire un adressage lineaire du genre:

Adresse = Base + Index * Element_Size

MOV BX,TON_INDEX
ADD BX,BX
MOV AX,ARRAY[BX]

Pour des coordonner cartesien voici le calcul a faire, cest pour 2 dimension donc X et Y
Address = Base_Address + (rowindex * col_size + colindex) * Element_Size

En fais je ne sais pas si j'ai repondu a ta question donc si ce nest pas le cas fais le moi savoir car ce netais pas claire a mes yeux.
Bonne continuation

By TotalIllusion


-------------------------------
Réponse au message :
-------------------------------

> en effet ce tableau est bien compilé, mais concernant l'adressage il est différent car le résultat n'est pas celui attendu
>
> j'utilise un adressage itératif ou la ligne suivante est enfait le total d'element de la ligne (x)*nombre de ligne et le nombre d'element de la ligne en question(y)
> soit x*(nb ligne)+y
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Dans ton tableau que tu avais declarer tout fonctionne, cest juste la maniere que tu la declarer qui fais que ca ne fonctionnais pas car tu avais mit des virgules a la fin de tes ligne alors qu'il ne devrais pas y en avoir.Essaie ceci si tu veut et sa fonctionne je les tester aussi
> >
> > exemple db 0,0,0,5,0,0,0,0
> > db 0,0,0,5,0,0,0,0
> > db 0,0,0,5,0,0,0,0
> > db 0,0,5,5,5,0,0,0
> > db 0,5,5,5,5,5,0,0
> > db 0,5,0,0,0,5,0,0
> > db 5,5,0,0,0,5,5,0
> > db 0,5,0,0,0,5,0,0
> >
> > Je te conseille d'utiliser un tableau en 2 dimension (decrit dans mon message precedent) car sa va etre plus facile a gerer, a mon avis biensure.
> >
> > Bonne continuation
> >
> > By TotalIllusion
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Essaie de declarer ton tableau avant de l'initialiser avec tes valeur:
> > >
> > > Tableau BYTE 64 DUP (?)
> > >
> > > et si tu veut un tableau en 2 dimension alors tu fais
> > >
> > > Tableau BYTE 8 DUP(8 DUP(?))
> > > Sa te donnerais un tableau de 8x8 donc 64
> > >
> > > Mon exemple est pour un tableaux de BYTE mais tu na qua mettre INTEGER si tu veut des nombre dedans.
> > >
> > > Jai compiler avec les 2 facon en utilisant MASM et tout fonctionne.
> > > Bonne continuation.
> > > By TotalIllusion
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > J'ai fait comme tu as dit et donc ecrit de cette façon :
> > > >
> > > > exemple db 0,0,0,5,0,0,0,
> > > > db 0,0,0,5,0,0,0,
> > > > db 0,0,0,5,0,0,0,
> > > > db 0,0,5,5,5,0,0,
> > > > db 0,5,5,15,5,5,0,
> > > > db 0,5,0,0,0,5,0,
> > > > db 5,5,0,0,0,5,5,
> > > > db 0,5,0,0,0,5,0,
> > > >
> > > > mais lorsque je compile, cela donne ceci :
> > > > statement too complex
> > > >
> > > > je précis eque je travaille avec masm au cas ou ca changerai quelque chose
> > >
> >
>



Cette discussion est classé dans : élément, taille, tableau


Répondre à ce message

Sujets en rapport avec ce message

organigramme algoritme avec les tableaux -aidez moi - [ par admin2net ] Bonjour jecherche des exercices sur l'algorithme en organigramme pouvez vous me donner unlien ou je trouve des exercices sur les tableaux résolut en o tableau avec 8086!help me [ par ASBYoucef ] bonsoir!j'ai fait un programme qui saisie un tableau,puis il cherche le maximum,mais le problème c'est que il donne une résulata fausse,il donne la de pour créer 3 algorithmes [ par vinoth150 ] bonjour j'ai besoin d'aide pour créer 3 alogorithme que j'ai essayé de les faire mé je n'ai pas reussi donc j'espere que vous pourrriez m'aider. voila pour créer 3 algorithmes [ par vinoth150 ] bonjour j'ai besoin d'aide pour créer 3 alogorithme que j'ai essayé de les faire mé je n'ai pas reussi donc j'espere que vous pourrriez m'aider. voila remplissage d'un tableau [ par rojbeni ] salut tous,comment remplir un tableau de longueur(tab dw 16 dup(?)) et comment on fait l'incrementationpour chaque valeur saisie(adressage en utilisan résoudre un exercice en assembleur [ par imenal ] J'ai pas pu résoudre cet exercice en assembleur.Est ce que vous pouvez m'aider?EnoncéEcrire un programme en assembleur(MASM) qui réalise les opération creation d'un tableau [ par jess87 ] bonsoir les amis j'ai besoin d'aide comment saisir une suite de nombre à stocker dans un tableau.le nombre maximum de nombre 16 on peut avoir moin la traitement d'un tableau de 16 mots [ par Midou87 ] Comment peut-on remplir un tableau de 16 mots non identiques ?Merci d'avance. encore du tron et du graphisme [ par krater ] me revoila pour une question de TRON( et oui j'ai un ambitieux projet)je sais que pour afficher point par point un dessin, je peut mettre dans un tabl mode 13h [ par krater ] RebonjourEnfait je voudrait remplacer une parti de l'ecran par un dessin fixée a l'avanceMon ecran etant un tableau[0;320*200] si je ne me trompe pas


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,390 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.