Вниз
Скачать: CL | DM;

HexToBinary To Integer - проблема с преобразованием   Найти похожие ветки 

← →
koha!   (2008-12-19 17:40) [0]

Парюсь по извлечению из hex-кодировки числа через бинарные данные


var
  temp,: string;
  I: integer;
  buf: array of char;

begin

//первый способ:
 temp:="000000ff";
 b := 0;
 setlength(buf,length(temp) div 2);
 HexToBin(PChar(temp),Pointer(buf), length(temp) div 2);
 mm.Lines.Add("Buf = "+IntToStr(integer(buf)));

//второй способ:
 HexToBin(PChar(temp),Pointer(@I), length(temp) div 2);
 mm.Lines.Add("Buf = "+IntToStr(I);


В любом случае не правильно возвращает значение
как в этом случае правильно преобразовать бинарные данные в число I: integer; Чего я не допонимаю?


← →
Медвежонок Пятачок ©   (2008-12-19 17:59) [1]

Caption := IntToStr(StrToInt("$FFFFFFFF"));


← →
koha!   (2008-12-19 18:03) [2]


> Медвежонок Пятачок ©   (19.12.08 17:59) [1]


про это я знал, но мне нужно в том способе разобраться - это принципиально.


← →
Медвежонок Пятачок ©   (2008-12-19 18:13) [3]

и что? отладчик украли ?


← →
koha!   (2008-12-19 18:42) [4]


> Медвежонок Пятачок ©   (19.12.08 18:13) [3]
> и что? отладчик украли ?


Да украли..., угу, и с пециально сигналы из космоса послали, что бы я сюда пошел и спросил...

И что в отладике я должен увидеть был? он там байты возвращает в таком прорядке, например число 7 hex: 00000007 = [0][0][0][7]
но при приведении типа Iinteger([0][0][0][7]) <> 7 вот и вопрос почему в каком порядке байты должны быть?


← →
koha!   (2008-12-19 18:46) [5]

возможно смещения нехватает какого-то?


← →
Медвежонок Пятачок ©   (2008-12-19 18:50) [6]

а может порядок байт интегера не такой как ты ожидаешь?


← →
koha!   (2008-12-19 18:53) [7]


> Медвежонок Пятачок ©   (19.12.08 18:50) [6]
> а может порядок байт интегера не такой как ты ожидаешь?


- а какой?


← →
Медвежонок Пятачок ©   (2008-12-19 18:57) [8]

var v,i : integer; pb : pByte; cStrInt,cStr : string;
begin
v := 7;
cStrInt := IntToHex(v,8);
pb := @v; cStr := "";
for i := 1 to 4 do
 begin
  cStr := cStr + IntToHex(pb^,2);
  Inc(pb);
 end;
ShowMessage(cStrInt + #13#10 + cStr);
end;


← →
koha!   (2008-12-19 19:14) [9]


> Медвежонок Пятачок ©   (19.12.08 18:57) [8]


впоне доходчиво, сенкс..



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.008 c
2-1229513471
Leks
2008-12-17 14:31
2009.02.01
SpeedButton со скругленными углами


15-1228646258
axis_of_evil
2008-12-07 13:37
2009.02.01
копировать пользователя


2-1229527656
Tatb9na
2008-12-17 18:27
2009.02.01
Графики


6-1197657416
СССР
2007-12-14 21:36
2009.02.01
IdHTTP Get и Post таймаут


15-1222413251
Василий Жогарев
2008-09-26 11:14
2009.02.01
PostgreSQL, MySQL, IB, FB




   Наверх