Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision
|
Révision précédente
|
desassemblage_arduino [2019/02/22 15:07] bvandepo créée |
desassemblage_arduino [2021/02/19 21:20] (Version actuelle) |
| |
=====Quelques infos sur le désassemblage d'un programme arduino===== | =====Quelques infos sur le désassemblage d'un programme arduino===== |
| |
| |
| Question d'un étudiant sur le [[tdethindus1]] pour calculer la valeur de l'octet d'instruction de l'EEPROM 25C040, quelle est l'écriture la plus efficace? |
| |
| Processus de génération du binaire exécutable Arduino: https://github.com/arduino/Arduino/wiki/Build-Process |
| |
| Emplacement du .hex généré: https://stackoverflow.com/questions/11607834/where-are-the-hex-files-compiled-by-arduino |
| |
Jeu d'instruction de l'ATMEGA328P: http://ww1.microchip.com/downloads/en/devicedoc/atmel-0856-avr-instruction-set-manual.pdf | Jeu d'instruction de l'ATMEGA328P: http://ww1.microchip.com/downloads/en/devicedoc/atmel-0856-avr-instruction-set-manual.pdf |
/usr/share/arduino/hardware/tools/avr/bin/avr-gcc -Os -Wl,--gc-sections -mmcu=atmega328p -o /tmp/build3959672033620118453.tmp/test_disassembly.cpp.elf /tmp/build3959672033620118453.tmp/test_disassembly.cpp.o /tmp/build3959672033620118453.tmp/core.a | /usr/share/arduino/hardware/tools/avr/bin/avr-gcc -Os -Wl,--gc-sections -mmcu=atmega328p -o /tmp/build3959672033620118453.tmp/test_disassembly.cpp.elf /tmp/build3959672033620118453.tmp/test_disassembly.cpp.o /tmp/build3959672033620118453.tmp/core.a |
| |
| GARDER L'IDE ARDUINO OUVERTE, sinon les fichiers temporaires sont effacés. |
| |
Pour obtenir le code désassemblé à partir du .o ou du .elf: http://forum.arduino.cc/index.php?topic=73638.0 | Pour obtenir le code désassemblé à partir du .o ou du .elf: http://forum.arduino.cc/index.php?topic=73638.0 |
| |
</file> | </file> |
| ===remarque concernant le décalage à gauche=== |
| L'opération de décalage a gauche (LSL page 120 de http://ww1.microchip.com/downloads/en/devicedoc/atmel-0856-avr-instruction-set-manual.pdf ) se fait en pratique grace à Add Rd,Rd qui multiplie Rd par 2 (page 32) . |