Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  364

•  TDictionary Custom Sort  3 500

•  Fast Watermark Sources  3 246

•  3D Designer  5 008

•  Sik Screen Capture  3 498

•  Patch Maker  3 703

•  Айболит (remote control)  3 906

•  ListBox Drag & Drop  3 166

•  Доска для игры Реверси  82 928

•  Графические эффекты  4 104

•  Рисование по маске  3 397

•  Перетаскивание изображений  2 769

•  Canvas Drawing  2 920

•  Рисование Луны  2 725

•  Поворот изображения  2 340

•  Рисование стержней  2 228

•  Paint on Shape  1 627

•  Генератор кроссвордов  2 311

•  Головоломка Paletto  1 824

•  Теорема Монжа об окружностях  2 330

•  Пазл Numbrix  1 720

•  Заборы и коммивояжеры  2 094

•  Игра HIP  1 315

•  Игра Go (Го)  1 263

•  Симулятор лифта  1 512

•  Программа укладки плитки  1 259

•  Генератор лабиринта  1 585

•  Проверка числового ввода  1 404

•  HEX View  1 538

•  Физический маятник  1 389

 
скрыть


Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Как работать с битами



Есть два способа.

Низкоуровневый подход обеспечивается логическими операциями :


var
  I : integer;
  N : integer;                       // Номер бита в диапазоне от 0..SizeOf(TYPE)*8 - 1
begin
  I := I or (1 shl N);               // установка бита
  I := I and not (1 shl N);          // сброс бита
  I := I xor (1 shl N);              // инверсия бита
  if (i and (1 shl N)) <> 0 then...  // проверка установленного бита
end;

Высокоуровневый подход опирается на представление числа в виде множества:


type
  TIntegerSet = set of 0..SizeOf(Integer)*8 - 1;
var
  I : Integer;
  N : Integer;
begin
  Include(TIntegerSet(I), N);     // установили N-ный бит в 1
  Exclude(TIntegerSet(I), N);     // сбросили N-ный бит в 0
  if N in TIntegerSet(I) then...  // проверили N-ный бит
end;








Copyright © 2004-2024 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте