Преобразование целого числа в набор битов и обратно
Автор: Delirium
WEB-сайт: http://delphibase.endimus.com
{ **** UBPFD *********** by delphibase.endimus.com ****
>> Преобразование целого числа в набор битов и обратно
При операциях с битовыми значениям удобно обращаться к кажджому биту,
как к элементу строки, причём так, чтобы 1-й бит - был 1-й символ строки,
а не последний.
Зависимости: Windows, SysUtils, Math
Автор: Delirium, Master_BRAIN@beep.ru, ICQ:118395746, Москва
Copyright: Delirium (Master BRAIN)
Дата: 29 мая 2002 г.
***************************************************** }
function IntToRBin32(Value: Cardinal): string;
var
i: integer;
begin
SetLength(Result, 32);
for i := 1 to 32 do
if (Value shl (i - 1)) shr 31 = 0 then
Result[33 - i] := '0'
else
Result[33 - i] := '1';
end;
function RBin32ToInt(Value: string): Cardinal;
var
i: integer;
begin
Result := 0;
for i := 1 to Length(Value) do
if Value[i] = '1' then
Result := Result + Round(IntPower(2, i - 1));
end;
|