Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.11;
Скачать: CL | DM;

Вниз

Дваичный код   Найти похожие ветки 

 
Jonikeidg   (2005-08-16 07:52) [0]

Скажите пожалуйста где можно скачать исходник ну в крайнем случаи exe программы которая переводит слова и фразы в дваичный код.
Ну на пример
Edit1:=Привет
Edit2:=100110
зарание спасибо


 
Пип   (2005-08-16 08:11) [1]

function GetBinaryFromChar (const ch : char) : string;
var i : integer;
    a : byte;
begin
    SetLength(Result,8);
    a := ord(ch);
    for i := Low(Binary) to High(Binary) do
     if (a and Binary[i]) = Binary[i]
       then Result[i] := "1"
       else Result[i] := "0"
end;

function GetBinaryFromText (const s : string) : string;
var i : integer;
begin
    Result := "";
    for i := 1 to length(s) do Result := Result + GetBinaryFromChar(s[i])
end;


 
KilkennyCat ©   (2005-08-16 08:12) [2]

У меня есть исходник, могу скинуть на мыло. Весит 560 мегабайт.

Но можно и проще - воспользоваться функцией  HexToBin


 
Пип   (2005-08-16 08:13) [3]

Да,

const
       Binary : array[1..8] of byte = (1,2,4,8,16,32,64,128);


 
Пип   (2005-08-16 08:31) [4]

В обратку:

function GetCharFromBinary(const s : string) : char;
var i : integer;
    a : byte;
begin
    a := 0;
    for i := 1 to length(s) do
     if s[i] = "1" then a := a + Binary[i];
    Result := chr(a)
end;

function GetTextFromBinary (const s : string) : string;
var i : integer;
begin
    if length(s) mod 8 > 0 then Exception.Create("Èäèòå íà þã!");
    SetLength(Result, length(s) div 8);
    for i := 1 to length(Result) do
      Result[i] := GetCharFromBinary(Copy(s,(i-1) shl 3 + 1,8))
end;


> [2] KilkennyCat ©   (16.08.05 08:12)

? - не выспался?


 
evvcom ©   (2005-08-16 10:43) [5]


> Jonikeidg   (16.08.05 07:52)

Ты знаешь, а все файлы итак хранятся в двоичном виде.


 
Kerk ©   (2005-08-16 11:11) [6]


> Edit1:=Привет
> Edit2:=100110

Нифигасе


 
Jeer ©   (2005-08-16 12:54) [7]

Тут многие начинающие архиваторами мучаются:)
Так вот же оно - открытие !
Сжатие текста в 8 раз !


 
Defunct ©   (2005-08-16 13:54) [8]

Да "дваичный код" рулит


 
syte_ser78 ©   (2005-08-16 14:40) [9]

Jonikeidg   (16.08.05 7:52)
Edit1:=Привет
Edit2:=100110

????
Алгоритм поясни


 
Думкин ©   (2005-08-16 15:08) [10]

> syte_ser78 ©   (16.08.05 14:40) [9]

Это стиль писаний gn. Он так любил. Но автор - плохо прописал.


 
Digitman ©   (2005-08-16 16:09) [11]

бред какой-то ..


 
rts111 ©   (2005-08-16 16:49) [12]

Digitman © (16.08.05 16:09) [11]

Почему значек © у Digitman синий,
а у всех остальных темно-синий?


 
Kerk ©   (2005-08-16 16:54) [13]

rts111 ©   (16.08.05 16:49) [12]

Это некорректный вопрос. Ну и что что голубой? Мы его не осуждаем.


 
Digitman ©   (2005-08-16 16:55) [14]


> rts111 ©   (16.08.05 16:49) [12]


ну малясь посинел .. "поголубел", если угодно ..

а что, низя ?

"Непохожий на тебя .." (с) ?


 
Defunct ©   (2005-08-16 17:00) [15]

rts111 ©   (16.08.05 16:49) [12]

дык, выцвел просто.

есть еще красные значки - у пожарников.
а без значков - "те кто разговаривает на дваичном коде".


 
Defunct ©   (2005-08-16 17:02) [16]

