Вниз
Скачать: CL | DM;

Как организовать зеркальную замену битов в байте?   Найти похожие ветки 

 
Aleksandr ©   (2004-05-11 14:58) [0]

Ну, чтобы последний бит обменялся местами с первым, второй с предпоследним и т.д.?


 
Digitman ©   (2004-05-11 15:06) [1]

операции сдвига знакомы ?


 
BillyJeans ©   (2004-05-11 15:10) [2]

сдвига с переносом...


 
Romkin ©   (2004-05-11 15:14) [3]

Вроде так пойдет:

function reverse (x: byte): byte;
begin
 x := (x and $55) shl 1 or (x shr 1) and $55;
 x := (x and $33) shl 2 or (x shr 2) and $33;
 x := (x and $0F) shl 4 or (x shr 4) and $0F;
 Result := x;
end;


 
WebErr ©   (2004-05-11 15:49) [4]

Есть асмовая команда, что-то вроде sor ax, 2 ... не помню точно...


 
Aleksandr ©   (2004-05-11 16:15) [5]

Спасибо, я надеялся на асмовское, но пойдет и сдвигами!


 
Digitman ©   (2004-05-11 16:23) [6]


> Aleksandr ©   (11.05.04 16:15) [5]


здрасть ! можно подумать, что i80х86 не имеет соотв.маш.инструкций ...


 
Anatoly Podgoretsky ©   (2004-05-11 16:41) [7]

BillyJeans ©   (11.05.04 15:10) [2]
Про переносы забыть, если без перехода на ассемблерные команды


 
WebErr ©   (2004-05-11 16:44) [8]


> если без перехода на ассемблерные команды

Чем Вам Асм не угодил? ;)


 
Anatoly Podgoretsky ©   (2004-05-11 16:46) [9]

Мне угодил, но вот проблема будет с переходом на Д8, а для решения данной задачи ассемблерный уровень не требуется!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
6-1080606162
Керик
2004-03-30 04:22
2004.05.23
Фактическое число байт


1-1082832026
Kott
2004-04-24 22:40
2004.05.23
MS Word


14-1083516596
Maxim Vetera
2004-05-02 20:49
2004.05.23
Заглядывая в будущее!


14-1083224569
Kerk
2004-04-29 11:42
2004.05.23
Проездной


14-1083653796
sly`ka
2004-05-04 10:56
2004.05.23
передача голоса по сети




   Наверх