Доставил один юзер себе памяти с 32 до 128 Mb. Через некоторое время его спрашивают:
- Ну и что, 98-ой быстрее работает?
- Да, раньше он тормозил, а затем вис, а теперь он сразу виснет.
unit BitsForm;
interfaceuses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComCtrls, StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
GroupBox1: TGroupBox;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
CheckBox4: TCheckBox;
CheckBox5: TCheckBox;
Edit1: TEdit;
UpDown1: TUpDown;
procedure Edit1Change(Sender: TObject);
procedure CheckBoxClick(Sender: TObject);
private{ Private declarations }public{ Public declarations }end;
var
Form1: TForm1;
implementation{$R *.DFM}function IsBitOn (Value: Integer; Bit: Byte): Boolean;
begin
Result := (Value and (1 shl Bit)) <> 0;
end;
function TurnBitOn (Value: Integer; Bit: Byte): Integer;
begin
Result := Value or (1 shl Bit);
end;
function TurnBitOff (Value: Integer; Bit: Byte): Integer;
begin
Result := Value andnot (1 shl Bit);
end;
procedure TForm1.Edit1Change(Sender: TObject);
var
I: Integer;
CheckBox: TCheckBox;
beginfor I := 1 to 5 dobegin
Checkbox := FindComponent (
'Checkbox' + IntToStr (I)) as TCheckbox;
CheckBox.Checked :=
IsBitOn (UpDown1.Position, CheckBox.Tag);
end;
end;
procedure TForm1.CheckBoxClick(Sender: TObject);
var
Val: Integer;
begin
Val := UpDown1.Position;
with Sender as TCheckBox doif Checked then
Val := TurnBitOn (Val, Tag)
else
Val := TurnBitOff (Val, Tag);
UpDown1.Position := Val;
end;
end.
В статье описывается тестирование битов в программном обеспечении с использованием Delphi, где пользователь может выбрать количество памяти от 32 до 128 Мб и наблюдать за изменениями работы приложения.
Комментарии и вопросы
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.