всмысле "ботает" а не разговаривает.
забыл, что "на дваичном коде" можно только "ботать".


 
Digitman ©   (2005-08-16 17:03) [17]


> Defunct ©   (16.08.05 17:02) [16]


в точку.


 
panov ©   (2005-08-16 17:07) [18]

Обманываете, я не пожарник.
Хотя огетушителем(он же плюсомет) пользоваться умею.


 
Digitman ©   (2005-08-16 17:18) [19]


> panov ©   (16.08.05 17:07) [18]


> огетушителем(он же плюсомет) пользоваться умею


э-э-э .. знаем, Саша, знаем !
потому и не рискуем)


 
Jonikeidg   (2005-08-16 18:12) [20]

Не могли бы вы написать как конкретно нужно использовать этот код
function GetCharFromBinary(const s : string) : char;
var i : integer;
   a : byte;
begin
   a := 0;
   for i := 1 to length(s) do
    if s[i] = "1" then a := a + Binary[i];
   Result := chr(a)
end;

function GetTextFromBinary (const s : string) : string;
var i : integer;
begin
   if length(s) mod 8 > 0 then Exception.Create("????? ?? ??!");
   SetLength(Result, length(s) div 8);
   for i := 1 to length(Result) do
     Result[i] := GetCharFromBinary(Copy(s,(i-1) shl 3 + 1,8))
end;
А то я в Делфи полный нуль, пожалуйста напишите что и куда нужно поместить.


 
Думкин ©   (2005-08-17 06:21) [21]

> Jonikeidg   (16.08.05 18:12) [20]

А как его еще можно использовать? Я думал, меня будут на уровне оптимизации пинать. А -... если не знаете - зачем спрашиваете на форуме Дельфистов?

Использовать - тупо.Вот создали вы текст.

1. "Текст"

GetBinaryFromText("Текст")
Получили:

2. "0100101110100111010101111000111101001111"

И что дальше?

3. А вот что:
GetTextFromBinary("0100101110100111010101111000111101001111")

"Текст"

А если нуль - учись. Это оправдание для соседских девок на лавке. Мужики этого не просекают.

"????? ?? ??!" там было написано: "Идите на юг!" :)

Я думал, что оптимизировать начнут - а ... как обычно. опошлили.


 
Думкин ©   (2005-08-17 06:51) [22]

Ге, и ... эта - порядок символов в бинарке - сменить . Гы. Лопухнулся.


 
Jonikeidg   (2005-08-18 13:02) [23]

это тоя понял я не понял где посмотреть результат проверки


 
Думкин ©   (2005-08-18 13:04) [24]


> Jonikeidg   (18.08.05 13:02) [23]

TLabel.Caption
Tedit.Text


 
Jonikeidg   (2005-08-18 16:44) [25]

А как именно вывести туда информацию?


 
KilkennyCat ©   (2005-08-18 16:47) [26]


> [25] Jonikeidg   (18.08.05 16:44)


оператором присваивания. Состоит из двух символов: двоеточие и равно. Пишутся слитно, в соответственном порядке. Ставится между тем, кому  присвоить, и тем, кого присвоить.


 
KilkennyCat ©   (2005-08-18 16:52) [27]

а я бы все равно через HexToBin сделал бы :)


 
Digitman ©   (2005-08-18 17:08) [28]


> Jonikeidg   (18.08.05 16:44) [25]


прекращай клоунаду и садись за изучение букварей.



Страницы: 1 вся ветка

Текущий архив: 2005.09.11;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.025 c
14-1124356955
Ilya39
2005-08-18 13:22
2005.09.11
компилятор C#


3-1122468976
vok
2005-07-27 16:56
2005.09.11
Двусторонняя печать


14-1123227421
Piter
2005-08-05 11:37
2005.09.11
Бакнелл - "Фундаментальные алгоритмы и структуры данных в Delphi"


1-1124289353
GanibalLector
2005-08-17 18:35
2005.09.11
Ini.SectionExists


14-1124122766
Andy BitOff
2005-08-15 20:19
2005.09.11
Как узнать что это за адреса?