logo

Crowdly

Browser

Add to Chrome

Questions Bank (1435115 total)

3.5 Les sketch Arduino sont plus ou moins portables d’une plateforme à une autre. Est-ce que cette valeur d’initialisation sera la même si la cible est un Arduino uno ou un ESP32 ?

0%
100%
View this question

3.6 Quelle est la fréquence d’affichage (approximativement) en ms des informations sur le terminal qui est à l’écoute sur le port série ?

View this question

Modifier ce code afin de garder constamment dans 2 variables min1 et min2 les 2 valeurs les plus faibles de chaque séquence de mesures, et affichez ces deux valeurs (sur la même ligne, avec un espace entre les valeurs)

View this question

3.1 Ajouter au code les déclarations manquantes en précisant le type.

View this question

Parmi les équipements suivants, lesquels délivrent généralement une grandeur sous forme d’un signal variable analogique (le plus souvent une tension variable)

0%
0%
100%
100%
View this question

Quelles instructions (en utilisant le framework Arduino) permettent généralement de récupérer des informations en provenance d’un capteur connecté au microcontrôleur

100%
0%
0%
0%
View this question

Parmi les équipements suivants, lesquels sont généralement utilisés somme capteurs

0%
100%
100%
0%
View this question
Variables de type long int (32 bits) en mémoire

Modifiez le programme afin de définir la déclaration suivante pour la section .data :

Variables de données

:

.long 0xDEADCAFE

.long 1678

num_i32s :

.long -24786

La directive .long est utilisée pour déclarer une variable de type entier d'une longueur de 32 bits.

Modifiez également le programme de manière à ce qu'il se compile correctement et effectuez un vidage mémoire en mode débogage. Vous pourrez ainsi visualiser correctement le contenu de la section de données.

Comme pour l'exercice précédent, copiez-collez les fichiers de vidage mémoire et mettez en surbrillance les valeurs selon les instructions du modèle . Joignez également le fichier source .asm à titre de référence (cependant, le code source ne sera pas évalué).

View this question

Lancez maintenant le débogueur en cliquant sur le bouton « Déboguer ».

Dans le menu Débogage, veuillez vous assurer que la case Afficher les registres est cochée :

Maintenant, en utilisant l'instruction Step over, passez à l'instruction suivante, puis à l'instruction ret.

movl $variables, %eax

ret

Vous devriez maintenant voir quelque chose de similaire à ceci :

Dans la  section Registres  , vous pouvez consulter le contenu des registres internes du processeur. L'instruction mise en évidence a déplacé l'adresse indiquée sous l' étiquette Variables  vers le registre eax. Veuillez donc lire cette valeur en hexadécimal et l'inscrire dans la zone de réponse en utilisant le modèle fourni. Notez également cette valeur, car nous l'utiliserons ultérieurement.

Si vous utilisez Windows, ce sera probablement quelque chose comme  0x402000 , et si vous utilisez Linux, plutôt quelque chose comme 0x804c020 .

Ne quittez pas encore la session de débogage ;)

View this question

Avant de commencer cet exercice, il est nécessaire de configurer l'environnement SASM. Après avoir démarré SASM, accédez au menu Paramètres et repérez l'onglet Compilation. Dans cet onglet, vérifiez que l'option x86 est cochée dans la section Mode et que l'option GAS est cochée dans la section Assembleur. Ne modifiez pas les autres paramètres !  Les paramètres corrects sont indiqués dans la figure ci-dessous.

Veuillez ouvrir SASM, vérifier que vos paramètres sont corrects (x86 et GAS), copier-coller le programme simple fourni séparément dans cette section (TP 1) du cours, le compiler et l'exécuter. Le programme a-t-il été compilé correctement, sans erreur ?

Voici un exemple de ce à quoi cela pourrait ressembler après avoir compilé et exécuté le programme avec le  bouton (sous Linux, donc pas de « _ » ici, mais vous aurez probablement besoin des tirets bas) :

0%
100%
View this question