J'essaie actuellement de comprendre comment l'instruction movw fonctionne sur ARM, pour pouvoir éditer hexadécimal une bibliothèque et changer une valeur qui est en train d'être définie avec cette instruction.comment le bras déplacent-ils la carte d'instructions vers le code machine?
La bibliothèque présente le code comme suit (sortie objdump):
[...]
29c4: f44f 71f0 mov.w r1, #480 ; 0x1e0
[...]
Ce que je suis en train de le faire en d'autres termes, est à comprendre comment est 0x1e0/480 représenté dans « f44f 71f0 ». J'ai lu des choses sur le net, y compris http://blogs.arm.com/software-enablement/251-how-to-load-constants-in-assembly-for-arm-architecture/ et je pense que je comprends comment fonctionne movw et ses limites; mais je ne comprends toujours pas comment la valeur affichée sur l'instruction correspond au code binaire réel. Toute documentation ou insigne que vous pourriez être en mesure de fournir sur le sujet est très appréciée :)
Un grand merci! Avec votre explication et un peu de lecture sur le Manuel de référence architectural, je l'ai compris et j'ai pu éditer ce dont j'avais besoin :) – user1176415