begin process at 2012 05 25 04:25:58
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Assembleur

 > 

Système d'exploitation

 > 

Unix

 > 

GNU Assembleur et manipulation de structure.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

GNU Assembleur et manipulation de structure.

samedi 26 juin 2010 à 17:19:21 | GNU Assembleur et manipulation de structure.

000000

Bonjour,

J'ai un petit soucis en ce qui concerne la manipulation de structure. Je possède un pointeur vers une structure x dont je souhaite recupurer une variable. J'ai donc essayé de recuperer la valeur pointé par le pointeur dans lequel j'ajoute la taille en byte séparant le debut de la structure jusqu'a la variable voulue. Mais, sans résultat. J'ai un bout de code similaire:

Code :
	mov eax,ptr
	mov ebx,dword ptr[eax+size]


Si quelqu'un a une idée?
samedi 26 juin 2010 à 17:42:46 | Re : GNU Assembleur et manipulation de structure.

patatalo

Membre Club Administrateur CodeS-SourceS
salut,


je vais supposer que ton assembleur est nasm.

struct X
.x1 resd 1
.x2 resd 1
.x3 resb 1
.x4 resb 1
.x5 resw 1
endstruc

mov esi,monX
mov eax,[esi+X.x2]
mov dl,[esi+X.x4]
mov cx,[esi+X.x5]

@++
samedi 26 juin 2010 à 17:44:57 | Re : GNU Assembleur et manipulation de structure.

patatalo

Membre Club Administrateur CodeS-SourceS
re,

ce n'est pas struct mais struc.

@++
samedi 26 juin 2010 à 18:05:04 | Re : GNU Assembleur et manipulation de structure.

000000

J'utilise GNU Assembler et non Nasm, la différence est qu'aucune directive n'est disponible pour developper une structure.

samedi 26 juin 2010 à 22:14:54 | Re : GNU Assembleur et manipulation de structure.

patatalo

Membre Club Administrateur CodeS-SourceS
re,


le GNU Assembler n'est pas en AT&T ?


@++
dimanche 27 juin 2010 à 02:59:42 | Re : GNU Assembleur et manipulation de structure.

patatalo

Membre Club Administrateur CodeS-SourceS
tu as un how-to assembly avec le source Linux.
lundi 28 juin 2010 à 19:17:26 | Re : GNU Assembleur et manipulation de structure.

Guilou34

Salut.
Je crois me souvenir que le gnu-assembler ne connait pas le prefix ptr et que le type de reference est signalé en ajoutant la lettre b,w,l ou q à l'instruction.
Il faut donc ici :
movw ebx,[eax+size]
Je crois aussi que tout symbole qu'il ne connait pas est déclaré comme externe de telle sorte que l'erreur n'est signalée qu'au moment du "link".
amicalement
dimanche 4 juillet 2010 à 16:51:04 | Re : GNU Assembleur et manipulation de structure.

000000

La syntaxe intel est totalement implémenté depuis la version 2.10 de GAS. Finalement, j'ai réussi, je m'étais juste trompé dans la taille :x
Dites, par la même occasion, comment puis-je déclarer une sutructure ? en definissant un symbole? Le problème c'est que j'ai une fonction qui necessite un pointeur vers une structure, j'ai essayé tout betement de declarer tout les élements (dans l'ordre) de la strcuture dans la section data pis de mettre dans la stack l'adresse du premier élement. Mais encore une fois, le resultat n'est pas là :/

J'ai un code similaire:
[CODE]
[...]
.data
var1: .long 0
var2: .long 0
struct_elem1: .long 0 # Début de la declaration de la structure
struct_elem2: .long 0
[...]
push dword ptr [structu_elem1]
call ma_fonction
[/CODE]



lundi 5 juillet 2010 à 02:51:30 | Re : GNU Assembleur et manipulation de structure.

patatalo

Membre Club Administrateur CodeS-SourceS
salut,

dans ton exemple, tu push la valeur contenue dans l'adresse et non l'adresse elle-même.

@++


Cette discussion est classée dans : code, assembleur, structure, manipulation, gnu


Répondre à ce message

Sujets en rapport avec ce message

(Debutant en ASM) (MASM) pointeur sur une structure [ par Otaku ] Salut, voila mon pb, j'aimerai créer une fonction en asm qui reçoit un pointeur sur un élément de type structure, jusque-là pas de pbmais comment modi Euh... Help ? [ par MaxSoldier ] Coucou ! D'abord, je voulais dire que oui, c'était possible de passé du VB à l'assembleur. Non sans quelques (  pleins ) de difficultés. J'ai commencé manipulation des dates [ par mitch19 ] J'aimerai trouver le nombre de jours ou d'heure entre deux dates, l'api dit Convertir la structure SYSTEMTIME en une structure FILETIME.jusque la ça v assembleur FPU [ par spiky31 ] Bonjour Est ce que quelqu'un pourrait me dire comment insérer du code asm avec des instructions FPU dans un programme C avec des explications ou un e assembleur 8086: Affichage de table ASCII [ par redwings ] je cherche le code source d'un prog en asm : comment on peut afficher toute la table des caractere + le code ascii en héxadecimal exemple : Resultat s [nasm] ligne de commande [ par Kevin68 ] Bonjour :),Je suis débutant en assembleur, j'utilise nasm sous linux.J'ai cherché partout un exemple de code source qui me permettrait de récupérer le Quel est l'assembleur le plus rapide ? [ par epineurien ] Salut à tous !Une nouvelle question , suite à quelques infos trouvées sur le net ...J'utilise MASM32 , mais de nombreux sites dises qu'il produit un c structure de test an assembleur [ par 71julien ] BonjourJe voudrais savoir comment faire pour un test entre deux données sur un pic 16f84.Viola exactement ce que je veux:   si t1=t2 alors on passe si Dur dur de compiler le code des autres... [ par sirehanack ] Bonjour à toutes et à tous!Je suis tout nouveau ici et dans le monde de l'assembleur. En fait je suis aussi nouveau dans l'informatique, je n'ai pour


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,044 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales