LOCODUINO

L’assembleur (2)

Sa forte relation au matériel

. Par : Christian

Relation entre matériel et logiciel Programmer en assembleur demande d’avoir une très bonne connaissance des possibilités matérielles du microcontrôleur cible (encore appelées ressources). Il est en effet primordial de bien connaître les ressources de votre microcontrôleur pour savoir ce que vous pourrez lui demander. On a d’ailleurs déjà un (…)

Retourner à l'article

Vous répondez à :

L’assembleur (2) 6 février 2021 16:01, par Christian

Désolé de vous dire qu’il faudra attendre une semaine de plus pour avoir la réponse, dans l’article suivant qui sera publié le 14 février. En effet, demain, je passe mon tour pour laisser la place à Dominique et Michel qui publient un article commun. Suspense...

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.

Lien hypertexte

(Si votre message se réfère à un article publié sur le Web, ou à une page fournissant plus d’informations, vous pouvez indiquer ci-après le titre de la page et son adresse.)

17 Messages

  • L’assembleur (2) 1er février 2021 16:38, par trimarco232

    Bonjour,
    la réponse, c’est 14 ; mais je peux me tromper, il faudrait d’autres avis

    Répondre

    • L’assembleur (2) 1er février 2021 17:38, par Christian

      Super, cet article a été lu au moins une fois ! ;-)
      Et bien, la réponse dans l’article suivant... comme cela, ça permet à d’autres de se faire une idée.
      En admettant qu’il y en ait d’autres pour le lire ! ;-))

      Répondre

  • L’assembleur (2) 5 février 2021 13:02, par bricoleau

    Bravo pour le courage d’écrire un article technique aussi pointu. Ca mérite bien un troisième lecteur :-)
    Perso j’aurais voté pour 16 bits, qui est la taille d’adressage standard d’un avr, pour contenir l’adresse en flash de l’instruction en cours d’exécution.
    Mais sans certitude, d’autant qu’il m’est déjà arrivé de devoir jongler avec des "far pointer" sur une mega car le compilé dépassait les 64k.

    Répondre

    • L’assembleur (2) 5 février 2021 14:18, par Christian

      On n’est pas loin du fan-club ! ;-)
      En écrivant cette série sur l’assembleur, je voulais amener Locoduino en dehors de ce que nous avons déjà décrit et qui s’applique au modélisme ferroviaire. Et il est vrai que nous avons abordé tous les sujets possibles sur un réseau de trains miniatures : commande de trains, animation de réseau, automatisme...
      En tout cas, merci à ceux qui témoignent de leur intérêt : nul doute que cela me motivera à trouver des suites à cette série. Car le sujet est vaste.

      Répondre

      • L’assembleur (2) 5 février 2021 15:00, par bernard

        Il n’est pas impossible en effet qu’il s’agisse d’un registre 16 bits dont on n’utilise que les 14 bits de poids faible.
        C’est loin d’être clair cette histoire !!!

        Bernard

        Répondre

        • L’assembleur (2) 6 février 2021 13:08, par bricoleau

          Cela expliquerait aussi comment un atmega2560 peut adresser jusqu’à 256k=2^18 octets de mémoire flash, en utilisant les deux bits de poids fort d’un registre PC à 16 bits

          Répondre

          • L’assembleur (2) 6 février 2021 16:01, par Christian

            Désolé de vous dire qu’il faudra attendre une semaine de plus pour avoir la réponse, dans l’article suivant qui sera publié le 14 février. En effet, demain, je passe mon tour pour laisser la place à Dominique et Michel qui publient un article commun. Suspense...

            Répondre

        • L’assembleur (2) 10 février 2021 20:04, par trimarco232

          16 dont 2 qui ne servent pas, ça ne fait jamais que 14 ... il faut que le pc puisse repartir automatiquement à 0 quand il est arrivé au bout, si non il va se cogner 48k de nop !
          par contre je ne sais pas comment est organisé la flash : il faut peut-être quand-même un bit de poids faible pour aller chercher chaque demi mot (octet) ... mais là c’est purement silicium, le programme n’a pas en tenir compte
          ce qu’il faut c’est trouver les 32/2 k emplacements, et pour ça il faut 14 bits, donc je persiste

          Répondre

  • L’assembleur (2) 7 février 2021 18:24, par Bernard

    L’article est génial, hyper précis, pointu dans la prog, un grand merci.
    Je mesure le temps passé à écrire ce genre d’article, un grand bravo.
    Après, la technique du teasing on s’en fout royalement c’est vraiment pas le prob

    Bernard

    Répondre

  • L’assembleur (2) 7 février 2021 19:21, par msport

    Pour le teasing, seuls les initiés peuvent comprendre ...
    En tout cas, je me joins aux éloges ! Comme tous ceux qui ont trempé dans les Z80, 6502, 6809 et autres 68705.

    Répondre

  • L’assembleur (2) 12 février 2021 06:48, par Rémi

    Bonjour Christian, ne t’inquiètes pas. On lit tes articles. Pour ma part, j’attends la suite, avec impatience. Je vois qu’il y a des vétérans comme moi qui ont des anecdotes à raconter. En tout cas, bravo pour la précision. De toute façon, quand on utilise l’assembleur, il faut être très précis, à la moindre erreur on part dans les choux. Et puis, il n’y a pas de garde fou avec l’assembleur.
    Rémi

    Répondre

    • L’assembleur (2) 12 février 2021 10:17, par Christian

      Je savais que ces articles rencontreraient du succès. Mais effectivement, l’assembleur demande beaucoup de connaissances et la difficulté d’écriture est d’en dire assez sans pour autant noyer dans les détails. Je pense que l’essentiel permet de débuter, mais ensuite il faut approfondir. C’est pourquoi j’ai classé la série pour des experts parce qu’un expert est capable d’aller chercher de lui-même ce qu’il lui manque.
      J’ai décidé d’un article supplémentaire à cette série et ce n’est pas simple : je dois en dire suffisamment pour au moins susciter l’intérêt du lecteur, mais je ne peux rentrer dans tous les détails qui sont nombreux. Après, il est nécessaire de ne pas se contenter d’une simple lecture des articles : il faut pratiquer. C’est vrai, il n’y a pas de garde fou en assembleur, mais d’un autre côté, si cela ne fonctionne pas, rien ne se détériore : ce n’est qu’un programme.
      Peut-être qu’une section "assembleur" dans le forum permettrait de partager nos expériences. A méditer...

      Répondre

  • L’assembleur (2) 6 mars 2021 06:34, par BENET daniel

    Maintenant retraité et ferrovipathe (personne n’est parfait), j’ai (dans un passé lointain) beaucoup développé (automatismes industriels) en assembleur Z80.
    J’avais abandonné tout cela en raison du coût des outils de développement que j’utilisais professionnellement (Mostek).
    La découverte des Arduino et de leur très faible coût de mise en œuvre (en particulier de provenance directe chinoise) a réveillé ma curiosité (pas tout à fait morte !).
    Votre énorme travail de francisation et explications m’a décidé à "repiquer au truc". Giga-mercis !
    Après quelques mois passés à digéré l’UNO et le C++ (réalisation perso d’un PN), je me suis demandé si l’assembleur était toujours une voie aussi passionnante (et efficace).
    Me voici donc, de nouveau dévorant votre cours et .. c’est toujours avec le même plaisir !
    Encore Merci pour cet énorme boulot.
    Cordialement.
    Daniel

    Répondre

    • L’assembleur (2) 6 mars 2021 11:31, par Christian

      Heureux d’avoir contribué à ranimer la flamme !
      Cette série d’articles convient bien à ceux qui ont eu une expérience en assembleur avec d’autres µC ou µP et le Z80, je connais aussi... ;-)
      Et ce qui était difficile dans le passé à cause d’outils inexistants ou trop chers est maintenant à portée de tous, comme en témoignent les solutions que nous avons publiées dans ces articles.
      Alors bonne programmation et rendez-vous sur le forum si vous voulez discuter d’un sujet plus précis avec tous ceux qui s’y intéressent (et ils sont plus nombreux qu’on ne le croit).

      Répondre

Rubrique Programmation

Les derniers articles

Les articles les plus lus