#include <stdio.h>
#include <stdint.h>
typedef struct {
uint8_t b0:1;
uint8_t b1:1;
uint8_t b2:1;
uint8_t b3:1;
uint8_t b4:1;
uint8_t b5:1;
uint8_t b6:1;
uint8_t b7:1;
} Bits;
uint8_t Invert(uint8_t Bit) {
return (~Bit);
}
int main(void) {
Bits b = {1,1,1,1,1,1,1,1};
printf("%d%d%d%d%d%d%d%d\n", b.
b0, b.
b1, b.
b2, b.
b3, b.
b4, b.
b5, b.
b6, b.
b7); b.b3 = Invert(b.b3);
printf("%d%d%d%d%d%d%d%d\n", b.
b0, b.
b1, b.
b2, b.
b3, b.
b4, b.
b5, b.
b6, b.
b7); b.b3 = Invert(b.b3);
printf("%d%d%d%d%d%d%d%d\n", b.
b0, b.
b1, b.
b2, b.
b3, b.
b4, b.
b5, b.
b6, b.
b7); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRpbnQuaD4KCnR5cGVkZWYgc3RydWN0IHsKICAgIHVpbnQ4X3QgYjA6MTsKICAgIHVpbnQ4X3QgYjE6MTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgIHVpbnQ4X3QgYjI6MTsKICAgIHVpbnQ4X3QgYjM6MTsKICAgIHVpbnQ4X3QgYjQ6MTsKICAgIHVpbnQ4X3QgYjU6MTsKICAgIHVpbnQ4X3QgYjY6MTsKICAgIHVpbnQ4X3QgYjc6MTsKIH0gQml0czsKIAp1aW50OF90IEludmVydCh1aW50OF90IEJpdCkgewogcmV0dXJuICh+Qml0KTsKfQoKaW50IG1haW4odm9pZCkgewoJQml0cyBiID0gezEsMSwxLDEsMSwxLDEsMX07CglwcmludGYoIiVkJWQlZCVkJWQlZCVkJWRcbiIsIGIuYjAsIGIuYjEsIGIuYjIsIGIuYjMsIGIuYjQsIGIuYjUsIGIuYjYsIGIuYjcpOwoJYi5iMyA9IEludmVydChiLmIzKTsKCXByaW50ZigiJWQlZCVkJWQlZCVkJWQlZFxuIiwgYi5iMCwgYi5iMSwgYi5iMiwgYi5iMywgYi5iNCwgYi5iNSwgYi5iNiwgYi5iNyk7CgliLmIzID0gSW52ZXJ0KGIuYjMpOwoJcHJpbnRmKCIlZCVkJWQlZCVkJWQlZCVkXG4iLCBiLmIwLCBiLmIxLCBiLmIyLCBiLmIzLCBiLmI0LCBiLmI1LCBiLmI2LCBiLmI3KTsKCXJldHVybiAwOwp9Cg==