![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите разобраться в преобразовании [D7, XP]
Zheksonz © (2009-07-03 09:48:00)
Страницы: < 1 2 3 4 5 6 7 8 9 10 11 >
Доброе утро. Помогите, застрял я(((
для записи в COM порт используется функцияComPort.WriteStr(String_);
01 06 00 04 5000 - это первые шесть байт, 5000 имеет 2х байтовое значение, завершающими двумя байтами станут байты контрольной суммы.
формат этой записи, правильно воспринимаемый COM портом, следующий:String_ := #01#06#00#04#19#136 + crc16(String_);// ф-ция crc16 возвращает ещё два байта, в которых контрольная сумма всего этого набора данных, которые представлены в таком же виде... Как мне преобразовывать String_овывые или Integer_овские значения в этот формат???
Юрий Зотов (2009-07-03 19:25:00) [121]> Zheksonz (03.07.09 18:26) [80]
Не стоит обижаться. Понимаете, Вам действительно невозможно объяснить, потому что Вы не знаете основу, самые начала программирования - работу с данными (типы данных, их внутреннее представление, преобразование и т.п.). Изложить все это здесь невозможно, потому что по объему это несколько глав книги - ну у кого есть время писать здесь несколько глав книги? Да и незачем - ведь такие книги уже давно написаны.
С них Вам и нужно начинать, а вовсе не с Com-портов. Поверьте.
Zheksonz (2009-07-03 18:26:00) [122][79] ну оно и к лучшему, всё равно на выходе 0.
Anatoly Podgoretsky (2009-07-03 18:10:00) [123]> Zheksonz (03.07.2009 16:48:11) [71]
Тебя судить? Да я почти не принимаю участия в этом цирке, только прямой ответ по твоей просьбе.
Dennis I. Komarov (2009-07-03 17:57:00) [124]
> а что мне нужно???
то, что ты получил еще в [58] (только там # забыл поставить) Ты не понимаешь, что это одно и тоже только по разному отображается
т.е.
> #19#136 = #$13#$88 = #$13'€'
Zheksonz (2009-07-03 17:51:00) [125]а что мне нужно???
Dennis I. Komarov (2009-07-03 17:44:00) [126]хотя тут конечно есть, но это не число, это строка, а она вообще не нужна...
Dennis I. Komarov (2009-07-03 17:41:00) [127]
> на выходе 1388
не ври, нету у тебя такого...
Zheksonz (2009-07-03 17:33:00) [128]
> Dennis I. Komarov © (03.07.09 17:02) [73]
ну ок. я преобразовываю свои 5000 в шестнадцатиричное число:StrZn := IntToHex(zn, 2);на выходе 1388, как из этих 1388 получить #19#136
Dennis I. Komarov (2009-07-03 17:02:00) [129]
> Zheksonz (03.07.09 16:56) [72]
Ты хоть почитай, что написал, может озарение всетаки найдет:
> мне нужно из 5000 получить #19#136...
> мне не нужно #$13#$88или '#19#136'...
> > #19#136= #$13#$88
Zheksonz (2009-07-03 16:56:00) [130]
> #19#136 = #$13#$88
да ничего мне это не даёт... это тоже я уже получал, но мне не это нужно...
хоть кто-нибудь из тех кто принимал участие в обсуждении знает ответ на вопрос??? такое ощущение, что нет... т.к. мне не нужно #$13#$88 или '#19#136'... мне нужно из 5000 получить #19#136...
Zheksonz (2009-07-03 16:48:00) [131]
> Anatoly Podgoretsky © (03.07.09 16:42) [67]
а как же теория относительности??? Ваши мерки это только Ваши мерки... ведь каждому своё... Для кого-то стадно не знать сколько будет корень из 1844, а для кого-то, если он у него будет грязь под ноктями...
если даже я чего-то не знаю, это не даёт Вам права судить меня за это... это даёт вам право отмолчаться, не ответив на мой вопрос или помоч мне... но никак не подкалывать меня за это, т.к. порядочные люди так не поступают.
Dennis I. Komarov (2009-07-03 16:47:00) [132]
> я списал
Это тут и без тебя все знают... :)
> а вы пока скажите как преобразовать 5000 в #19#136
#19#136 = #$13#$88
Zheksonz (2009-07-03 16:44:00) [133]
> Dennis I. Komarov © (03.07.09 16:38) [64]
честно признаюсь, что употреблял эти операторы только в условиях, поэтому поятия не имюя что получится согрешил и в делфи получил результат равный единице. В общем выражаясь преподавательским языком, я списал.
Сергей М. (2009-07-03 16:43:00) [134]
> Zheksonz
Мне все равно не понятно, что ты вцепился мертвой хваткой в эти самые строки ?
Zheksonz (2009-07-03 16:42:00) [135]
> Dennis I. Komarov © (03.07.09 16:38) [64]
а вы пока скажите как преобразовать 5000 в #19#136
Anatoly Podgoretsky (2009-07-03 16:42:00) [136]> Zheksonz (03.07.2009 16:33:02) [62]
Ты точно хочешь это узнать?
Тогда ты занимаешься не своим делом и давно.
Dennis I. Komarov (2009-07-03 16:40:00) [137]тогда рассказывай откуда ты взял #19 и #136?
Dennis I. Komarov (2009-07-03 16:38:00) [138]
> что я делаю не так?
посчетай
1 or 2 and 4 = ?
без дельфы
Zheksonz (2009-07-03 16:37:00) [139]
> почему? Мой квакулятор говорит что 5000 = $1388
5000 = 1388 = #19#136 и не равно '#19#136'
вот мне нужно получить из, например, 5000 - #19#136, чтобы присвоить это значение в переменную строкового типа.
Dennis I. Komarov (2009-07-03 16:33:00) [140]
> А если 12 бит
да хоть 11, я же говорю, карандаш в зубы и вперед, до полного понимания сущностей "1 и 0"