Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Python: Общие вопросы > HIBYTE и LOBYTE в Python


Автор: litecoiner 6.4.2014, 03:30
Как верно выделить и перезаписать HIBYTE и LOBYTE в Python?

Помогите перевести следующий фрагмент кода

Код

      if ( HIBYTE(v3) & 1 )
        LOBYTE(v3) = v3 | 1;
      printf("%d", v3);


Так неудобно, да и неправильно
Код

      hibyte = (v3 & 0xFF00) >> 8
      lobyte = v3 & 0x00FF
      if hibyte and 1 == 1:
        lobyte = (v3 & 0x00FF) | 1;
      print "%d" % (lobyte)
      print "%d" % (hibyte)

Автор: litecoiner 6.4.2014, 22:48
решение найдено

Код

if v3 & (1 << 8) != 0:
    v3 |= 1
printf "%d" % v3

Автор: Romikgy 7.4.2014, 08:31
это неправильное решение 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)