IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Assembleur Discussion :

[Débutant] Script : compréhension


Sujet :

Assembleur

  1. #1
    Membre éclairé Avatar de Tuxico
    Profil pro
    Étudiant
    Inscrit en
    Août 2003
    Messages
    662
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2003
    Messages : 662
    Points : 770
    Points
    770
    Par défaut [Débutant] Script : compréhension
    bonjour à tous,
    alors voila je commence à m'intérésser à l'assembleur mais je me retrouve devant un code que je ne comprends pas trop :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    push ebp                                                 ; cela mets ebp sur la pile ça ça va
    mov ebp,esp                                           ; cela mets le contenu de ebp dans esp
    add esp,-8                                               ; cela enlève 8 à esp
     
    @1:
     
    mov dword ptr [ebp-4], 12                      ; je ne comprends pas trop, cela rejoute 12 sur 
                                                                    ; ebp                         
                                                                    ; entre les bits 0 et 4, et dword pk?
     
    mov dword ptr [ebp-8], 1                        ;idem mais entre 4 et 8ieme bits, on mets un?
     
    @2:
     
    mov eax,dword ptr [ebp-8]                     ;on déplace 1 dans eax?
    imul dword ptr [ebp-4]                             ; ???
    mov dword ptr [ebp-8],eax                     ; on remet eax dans ebp entre le 4eme et 8e bit?
     
    dec dword ptr [ebp-4]                             ; on décrémente de un
    cmp dword ptr [ebp-4], 0                        ; on compare avec 0
    jg short @2                                             ; si c est plus grand on fait quoi? un jump shot    
                                                                    ;vers @2?

    désolé si j'ai rien compris :s

    merci
    ★ Pascal/Java/C/xhtml,css/SQL/Mips
    ★ Linux/unix

  2. #2
    Membre habitué Avatar de Nico*3-3
    Inscrit en
    Octobre 2004
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 164
    Points : 145
    Points
    145
    Par défaut
    Salut,

    Alors il y a pleins de trucs : déjà, connais-tu la "pile" et les instructions push, pop etc. ?
    Il y a aussi le principe de l'adressage indirect que tu ne sembles pas connaître : en effet, regarde les instructions suivantes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    mov dword ptr [ebp-4], 12
    ;et
    mov dword ptr [ebp-8], 1
    Elles ne modifient en rien ebp !

    En gros elles modifient ce qui se trouve dans la mémoire à l'adresse ebp.
    Le dword signifie qu'il faut modifier un double-mot, sans ça le compilateur ne sais pas si c'est un octet, un mot ou un double-mot qu'il faut modifier...

    Seulement c'est un peu dur d'essayer de t'expliquer sans connaître exactement tes lacunes...
    Alors avant tout dit nous ce que tu sais faire et si tu connais les notions de pile et d'adressage indirect.

    Et si ce n'est pas le cas je te conseille un très bon tuto qui explique bien ces notions : http://benoit-m.developpez.com/assembleur/tutoriel/
    Tout a une fin, sauf l'infini...
    Projet SKAN : Développement commun d'OS

    Nico*3-3

  3. #3
    Membre éclairé Avatar de Tuxico
    Profil pro
    Étudiant
    Inscrit en
    Août 2003
    Messages
    662
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2003
    Messages : 662
    Points : 770
    Points
    770
    Par défaut
    okay merci euh je connaissais la notion de pile mais sans plus je lirai la faq à tête reposée
    ★ Pascal/Java/C/xhtml,css/SQL/Mips
    ★ Linux/unix

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Niveau Débutant] Script pour High Light
    Par Deallyra dans le forum IRC / mIRC
    Réponses: 21
    Dernier message: 29/08/2008, 17h28
  2. [Débutant] Script de communication inter-applet
    Par Rakken dans le forum Applets
    Réponses: 1
    Dernier message: 17/01/2007, 21h55
  3. [Débutant]Script Java de vote
    Par popsantiago dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 20/12/2006, 14h11
  4. [Tableaux] [débutant] scripts PHP non interprétés
    Par alexbigot dans le forum Langage
    Réponses: 5
    Dernier message: 06/12/2006, 15h03
  5. Réponses: 3
    Dernier message: 31/01/2006, 15h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo