RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Srv: irc.moteurprog.com
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 Ca marche comment un compilateur ?

Forum : ASSEMBLEUR
Sous Catégorie : Aucune
Type du sujet : Sujet Normale
FAQ : FAQ ASSEMBLEUR

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET NON RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


PAGES : [1] [2] [3] [4]

POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM ASSEMBLEUR

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
Bool
Nouveau membre
Inscrit : 15/02/2006
Messages : 18
Message
#88402
Posté le 16/02/06 à 19:50
Coucou,

Juste pour info comme ca et grosso modo...

Merci

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

remi
Membre MP
Inscrit : 27/09/2004
Messages : 203
Message
#88417
Posté le 16/02/06 à 21:26
Tu peux jeter un coup d'oeil dans le post dé-assemblage... pour le côté obscure Smiley

Grosso modo... ça ne marche pas... ça essaie de compiler (et ce n'est pas forcément le meilleur endroit pour poser la question -> un assembleur n'est pas un compilateur...).

La question est très vaste.. voyez. Pas moyen de préciser ce que tu veux savoir ?

Le plus simple (pour les réponses génériques) c'est d'aller jeter un clic du côté de http://fr.wikipedia.org/wiki/Portail:Informatique par exemple

@+rémi
__________________________
www.rosasm.org/
www.quanta-it.com/easbell/RosAsmForum

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Bool
Nouveau membre
Inscrit : 15/02/2006
Messages : 18
Message
#88420
Posté le 16/02/06 à 21:53
Effectivement, ma question n'est pas clair du tout !

Ce que j'aurais voulu savoir c'est comment un compilateur analyse le code source avant de le compiler

Par exemple on a le code asm suivant à traduire en hexa :

mov eax,1
add eax, 1
mov ebx,eax

D'apres moi et je me trompe certainement
Je dirais que le compilateur va d'abord analyser le premier Mot (Mov) du fichier, il va cherchez la valeur hexa de mov dans ca base de donnée, il va donc stocker cette premiere valeur, va lui attribuer une adresse fictive... Il va ensuite analyser ce qu'il y a apres le mov, etc... etc...
Je me trompe completement ou il y a du vrais la dedans ?

Mes expliactions ne sont pas clair, désolé !!!

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

remi
Membre MP
Inscrit : 27/09/2004
Messages : 203
Message
#88421
Posté le 16/02/06 à 22:02
Donc,

Au risque de me répéter : Un compilateur n'est pas un assembleur... "Petite" confusion car les termes ne sont pas interchangeables Smiley

Il me semble que tu parles d'assemblage là...

- L'hexa n'à rien à faire là : Ce n'est qu'une représentation, un changement de base. Le CPU "voit" toujours la même chose.

- Pour le reste tu n'es pas loin, enfin, dans le cas d'un assembleur qui ne fait pas de substitution de code dans ton dos (MASM par exemple...).

Regarde dans RosAsm: Menu Tools -> Encoding

Il "marche" dans les deux sens et te permet de faire tous les tests possibles...

@+rémi

PS: Autrement, regardes le "petit" source livré avec RosAsm (RosAsm justement Smiley )
__________________________
www.rosasm.org/
www.quanta-it.com/easbell/RosAsmForum

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Bool
Nouveau membre
Inscrit : 15/02/2006
Messages : 18
Message
#88424
Posté le 16/02/06 à 22:26
Je suis d'accord avec toi concernant assembleur/compilateur...

Par contre pour l'hexa, tu dit que ca n'a rien à voir, c'est exact oui et non
Mov ne veut rien dire, c'est juste une representation on va dire humaine de 08Bh
Donc si je fait un petit assembleur qui ne connait que 1instructions, je serais obligé d'entrez dans ma base de donnée que MOV=08Bh
Quand mon assembleur lira le fichier, il analysera le premier mot (Mov) et le traduira par la correspondance(08Bh)
Je suis preneur de toutes tes infos et conseil

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

remi
Membre MP
Inscrit : 27/09/2004
Messages : 203
Message
#88443
Posté le 17/02/06 à 09:56
Tu as tout à fait raison pour le "dictionnaire".

Mais pour le CPU bin, hex, oct, dec.... ne sont rien. Ce sont des "repésentations" qui ont chacune leurs intérêts : La base dix, parce que nous avons dix doigts etc.

@+rémi

Tu as essayé avec l'outil de RosAsm ?
__________________________
www.rosasm.org/
www.quanta-it.com/easbell/RosAsmForum

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Betov
Membre régulier
Inscrit : 30/03/2005
Messages : 86
Message
#88458
Posté le 17/02/06 à 11:53
Il me semble que, en fait, Bool demande comment les _Encodeurs_ fonctionnent. C'est déjà plus simple, que la même question au sujet des Assembleurs et des autres Compilateurs...

