Показать сообщение отдельно
  #7  
Старый 03.11.2015, 12:07
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Код:
var
  mask: DWORD;
  src: DWORD;
  dst: DWORD;
  i: Integer;

  function IntToBinStr(dw: DWORD): string;
  var
    i: Integer;
  begin
    Result:='';
    for i:=1 to 32 do
    begin
      Result:=IntToStr(dw and 1)+Result;
      dw:=dw shr 1;
    end;
  end;

begin
  mask:=$5200F421;
  src:=$6755ED0B;
  dst:=0;
  Edit1.Text:=IntToBinStr(mask);
  Edit2.Text:=IntToBinStr(src);
  for i:=1 to 32 do
  begin
    if (mask and $80000000)<>0 then
    begin
      dst:=dst shl 1;
      if (src and $80000000)<>0 then dst:=dst or 1;
    end;
    mask:=mask shl 1;
    src:=src shl 1;
  end;
  Edit3.Text:=IntToBinStr(dst);
end;
работает с DWORD
__________________
Пишу программы за еду.
__________________
Ответить с цитированием