![]() |
|
#1
|
|||
|
|||
![]() Здравствуйте,
В процессе программирования у меня возникла проблема. Кодирование происходит по алгоритму (взято с википедии): Код:
function BinToGray(b: integer): integer; begin BinToGray := b xor (b shr 1) end; При вводе числа например 10110 программа выведет 13505, что не верно, ведь результат должен быть бинарным. Ошибка конечно очевидна. Но я совсем не представляю как это организовать. Xor адекватно работает с числами в 16-ричном представлении (если я не напутал), т.е. числа с $. Но опять же как перевести псевдо-бинарное число в шестнадцатиричную запись, а потом наоборот? |