chaplin.u@gmail.com Опубликовано 14 августа, 2016 Поделиться Опубликовано 14 августа, 2016 подскажите пожалуйста метод получения строки из массива шестнадцатиричных чисел ( 01, 02 ..0А, 0В,). Для визуального контроля. Цитата Ссылка на комментарий
0 POV Опубликовано 14 августа, 2016 Поделиться Опубликовано 14 августа, 2016 Что такое массив шестнадцатеричных чисел? Если это тестовое изображение числа, то это одно, а если нет.. то в чём вопрос? Цитата Ссылка на комментарий
0 chaplin.u@gmail.com Опубликовано 14 августа, 2016 Автор Поделиться Опубликовано 14 августа, 2016 6 часов назад, chaplin.u@gmail.com сказал: массива шестнадцатиричных чисел ( 01, 02 ..0А, 0В,) это то что я написал. числа от 1 до 16. подробнее почитай тут :https://ru.wikipedia.org/wiki/Шестнадцатеричная_система_счисления со строками ты наверное знаком. я так думаю что есть простой способ выводить на экран строку показывающую что у меня передаётся. Цитата Ссылка на комментарий
0 DirtyBorov Опубликовано 14 августа, 2016 Поделиться Опубликовано 14 августа, 2016 8 часов назад, chaplin.u@gmail.com сказал: подскажите пожалуйста метод получения строки из массива шестнадцатиричных чисел ( 01, 02 ..0А, 0В,). Для визуального контроля. Допили для себя: /// AHex - строка вида "A1,B2,C3" /// Del - резделитель function HexToBytes(const AHex: string; const Del: string = ','): TBytes; var i: Integer; S: TStringDynArray; begin S := SplitString(Trim(AHex),Del); SetLength(Result, Length(S)); for i := Low(S) to High(S) do Result[i] := StrToIntDef('$'+S[i],0); end; function BytesToStr(const ABytes: TBytes): string; var i: integer; begin Result := EmptyStr; for I := Length(ABytes)-1 Downto 0 do Result := Chr(ABytes[I] + 48) + Result; end; Цитата Ссылка на комментарий
0 POV Опубликовано 14 августа, 2016 Поделиться Опубликовано 14 августа, 2016 (изменено) 5 часов назад, chaplin.u@gmail.com сказал: это то что я написал. числа от 1 до 16. Даже в этой короткой фразе ошибка ... чего уж от формулировки вопроса ждать )) За тебя исправлю.. так вот, есть массив ДВОИЧНЫХ чисел, которые согласно решаемой задаче ограничены 16 значениями. От 0 до 15. Соответственно тебе поможет IntToHex. Но неужто такая простая вещь оказалась не по силам? Видимо не числа "от 1 до 16" там хранятся? Изменено 14 августа, 2016 пользователем POV Цитата Ссылка на комментарий
0 kami Опубликовано 15 августа, 2016 Поделиться Опубликовано 15 августа, 2016 (изменено) 10 часов назад, POV сказал: массив ДВОИЧНЫХ чисел Тогда уж "есть массив ЦЕЛЫХ чисел". 16-ричное, двоичное, восьмиричное, десятичное - это всего лишь строковые human-readable представления этих чисел. Изменено 15 августа, 2016 пользователем kami Цитата Ссылка на комментарий
0 Камышев Александр Опубликовано 15 августа, 2016 Поделиться Опубликовано 15 августа, 2016 вот все злые, пристали к программеру, наговорили всякого, человек хочет тупо массив данных в HEX просматривать, что от него уходит... IntToHex используй, вот код на си: AnsiString s; for ( unsigned int i = 0; i < size; i++ ) s += IntToHex( ( (unsigned __int8)(data[i] ), 2 ) + " "; на выходе строка HEXов через пробел Rusland и chaplin.u@gmail.com 2 Цитата Ссылка на комментарий
0 chaplin.u@gmail.com Опубликовано 15 августа, 2016 Автор Поделиться Опубликовано 15 августа, 2016 (изменено) да, пора кончать трёп. хоть кто-то понял. Спасибо Александр ! попробую. DirtyBorov извини но я с Дельфи не близко знаком и код у меня похожий глючит. Изменено 15 августа, 2016 пользователем chaplin.u@gmail.com Цитата Ссылка на комментарий
0 kami Опубликовано 15 августа, 2016 Поделиться Опубликовано 15 августа, 2016 1 час назад, Камышев Александр сказал: вот все злые, пристали к программеру, наговорили всякого, Потому что программер должен понимать разность между хранением чисел и их представлением. Цитата Ссылка на комментарий
0 Камышев Александр Опубликовано 15 августа, 2016 Поделиться Опубликовано 15 августа, 2016 1 минуту назад, kami сказал: Потому что программер должен понимать разность между хранением чисел и их представлением. разница между бинарными данными и их представлением в виде строки шестнадцатеричных чисел chaplin некорректно сформулировал вопрос, правильно сформулированный вопрос - уже половина ответа, да профессионализм приходит с опытом Цитата Ссылка на комментарий
0 chaplin.u@gmail.com Опубликовано 15 августа, 2016 Автор Поделиться Опубликовано 15 августа, 2016 кстати я и не говорил что я профессионал. я самоделкин. делаю проект в одиночку: - электрическую схему прибора в Оркаде - развожу печатную плату в Аллегро - делаю программу ( embeded real time) для контроллера от Cypress - мульти-платформенную апликацию для смартфонов на Android / iOS извините господа но у меня нет времени на диспуты. вот закончу проект и тогда свами подиспутирую. И лет мне уже 57... Я программы писал ещё на перфокартах на Фортране. Равиль Зарипов (ZuBy) 1 Цитата Ссылка на комментарий
Вопрос
chaplin.u@gmail.com
подскажите пожалуйста метод получения строки из массива шестнадцатиричных чисел ( 01, 02 ..0А, 0В,). Для визуального контроля.
Ссылка на комментарий
10 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.