... Mais, en gros, Bool, la réponse ferait, dans les 1.500 Pages..., ne serait ce que parce qu'il il y a plusieurs types d'Encodeurs... qui "fonctionnent" différemment. Par exemple, un premier point important, est de savoir si l'Encodeur est basé sur Table ou sur Code ("Table Driven Encoder" vs "Code Driven Encoder"), et jusqu'à quel point.

Tu peux voir un exemple de chaque, en Open Source, en comparant les Sources de FASM et de RosAsm.

Tu peux aussi voir un exemple de cas mixte, avec le Désassembleur de RosAsm (Ce n'est rien d'autre que l'inverse d'un Encodeur, mais les logiques sont les mêmes...), qui est "Table-Driven", pour les branchemetns du Décodeur, mais où toute la suite des opérations est "Code-Driven", c'est-à-dire, sans rédérences à une Table, entièrement construit sur des execution de comparaisons et de branchements de _Code_.

Ensuite, les avantages et inconvénients de chaque solution, - plus les plans intermédiaires -, ça sort vraiment des possibilités d'une discussions sur un Forum: Trop lourd... :))))

Même un détail très simple, comme celui que tu suspecte, plus haut, en parlant de l'ordre dans lequel l'Encodeur fait son boulot, serait un long chapître dans un bouquin. Par exemple, "non", RosAsm n'analyse pas les paramètres des Instructions après l'analyse des Mnémoniques: Il le fait avant. Oui, FASM le fait après... Etc... quand à expliquer... non merci... :))))


Betov.

< http://rosasm.org >

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

remi
Membre MP
Inscrit : 27/09/2004
Messages : 203
Message
#88459
Posté le 17/02/06 à 12:04
Je suis sûr que notre ami (et quelques autres Smiley) aimeraient avoir au moins une explication succinte des :

- "Table Driven Encoder"

- "Code Driven Encoder"

Les principes de bases mis en oeuvre.

@+rémi
__________________________
www.rosasm.org/
www.quanta-it.com/easbell/RosAsmForum

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Betov
Membre régulier
Inscrit : 30/03/2005
Messages : 86
Message
#88469
Posté le 17/02/06 à 13:41
Ben... j'espère pour lui qu'il sait, au moins, ce que c'est qu'une Table, et ce que c'est qu'un bout de Code...

:))))

A partir de là, un Encoder "Table Driven", c'est un Encodeur basé sur des Tables, qui peuvent être des Tables de CheckSums, des Tables de Chaînes, des Tables d'Octets, etc... que l'Encodeur utilise pour identifier les divers composants,.. avant de se brancher sur le(s) traitement(s) approprié(s)...

... alors qu'un Encoder "Code Driven" prend, par exemple, l'instruction "MOV", lit "M" // saute au cas "M" // lit "O" // saute au cas "O" // lit "M" // saute au cas "M" // lit 'Separateur" // Analyse (ou lit les résultat des analyses) les différent Paramètres, et se branche sur le traitement approprié...

On ne peut pas expliquer des choses pareilles dans le détail, ne serait-ce que parce que, justement, il y a trop de... "détails".

:))

C'est pareil pour les avantages et inconvenients:

En théorie, les Encodeurs "Code-Driven" sont plus rapides, et plus faciles côté maintenance, mais... extrèment chiant à écrire. Mais bon, encore une fois, ce n'est pas vraiment un bon sujet de discussion. Juste le genre de sujet ideal pour les clowns qui "écrivent des livres" sans savoir de quoi ils parlent, vu que ceux qui font le boulot, et ceux qui "écrivent des livres"... c'est pas les mêmes!!!...

:)))))

Betov.

< http://rosasm.org >

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

remi
Membre MP
Inscrit : 27/09/2004
Messages : 203
Message
#88470
Posté le 17/02/06 à 13:45
Tu penses à doc Joke-Kill et mister Hyde ?

@+rémi

voili voilo c'est co-rigé
__________________________
www.rosasm.org/
www.quanta-it.com/easbell/RosAsmForum

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 
POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

PREMIERE PAGE

PAGE PRECEDENTE Page précédente

Page suivante

PAGE SUIVANTE DERNIERE PAGE

FORUM ASSEMBLEUR



    PAGES : [1] [2] [3] [4]



.: Site Web développé par Yann Pingot et l'équipe MPWG avec www.evolvia-web.com :.