Цитата
А проблемы не было. У вас 8-битовая переменная и вы 8 раз в нее вдвигаете биты. Все ваши обнуленные биты "выталкиваются" из переменной во время исполнения функции. Поэтому начальное значение data на результат не влияет.
хм... об этом я как-то не подумал.
ПРосто когда методом тыка разбирал функцию по косточкам, я пытался понять откуда там берутся лишние биты.
Когда увидел, что какой-то мусор присутствует изначально, и что программа работает после принудительного обнуления data, радости после трехдневных мук не было предела, я свалил все на изначальный мусор.
А вообще, проблема гадкая, напоминает ситуацию, когда в какой-то функции уберешь одну фигурную скобку, то компилятор выдает ошибку в километре от этого места, приводя в недоумение. Боюсь что и здесь что-то подобное, болит голова, а причина где-то в пятке.
Сообщение отредактировал zheka - Aug 13 2013, 07:51