diff --git a/26_Seminar13/27_Microcontrollers/2_1_bits.c b/26_Seminar13/27_Microcontrollers/2_1_bits.c index 5a34574..0dfc771 100644 --- a/26_Seminar13/27_Microcontrollers/2_1_bits.c +++ b/26_Seminar13/27_Microcontrollers/2_1_bits.c @@ -31,10 +31,10 @@ int set_some_bits(void *dest, unsigned int val) int main() { - float var = 0; - uint32_t a=4095; - uint32_t b=2000; - uint32_t c=4095; + float var = -0.1; + uint32_t a=4096; + uint32_t b=0x7fffffff; + uint32_t c=1<<(32-9); uint32_t d=0xffff; int status = 0; //~ scanf("%x%x%x%x", &a, &b, &c, &d); //a=4095, b=2000, c=4095, d=0xffff @@ -45,10 +45,11 @@ int main() set_all_bits(&a); printf("set_all_bits a: %#X\n",a); + printf("vol = %f\n",var); status = reset_some_bits(&var, b); - printf("reset_some_bits %d %#X %f\n",status, a, var); - status = reset_some_bits( &var, c ); - printf("reset_some_bits %d %#X %f\n",status, a, var); + printf("reset_some_bits %d %#X %f\n",status, b, var); + status = reset_some_bits( &var, ~c ); + printf("reset_some_bits %d %#X %f\n",status, c, var); set_all_bits(&var); status = reset_some_bits(&var, d); printf("reset_some_bits %d %#X %f\n",status, a, var); diff --git a/26_Seminar13/27_Microcontrollers/2_1_bits.exe b/26_Seminar13/27_Microcontrollers/2_1_bits.exe new file mode 100644 index 0000000..f8eec35 Binary files /dev/null and b/26_Seminar13/27_Microcontrollers/2_1_bits.exe differ diff --git a/26_Seminar13/27_Microcontrollers/2_1_bits.o b/26_Seminar13/27_Microcontrollers/2_1_bits.o new file mode 100644 index 0000000..0aad0d1 Binary files /dev/null and b/26_Seminar13/27_Microcontrollers/2_1_bits.o differ