Obrazek BMP, scalanie bitów

0

Siema.
Mam taki problem. Otóż napisałem program który wczytuje cały obrazek BMP czyli nagłówek i paletę RGB. Następnym zadaniem jest scalenie bitów czyli przydzielenie zamiast 8 bitów 7 na kolor. Polega to ogólnie na tym, że jak np zapisujemy barwę czerwoną to jest ona zapisywana binarnie na 8 bitach, naszym zadaniej jest wyzerowanie ostatniego bitu i przeniesienie już tam tego pierwszego bitu z następnego koloru czyli zielonego, nastepnie w zielonym zostaje 6 bitów zielonego i 2 bity z następnego czyli niebieskiego. W niebieskim zaś zostaje 5 bitów niebieskiego i 3 bity następnego czerwonego i tak dalej. Program ten piszę w C++ i nie mam żadnego pomysłu jak to zrobić. Wiem że trzeba skorzystać z przesunięć bitowych, ale jak ? Ma ktoś jakiś pomysł, lub jakieś materiały opisujące ten problem ?

1

vector<bool> iterator i push_back.

0

naszym zadaniej jest wyzerowanie ostatniego bitu i przeniesienie już tam tego pierwszego bitu z następnego koloru czyli zielonego, nastepnie w zielonym zostaje 6 bitów zielonego i 2 bity z następnego czyli niebieskiego. W niebieskim zaś zostaje 5 bitów niebieskiego i 3 bity następnego czerwonego i tak dalej

ale przecież z tego kaszana wyjdzie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1