Bonjour,
JE voudrais comprendre ce code écrit en c assembleur :
Je sais le principe, c'est de sauvegarder le SP : (stack pointer) et le restaurer./* Context switching */
#define BACKUP_CTX(sp) \
asm ("mov r1, %0" : "=r"((sp)[0])); \
#define RESTORE_CTX(sp) \
asm ("mov %0, r1" :: "r"((sp)[0])); \
il s'agit d'une opération move;
mais je voudrais comprendre le "%0" et le "=r" et le (sp)[0]
Et lorsqu'on écrit asm(). est ce que c'est le cas pour tout type de microcôntrolleur?
merci.







Répondre avec citation





Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
Partager