Обычный способ извлечь наименее значимые биты состоит в том, чтобы делать побитовое И с соответствующей маской (в данном случае 7)

риходится анализировать средства и серьезность сообщений системного журнала в Python. Эти значения поставляются с каждым сообщением как одно целое число. Серьезность события составляет 0-7, указано в 3 младших значащих битах в целом числе. Какой самый простой / быстрый способ оценить эти 3 бита из числа?

Код, который я сейчас имею, просто делает 3-битное правое смещение, затем умножает это число на 8 и вычитает результат из оригинала.

FAC = (int(PRI) >> 3)
SEV = PRI - (FAC * 8)

Должен быть менее запутанный способ сделать это - вместо того, чтобы уничтожать биты и вычитать.

(По профессии я системный администратор, поэтому я не знаю многих основ - пожалуйста, держитесь за меня!)

Ответы на вопрос(0)

Ваш ответ на вопрос