Changes between Version 16 and Version 17 of Archi-1-TD10
- Timestamp:
- Nov 19, 2022, 9:19:05 PM (2 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Archi-1-TD10
v16 v17 409 409 19 extern volatile struct tty_s __tty_regs_map[NTTYS]; 410 410 }}} 411 À quoi servent les mots clés `extern` et `volatile` ?\\Si `NTTYS` est une macro dont la valeur est `2`, quelle est l'adresse en mémoire `__tty_regs_map[1].read` ? 412 {{{#!protected ------------------------------------------------------------------------------------ 413 '' 414 Cours 10 annexe / slide 23 411 À quoi servent les mots clés `extern` et `volatile` ?\\Si `NTTYS` est une macro dont la valeur est `2`, quelle est l'adresse en mémoire `__tty_regs_map[1].read` ? (C10 annexe S23 et connaissance du C) 412 {{{#!protected ------------------------------------------------------------------------------------ 413 '' 415 414 - `extern` : informe le compilateur que la variable définie existe ailleurs. Grâce à son type, le compilateur sait s'en servir. 416 415 - `volatile` : informe le compilateur que la variable peut changer de valeur toute seule et que donc il doit toujours accéder en mémoire à chaque fois que le programme le demande. Il ne peut donc pas optimiser les accès mémoire en utilisant les registres. … … 423 422 - exécuter l'instruction `jal` (ici, `jal $2`) pour appeler la fonction. 424 423 425 Que doivent contenir les registres `$4` à `$7` et comment doit-être la pile et le pointeur de pile? 426 {{{#!protected ------------------------------------------------------------------------------------ 427 '' 428 Cours 10 annexe / slide 12 424 Que doivent contenir les registres `$4` à `$7` et comment doit-être la pile et le pointeur de pile? (Connaissance assembleur) 425 {{{#!protected ------------------------------------------------------------------------------------ 426 '' 429 427 - C'est un appel de fonction, il faut donc respecter la convention d'appel des fonctions 430 428 - Les registres `$4`à `$7` contiennent les arguments de la fonction