Partage
  • Partager sur Facebook
  • Partager sur Twitter

NASM : commencer a coder en ASM

    12 novembre 2019 à 18:40:37

    bonjour,

    j'ai install NASM mais pour le moment, je n'ai qu'une console, je ne pense pas que ça vienne du logiciel, mais des paramètres de celui-ci...

    si c'est le cas comment j'y accède depuis la console, si non que pensez vous que ça soit?

    • Partager sur Facebook
    • Partager sur Twitter
      16 novembre 2019 à 16:39:56

      Bonjour.

      Il me semble que nasm n'est qu'un compilateur et donc il est tout à fait normal qu'il ne soit lancé que depuis une console !!

      • Partager sur Facebook
      • Partager sur Twitter
        17 novembre 2019 à 15:43:54

        bonjour,

        ah...c'est déjà ça, mais que faut-il que fasse? en fait, je ne trouve que (et difficilement) comment programmer dans ce langage mais pas quoi installer, comment, avec quoi.Toute cette première étape n'ai jamais vraiment expliquée...

        • Partager sur Facebook
        • Partager sur Twitter
          17 novembre 2019 à 21:13:54

          Bonsoir.

          Il y a plusieurs années j'avais commencé un blog pour programmer en assembleur 64 bits avec nasm.

          Vous pouvez regarder ici : https://assembleur64.kanak.fr/t3-les-outils

          • Partager sur Facebook
          • Partager sur Twitter
            18 novembre 2019 à 17:47:13

            bonsoir,

            Merci, je suis déjà plus avancer, mais qu'est-ce que GoLink, je n'ai pas tout compris(sinon ce serait trop simple!)

            merci encore, je commence enfin à comprendre certaines de ces petites subtilités!=)

            • Partager sur Facebook
            • Partager sur Twitter
              18 novembre 2019 à 21:29:04

              Bonsoir.

              Golink est un éditeur de lien (linker) qui permet de réunir tous les modules et librairies nécessaires et qui crée l'exécutable final.

              voir http://www.godevtool.com/GolinkHelp/GoLink.htm

              • Partager sur Facebook
              • Partager sur Twitter
                23 novembre 2019 à 11:17:22

                bonjour,

                Je ne parviens pas a télécharger Golink, que dois-je faire?

                • Partager sur Facebook
                • Partager sur Twitter
                  23 novembre 2019 à 18:03:53

                  Le téléchargement est disponible ici :

                  http://www.godevtool.com/#linker

                  • Partager sur Facebook
                  • Partager sur Twitter
                    24 novembre 2019 à 13:16:17

                    décidément que de problèmes!

                    le fichier ne s'exécute pas...

                    • Partager sur Facebook
                    • Partager sur Twitter
                      26 novembre 2019 à 18:47:28

                      Bonsoir.

                      Il ne suffit pas de cliquer sur le programme, il faut l'inclure dans un script .bat.

                      voir :

                      https://openclassrooms.com/fr/courses/3905611-utilisation-de-lapi-windows-32-bits-en-assembleur-avec-le-compilateur-nasm/3905618-les-outils?status=waiting-for-publication

                      • Partager sur Facebook
                      • Partager sur Twitter
                        27 novembre 2019 à 17:23:35

                        bonjour

                        "Installez ces 3 outils sur votre ordinateur et créez un répertoire développement assembleur pour stocker les sources."

                        ???

                        ah et GoLink ne fonctionne pas...

                        merci.

                        • Partager sur Facebook
                        • Partager sur Twitter
                        Anonyme
                          2 décembre 2019 à 16:03:32

                          @Matrix : tu es sûr d'avoir le niveau pour faire de l'assembleur ? Si tu galère à installer les outils, y'a des chances que tu galères encore plus en codant. Le prend pas mal, mais mieux vaut que tu reviennes sur l'assembleur quand tu te sera fait la main sur la programmation avec d'autres langages.

                          PS : pour te faciliter la vie, développe avec Linux. Tu peux utiliser WSL si tu disposes de Windows 10, ça te permet d'avoir un environnement Linux dans te casser la tête.

                          • Partager sur Facebook
                          • Partager sur Twitter
                            2 décembre 2019 à 23:12:31

                            Je ne veux pas te décourager mais sache que l'asm c'est :

                            - De plus en plus abandonné au profit des langages de haut-niveau.

                            - Très difficile à apprendre, car il n'y a pas que les instructions à connaître mais aussi la composition et la structure de la mémoire et des registres, la pile, etc...

                            L'asm a peu d’intérêts de nos jours, avec les langages puissants qui existent.

                            Il y en a même un plus rapide que le C et très puissant créé pour allier vitesse et facilité, c'est un langage que le MIT a créé, et il est en téléchargement gratuit, me souviens plus de son nom. Peut-être qu'en cherchant "concurrent du langage C..."

                            • Partager sur Facebook
                            • Partager sur Twitter
                            Abou
                              29 janvier 2020 à 21:14:37

                              re,

                              alors qui a dit que l'ASM était facile?Ensuite "tu es sûr d'avoir le niveau pour faire de l'assembleur?"ça s'apprend non?

                              je n'est peut-être pas assez expérience dans le milieu, mais je pense que c'est comme apprendre une langue, il y en a des facile et des moins facile...ça n'est que mon avis.

                              Après, j'essaye de me documenter comme je peux; les tutos sont quasi-inexistant(ou hors sujet), et la seule doc que j'ai trouvée n'est pas claire.

                              Donc comprenez que je patauge un peu XD

                              "peut importe l'obstacle, la détermination triomphera toujours"

                              • Partager sur Facebook
                              • Partager sur Twitter
                                1 février 2020 à 18:51:27

                                Bonsoir.

                                c'est très bien d'apprendre l'assembleur !! Surtout que c'est pas plus difficile qu'un autre langage quand tu as compris le rôle des registres, de la pile etc. Les autres langages ont eux aussi leurs difficultés il suffit de regarder les appels à l'aide dans les autres rubriques de ce forum !!

                                As-tu avancé sur la compilation avec Nasm et le link avec golink ?

                                • Partager sur Facebook
                                • Partager sur Twitter
                                  8 mars 2020 à 18:55:07

                                  bonsoir,

                                  cd <votre répertoire de développement>
                                  C:<votre répertoire nasm>/nasm.exe  -f win32  hello.asm -l hello.txt
                                  C:<votre répertoire linker>/golink hello.obj  /console Kernel32.dll User32.dll Gdi32.dll /entry:Main 
                                  pause

                                  voir:  https://openclassrooms.com/fr/courses/3905611-utilisation-de-lapi-windows-32-bits-en-assembleur-avec-le-compilateur-nasm/3905618-les-outils?status=waiting-for-publication

                                  ça, c'est fait, mais ça ne fonctionne pas...

                                  je ne parviens pas a faire run le programme;

                                  "le fichier specifié est introuvable.

                                  an attempt was made to execute the below command.

                                  --------------------------------------------------------------

                                  command: test

                                  arguments:

                                  error code: 2

                                  -------------------------------------------------------------"

                                  voilà l'erreure...je ne suis pas sur de comprendre

                                  merci

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    9 mars 2020 à 19:19:22

                                    Bonsoir.

                                    Ce n'est pas très clair !! peux-tu mettre dans ce blog, le code complet de ton script de compilation et de link ?

                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      10 mars 2020 à 1:02:24

                                      L'assembleur c'est pas plus compliqué qu'un autre langage. Pas mal de monde est passé par la, que ce soit de l'ASM x86, z80 ou 68k ..... Tu es proche de la machine, tu gères tout de A à Z (ok c'est chiant).

                                      Il faut que tu comprennes biens les étapes pour passer d'un listing à un .exe (ou .com :-) ).

                                      Tu tapes ton code dans un éditeur de texte (nano, notepad ou ca que tu veux).

                                      Ton code va être compiler. C'est à dire que ton texte va être 'traduit' en hexa/binaire. Mais c'est pas finit ! Si ton programme tiens en plusieurs fichiers, il faut créer des liens entre eux. c'est l'éditeur de lien. Tu vas inclure les bibliothèques et tout ce qu'il faut pour que ton logiciel soit exécuté.... Tu as le format .exe, le format ELF. Bref il va falloir que tu te documentes pas mal. Surtout que pour windows ton code va être surtout composé d'appel à des API windows. 

                                      Tu as le choix de faire un fichier .bat pour lancer tes étapes une par une. ou alors tu crées un Makefile.

                                      Après un PC n'est pas forcement le plus simple pour apprendre l'assembleur. Tu peux tenter de faire une VM avec un vieux DOS. Ca te permettra de coder en mode réel (8/16 bits) et avoir les appels BIOS via les interruptions. Le fameux mode X (320x200 en 256 couleurs) par exemple permet de faire des petites démos facilement. Tu peux aussi apprendre l'ASM pour un microcontrolleur (pic/avr ....) ça te sera surement plus utile. 

                                      Sinon tu peux faire du C avec des inline pour encapsuler de l'assembleur. 

                                      https://www.codeproject.com/articles/15971/using-inline-assembly-in-c-c

                                      Ca te permet de faire de débuter l'assembleur en étant un peu plus confortable. D'ailleurs la plupart du temps on ne code que les "sections critiques" en ASM...

                                      • Partager sur Facebook
                                      • Partager sur Twitter

                                      NASM : commencer a coder en ASM

                                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                      • Editeur
                                      • Markdown