День добрый. Надоумьте пожалуйста, как выделить старший и младший байт из переменной типа WORD (на языке ST)?
Буду тем более весьма признателен и за обратный алгоритм упаковки двух байт в WORD. Заранее спасибо.
День добрый. Надоумьте пожалуйста, как выделить старший и младший байт из переменной типа WORD (на языке ST)?
Буду тем более весьма признателен и за обратный алгоритм упаковки двух байт в WORD. Заранее спасибо.
умножаем или делим, соответсвенно, на 2 в 8 степени (256)
Э, туповат я маленько... Что на что и как? Могу сдвинуть WORD вправо, останется ст.байт и нолики в старших разрядах. Сдвинуть тот же WORD влево-вправо, останется мл. байт и нолики в ст. разрядах. Но вот как из WORD в BYTE перекинуть результаты сдвигов? То есть из одной переменной WORD получить две переменные типа BYTE, содержащие ст. и мл. байты?
Последний раз редактировалось Plp; 03.07.2013 в 10:33.
lo,hi : byte
w : word
lo := word_to_byte(w)
hi := word_to_byte(w/256)
w := 256*hi + lo
Спасибо, Валенок, понял. Я простым побитовым присваиванием решил, любая разрядность в какую хошь разрядность. Еще раз благодарю, тема закрыта.
Последний раз редактировалось Plp; 09.07.2013 в 09:41.