CiSi » 27 янв 2012, 10:52
boez писал(а):Вот блин, приношу свои извинения, сам заблуждался и других пытался ввести в заблуждение. Похоже, в паскале shr - это всегда логический сдвиг!
Переходи на С замени на
- Код: Выделить всё • Развернуть
Moving:=Moving+(((Encoder-Bufer)shl 8)div 256)/K)
, или даже
- Код: Выделить всё • Развернуть
Moving:=Moving+((Encoder-Bufer)shl 8)/(256*K)
.
Спасибо!!!!!!!!!!!!
все работает как надо! Вот ведь чувствовал что есть более изящьное решение
CiSi » 16 фев 2012, 17:20
Как понять такую запись написанную на С++:
(valueEnc*256)/256
????
dccharacter » 16 фев 2012, 17:32
Зависит от типа переменной.
Если тип знаковый, то, возможно, решается задача переноса знака из младшего разряда в старший, т.е. конвертация, например, 12-ти битной знаковой переменной в 16-ти битную знаковую
CiSi » 16 фев 2012, 18:37
Спасибо, так и предполагал, но вот как это работал понять так и не мог.