есть идеи относительно следующего сегмента кода, который ИЛИ вместе сдвинутые данные?Разве это не должно быть И вместо этого?
Левая половина этого выражения сдвигает сохраненные данные OUT , обнуляя некоторые старшие биты.Правая половина сдвигает IN новые данные, помещая их в требуемую позицию в более высокой части буфера и заполняя младшие биты нулем.Чтобы получить обновленное содержимое буфера, вам нужно ИЛИ обе половины выражения.Если вы попытаетесь И , вы получите полностью обнуленный буфер, поскольку действительные данные из левой и правой половин выражения не перекрываются.