![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
И снова...и опять HEX [D7, XP]
MOO © (2008-01-05 22:42:00)Воопсчем так, загружаю я фалег с помощью потока TFileStream и с помощью него читаю определенный блок байтов например: " 00 00 00 D465 7F"
Я читаю выделенные четыре байта, но выходит так, что он их переворачивает и они становятся вида: " D4 00 00 00"
Может я что то неправильно делаю, но видел HEX редактор сделанный на DElphi там точно также. Есть какой-нибудь другой способ уже готовый или всё таки самому писать свою функцию?
{RASkov} (2008-01-06 01:16:00) [1]> [55] MOO (06.01.08 01:13)
Вот эту можно почитать до кучи
http://www.podgoretsky.com/ftp/Docs/Delphi/Podgoretsky/bits.html
.... пригодится)
{RASkov} (2008-01-06 01:13:00) [2]> [53] Германн © (06.01.08 01:06)
Будем надеяться, что "тута никто никому ничего не сломал" :)
MOO (2008-01-06 01:13:00) [3]
> DVM © (06.01.08 01:04) [52]
Читаю...
{RASkov} (2008-01-06 01:08:00) [4]> [53] Германн © (06.01.08 01:06)
Эх... точно (
:)
Германн (2008-01-06 01:06:00) [5]
> {RASkov} © (06.01.08 01:03) [51]
Диалог из недавно обсуждавшегося фильма:
Ипполит - Ты мне руку сломаешь.
Женя - Ничего. Сам сломаю, сам и вылечу.
:)
DVM (2008-01-06 01:04:00) [6]
> MOO
кстати, вот почитай про порядок байт и тому подобное:
http://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D1%80%D1%8F%D0%B4%D0%BE%D0%BA_%D0%B1%D0%B0%D0%B9%D1%82%D0%BE%D0%B2
{RASkov} (2008-01-06 01:03:00) [7]> [50] MOO (06.01.08 00:54)
> > {RASkov}
>
> Так всё таки и надо зачепить меня гг ;)
Да не волнуйся ты так, все будет в шоколаде. Если, что зачипим, причипим.... вообщем, как говорится - поможем чем сможем :)
MOO (2008-01-06 00:54:00) [8]
> palva © (06.01.08 00:43) [48]
>
Ну не знай, если бы я учился в Высшем Учебном то может быть мой вопрос и был похожим на все эти.
> {RASkov}
Так всё таки и надо зачепить меня гг ;)
{RASkov} (2008-01-06 00:48:00) [9]> [48] palva © (06.01.08 00:43)
> Интересующихся мало.
Интерес бывает разный :(
Мало ли, что за файлик, форматом которого заинтересовался автор....
Шучу конечно, но... :)
palva (2008-01-06 00:43:00) [10]> Поэтому ничего серьезного, просто интерес
Молодец. А то у нас тут все то препод задал, то начальник приказал. Противно вопросы читать. Интересующихся мало.
MOO (2008-01-06 00:42:00) [11]
> palva
> DVM
Спасибо, мда мне до этого далеко ;)
MOO (2008-01-06 00:40:00) [12]
> Ты хочешь ХексВьювер сделать?
Нет, я просто разбираюсь с форматом файла одного. Поэтому ничего серьезного, просто интерес
DVM (2008-01-06 00:40:00) [13]
> Перевернуть целое можно такой функцией
надо же. как просто.
{RASkov} (2008-01-06 00:39:00) [14]> [40] DVM © (06.01.08 00:30)
> [43] palva © (06.01.08 00:38)
Колдуны :)
palva (2008-01-06 00:38:00) [15]Перевернуть целое можно такой функцией
function revint(n:Integer): Integer;
asm
BSWAP EAX
end;
вот пример использования
{$APPTYPE CONSOLE}
uses SysUtils;
function revint(n:Integer): Integer;
asm
BSWAP EAX
end;
var
d: Integer;
begin
d := $12345678;
WriteLn(IntToHex(revint(d), 8)); // 78563412
end.
{RASkov} (2008-01-06 00:36:00) [16]> [39] MOO (06.01.08 00:27)
> Видимо вы просто пропускали уроки Телепатии.
Видимо....
Я в начале тебя об этом предупредил :)
Ты хочешь ХексВьювер сделать?
Если да, то может все-таки лучше с байтами работать, нежели с более "тяжелыми" элементами, а потом над ними еще и колдовать....
MOO (2008-01-06 00:34:00) [17]Всем спасибо...DVM мне бы хотелось конечно, самому дойти до этой функции.
DVM (2008-01-06 00:30:00) [18]
> Вот и я об этом думаю
function ReverseBytes(const N: LongInt): LongInt;
begin
Result := ((N and $000000FF) shl 24) or ((N and $0000FF00) shl 8) or ((N and $00FF0000) shr 8) or ((N and $FF000000) shr 24);
end;
MOO (2008-01-06 00:27:00) [19]
> Делай как знаешь....
> Ты толком не можешь объяснить, что хочешь.... к советом
> прислушиваться не хочешь....
> Какие могут быть предложения???
Для меня то понятно, что я объяснил. Видимо вы просто пропускали уроки Телепатии.
> DVM ©
Вот и я об этом думаю
palva (2008-01-06 00:24:00) [20]А потом в цикле каждый байт переводи в Hex Хлопотно, но надежно.