Показать сообщение отдельно
  #1  
Старый 18.05.2008, 22:57
Nisan Nisan вне форума
Прохожий
 
Регистрация: 18.05.2008
Сообщения: 6
Репутация: 10
По умолчанию Двоичное кодирование

Здравствуйте. У меня есть исходник:

Код:
type
  Bits=array [0..7] of byte;

procedure dec2bin(x:byte; var b:Bits);
var bit,i:byte;
begin
  for i:=7 downto 0 do
  begin
    if (x and (1 shl i))<>0 then bit:=1 else bit:=0;
    b[i]:=bit;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
  
Var    f:TextFile;
     ch:char;
      b:Bits;
       i: Integer;

  s: string;

begin
   Memo1.Clear;
   AssignFile(f,'12345.txt');//Связываем переменную f с выбранным файлом
  Reset(f);//Открываем файл для чтения
  while not(eof(f)) do//это условие позволяет определить конец файла
  begin
  read(f,ch);//Считываем первый символ теста
    {Тут вставь различные обраоботки}
    dec2bin(Ord(ch),b);
      for i:= 0 to 7 do
    s:= s + IntToStr(b[i]);
      Memo1.Lines.Add(s);
       {Тут вставь вывод в Memo}
  end;
  CloseFile(f);//Закрываем файл
  Edit1.Text:=IntToStr(Memo1.Lines.Count);

end;

procedure TForm1.Button2Click(Sender: TObject);
begin
 Close;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
 Memo1.Lines.SaveToFile('s.txt');
end;
Admin: Пользуемся тегами!

Который переводит символы в двоичный код. Акто мне подскажет : как сделать обратные действия?
Ответить с цитированием