Bonjour,
je lis des octets dans une mémoire et je veux tester un seul bit. On m'a conseillé une méthode et voilà mon code :
J'ai essayé aussi de modifier la condition de test avec
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 #include <stdio.h> #include "system.h" int main() { int *pmem; int i, k; k=0; for (i=0; i<600;i++) { pmem=0x80000000|ONCHIP_MEMORY2_0_BASE+i; if ((*pmem>>1)&1==1) k++; } printf("k = %u; i = %u\n", k, i); return 0; }
et je m'attendais à ce que la somme des résultats des deux programmes fasse 600 or ce n'est pas le cas : j'ai 26+0 !
Code : Sélectionner tout - Visualiser dans une fenêtre à part if ((*pmem>>1)&1==0)
C'est où que je me trompe ?
Merci.
Partager