Le 14 septembre 2017, nous avons publié une version actualisée de notre Politique de confidentialité. En utilisant video2brain.com vous vous engagez à respecter ces documents mis à jour. Veuillez donc prendre quelques minutes pour les consulter.

L'essentiel d'Assembleur

Aller plus loin dans la manipulation du registre de travail

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Analysez les subtilités des préincrémentations, postincrémentations et décrémentations appliquées aux registres de travail. Il s'agit de mettre l'accent sur la souplesse que peut offrir l'architecture 16 bits.
05:57

Transcription

Dans cette vidéo, nous allons voir un peu le jeu d'instructions de la section 25. Voici toutes les instructions que nous avons de celles qui sont à gauche. Il y en a bien évidemment plus que sur la série PIC18. Mais, ce qui fait très mal en fait, ce sont les paramètres. En effet, ici dans les paramètres, si on prend une addition simplement, vous avez plusieurs façons de pouvoir additionner, qui sont celles-ci. Alors, on vous donne la description sur le côté et vous voyez que ça devient un petit peu folklorique. Et, on peut faire vraiment pire. Nous allons donc parcourir quelques unes. Il faudra pratiquer, vraiment de façon très régulière, pour pouvoir bien comprendre tous les mécanismes. Je m'appuie sur le Lab19, où nous avons toujours trois variables déclarées et une équivalence ici. A partir de là, je vais aussi déclarer une étiquette init variable... qui va me permettre de réinitialiser régulièrement mes variables. Donc, log clear variable1, 2, 3. Pas de soucis ! Dans W0, je vais mettre ma constante 1. Vous voyez, tout se passe bien. Ça, je le met maintenant dans ma variable1. Puis si je veux, je peux faire de l’adressage immédiat, enfin, direct, ce qui est pareil en faisant ceci. Donc là vous voyez, qu'il n'y a aucun problème. Après,on peut commencer à faire des additions. W3 va recevoir la somme de W1 et W2. Que cela ne tienne. On y va ! Vous voyez que ça nous fait bien 6.912 et puis on va verser ça dans variable 2. Ok, pas de problème ! Je voudrais maintenant ajouter 10 à W3. Pas de problème, on ajoute 10 en littéral au milieu, registre de destination, et voilà, on a ajouté 10. Après, on arrive aussi sur des opérations un petit peu plus chiadées. Par exemple, avec le mov.d, vous allez faire un transfert de W0 vers W4. Pas de quoi paniquer pour l'instant. Mais en fait, le registre de travail juste à côté du premier registre déclaré ici... va faire la même chose avec le registre suivant. Vous allez avoir W1 et W5 qui vont être aussi affectés de la même façon. Donc là, vous voyez, ça commence à devenir déjà un petit peu limite. Mais, vous allez voir qu'on peut faire mieux. Donc là, je réinitialise mes variables pour avoir un 10 et 100. Là, je vais charger en fait l'adresse 0802. Je vais faire la même chose, 803 pour W3. Et là, que vais-je faire ? Je vais ajouter un au contenu de W1, et le contenu de W2 qui pointe sur l'adresse 802 qui vaut 10, est stocké dans le résultat à l'adresse pointée par W3, c’est-à-dire 800A. Le résultat total va donc nous faire 11. On regarde 803, on est bien à 11. Donc, je réinitialise une fois de plus, pour montrer encore qu'on peut faire autre chose. Cette fois-ci, travailler avec de la post-incrémentation. Alors, c’est-à-dire qu'on va d'abord, en fait décrémenter, l'adresse ici entre crochets. Chaque fois que vous avez des crochets, vous travaillerez avec l'adresse et non le contenu. Alors, vous allez en fait décrémenter l'adresse. Ici, vous allez incrémenter l'adresse. Et à partir de là, vous allez faire l'addition des deux contenus, qui sont dans ces nouvelles adresses. Alors, je vais le lire de façon littérale... On ajoute un au contenu W. Dans le contenu de W-2, c'est là qu'on se retrouve à la base 800, dont le contenu vaut un, au lieu de... l'adresse 802 qui vaut 10. On va stocker le résultat à l'adresse pointée à W3+2, c'est-à-dire cette fois ci, à l'adresse 806. Ce qui va nous donner à la fin, deux. Donc, en gros, ça nous fait 1+1=2 Alors, on va regarder... et nous sommes repartis W1, et nous sommes bien donc à 2 ici à 806. Donc, c'est impeccable ! On peut continuer et puis là, après avoir fait de la pré-incrémentation ou décrémentation, on peut faire de la post-décrémentation. On peut toujours essayer d'additionner donc avec W qui vaut un, avec l'adresse de W2 qui vaut 802. Pas de problème... avec le contenu de l'adresse 803. Donc ça, il y a pas de soucis. A partir de là, c'est comme si on additionnait, en fait, le contenu des deux adresses, et on le stocke dans W1. Donc là, il y a pas de soucis. Par contre, ce qui s'est passé, c'est qu'une fois qu'on a fait notre petite opération, W2 pointe déjà sur l'adresse suivante. Voilà W2 a donc, pour ex-contenu 802, et le nouveau contenu est à la base 804. Vous voyez un peu comment ça marche. Il y a de quoi se casser la tête ! Voilà donc 802 et là, nous allons nous retrouver à 804. Voilà, j'en ai fini et après, je fais une boucle et on recommence, je pense vous avoir assez torturé l'esprit pour maintenant, pour vous montrer un peu la puissance de tout ce qu'on peut faire... là, cette fois-ci en assembleur, avec cette catégorie microcontrôleur.

L'essentiel d'Assembleur

Plongez-vous dans le langage bas niveau, nommé Assembleur. Abordez les notions de jeu d'instructions, de pipeline, de registres, de mode d’adressage, de compteur de programme, etc.

4h52 (57 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :26 sept. 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !