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 :

Quel tutoriel pour apprendre l'assembleur approprié ?


Sujet :

Assembleur

  1. #1
    Membre régulier Avatar de kidpaddle2
    Inscrit en
    Avril 2006
    Messages
    430
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 430
    Points : 95
    Points
    95
    Par défaut Quel tutoriel pour apprendre l'assembleur approprié ?
    Bonjour,

    Je compte, après maîtrise -façon de parler, presque personne ne peut s'en vanter- du C et du C++, apprendre l'assembleur. Cependant, comme vous le savez dans ce forum, ce terme est général pour plusieurs "langages" distincts.

    Bref, j'ai repéré sur ce site même plusieurs tutoriaux, dont un en particulier (celui-ci). A ce sujet, j'aurai quelques questions :

    • Le tutorial a l'air plutôt vieux, traitant du DOS et des architectures 16bits. Est-il toujours d'actualité, avec les architectures 32bits et 64bits ?
    • Justement, je dispose d'un AMD 64, et de plusieurs PC Intel. Y a-t-il vraiment énormément de différences entre les assembleurs de ces deux architectures (auquel cas j'aurai à choisir), ou y a-t-il moyen d'englober les 2 ?
    • Question qui peut paraître vexante sur ce forum, mais bon : est-t-il intéressant d'apprendre l'assembleur, étant donné que des modifications postérieures dans l'avenir de l'informatique rendrait les précédents obsolètes (le C, a contrario, est promis à un bel avenir malgré ses 35ans de service) ?

    Merci d'avance.
    Vive l'embarqué.

  2. #2
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 929
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 929
    Points : 59 395
    Points
    59 395
    Billets dans le blog
    2
    Par défaut
    Bonjour !

    Pour un passage en douceur du C/C++ vers l'Assembleur, je te conseillerais plutôt le tutoriel de Sébastien Le Ray :
    http://beuss.developpez.com/tutoriels/pcasm/

    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  3. #3
    Membre régulier Avatar de kidpaddle2
    Inscrit en
    Avril 2006
    Messages
    430
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 430
    Points : 95
    Points
    95
    Par défaut
    Merci pour le conseil

    Une idée pour mes autres questions ?
    Vive l'embarqué.

  4. #4
    Rédacteur
    Avatar de Neitsa
    Homme Profil pro
    Chercheur sécurité informatique
    Inscrit en
    Octobre 2003
    Messages
    1 041
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chercheur sécurité informatique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 041
    Points : 1 956
    Points
    1 956
    Par défaut
    Bonjour,

    Pour complèter le très bon document donné en lien par Alcatiz :

    Citation Envoyé par kidpaddle2
    Le tutorial a l'air plutôt vieux, traitant du DOS et des architectures 16bits. Est-il toujours d'actualité, avec les architectures 32bits et 64bits ?
    Les documents traitant du 16 bits sont inadéquats en ce qui concerne le 32 bits et le 64 bits, du simple fait que ces deux derniers sont pour le mode protégé qui diffère des autres modes d'opérations (sous les systèmes modernes en mode protégé, il n'y a plus d'interruptions, pas besoin de s'occuper des segments, des registres étendus, etc.). Toutefois les instructions restent les mêmes.
    Mais commencer par apprendre le 16 bits pour finalement viser et passer au 32 bits (ou 64 bits) mode protégé est, à mon sens, une perte de temps. [cela reste un avis personnel]

    Justement, je dispose d'un AMD 64, et de plusieurs PC Intel. Y a-t-il vraiment énormément de différences entre les assembleurs de ces deux architectures (auquel cas j'aurai à choisir), ou y a-t-il moyen d'englober les 2 ?
    Il y a très peu de différences entre les processeurs AMD et Intel concernant l'architecture x86 (attention, Intel ne fait pas que du x86). On peut dire que l'architecture x86 est quasiment unifiée, dans le sens ou ces différences d'implémentation concernent des points réellement mineurs et assez obscurs.

    Même la différence entre les implémentations x86 (donc 32 bits) et x86-64 est d'un point de vue pratique, plutôt faible : Dans les grandes lignes, on se contente d'utiliser des registres plus "gros", plus de registres, et une convention d'appel fixée.

    Question qui peut paraître vexante sur ce forum, mais bon : est-t-il intéressant d'apprendre l'assembleur, étant donné que des modifications postérieures dans l'avenir de l'informatique rendrait les précédents obsolètes (le C, a contrario, est promis à un bel avenir malgré ses 35ans de service) ?
    Il y a bien sur une "chance" que les processeurs x86 / x86-64 soient amenés à disparaître, toutefois, ça n'est pas pour aujourd'hui ! L'architecture x86 à tout de même 29 ans de service derrière elle (introduction du 8086 en 1978).

    Dans la "roadmap" d'Intel les processeurs x86 sont programmés à la production jusqu'en 2011 (la roadmap ne va pas plus loin). Ni Intel, ni AMD n'ont fait la moindre annonce concernant une nouvelle architecture CPU mainstream.

    Le prochain système d'exploitation de Microsoft (nom de code "Vienna") tournera sous x86-64 et les dérivés Unix tourneront encore pour un moment sous x86.

    On a donc, en gros, une architecture réellement dominante jusqu'à 2015 environ et aucune visibilité après...

    Ce serait donc tout de même dommage de passer à coté de l'assembleur qui a tout de même de multiples avantages. Ne serait-ce que d'apporter une bonne connaissance de sa machine et la possibilité d'optimiser des routines.
    Donc au final, oui cela reste intéressant quoiqu'il en soit.

  5. #5
    Membre régulier Avatar de kidpaddle2
    Inscrit en
    Avril 2006
    Messages
    430
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 430
    Points : 95
    Points
    95
    Par défaut
    Merci Neitsa, en voilà un exposé objectif et constructif !

    Je suis donc convaincu ^^

    [Sujet résolu]
    Vive l'embarqué.

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

Discussions similaires

  1. Quel livre pour apprendre le langage Assembleur ?
    Par argon dans le forum Assembleur
    Réponses: 1
    Dernier message: 11/06/2008, 18h46
  2. Quel Livre pour apprendre C++ ?
    Par yoann21 dans le forum Contribuez
    Réponses: 11
    Dernier message: 04/09/2007, 18h46
  3. Tutoriel pour apprendre l'Assembleur
    Par Bad_Day dans le forum Assembleur
    Réponses: 4
    Dernier message: 11/02/2007, 17h34
  4. Tutoriels pour apprendre a créer une application eclipse
    Par NiHiL dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 21/12/2006, 23h53
  5. Réponses: 2
    Dernier message: 26/09/2006, 10h18

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