Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.17;
Скачать: CL | DM;

Вниз

Бинарные перестановки   Найти похожие ветки 

 
nof   (2004-10-03 23:02) [0]

Задача Есть 2 бинарных числа: например
1)11001000
2)  110010

Как организовать перестановку из старшего разряда 1 числа в младший 2-ого типа должно получится:
3)1001000 - убрали старший бит
4)1100101  - поставили младший


 
KilkennyCat ©   (2004-10-03 23:07) [1]

Logical (bitwise) operators


 
DrPass ©   (2004-10-03 23:13) [2]

a:=11001000 shr 7
b:=(110010 shl 1) or a


 
GuAV ©   (2004-10-03 23:45) [3]

Типа так

procedure Z(var A, B: Byte); // можно Word или DWord - что требуется.
asm
 RCL  [A], 1
 SHR  [A], 1
 RCL  [B], 1
end;


 
GuAV ©   (2004-10-03 23:52) [4]

то есть что я написал неверно, и ваще я что-то зацикливатться на асм стал. Вот так надо:

 B:=(B shl 1) or ord((A and $80)<>0);
 A:=A and not $80;

если не Byte а Word или LongWord, то соотв маска $8000 или $80000000



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

Текущий архив: 2004.10.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.045 c
1-1096735064
Charly22
2004-10-02 20:37
2004.10.17
Закрытие дочерней формы или всего приложения.


3-1095422021
Bless
2004-09-17 15:53
2004.10.17
Как лучше всего выйти из следующей ситуации:


14-1096017589
Prohodil Mimo
2004-09-24 13:19
2004.10.17
Я б в программеры пошёл, пусть меня научат!


9-1087222996
Uncle Archi
2004-06-14 18:23
2004.10.17
OpenGL


1-1096911783
lipskiy
2004-10-04 21:43
2004.10.17
Как в TAnimate проиграть авишку прямо из ресурсов?