|
|
|
что делать без безнакового byte
|
|||
|---|---|---|---|
|
#18+
Добрый день господа и дамы) Мне необходимо почтитать crc 8, примеров кода я нашла валом. Например, ниже приведенный. Но проблема в том, что в Java все типы данных знаковые. И в масив я не могу положить числа свыше 0x80, а они есть. Если использовать short, я так понимаю, что там подругому будет формироваться число, ведь переполнения не случится во время. Если не правильно понимаю, объясните мне пожалуйста. Потому что прочитав много тем о контрольной сумме, сложилось впечатление, что люди в байтовый массивах используют диапазон только знакового байта. А у меня данные из ком пората и они лежат в диапазоне 0 .. 255. Что делать? Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2015, 15:11 |
|
||
|
что делать без безнакового byte
|
|||
|---|---|---|---|
|
#18+
Нормально все будет с преобразованием туда-сюда. 17506892 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2015, 15:16 |
|
||
|
что делать без безнакового byte
|
|||
|---|---|---|---|
|
#18+
wadman, я не совсем понимаю вашу идею. Допустим есть такое сообщение 01030441A9AE14. Его заливаем в массив [0x01, 0x03, 0x04, 0x41, 0xA9, 0xAE, 0x14]. И этот массив необходимо вставить в метод, но А9 и АЕ туда не влазит, потому что массив байтовый, и получается исключение. Вы предлагаете вычитать или добавлять определенный диапазон, чтобы поместиться в пределы байтового массива? Я пробовала пользоваться массивом short, но результат получается неправильный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2015, 10:46 |
|
||
|
что делать без безнакового byte
|
|||
|---|---|---|---|
|
#18+
gvenihvivar, 8 бит это всегда 8 бит. Знаковый это байт или беззнаковый - без разницы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2015, 15:12 |
|
||
|
что делать без безнакового byte
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, спасибо, именно это меня и интересовало. no56892, я пробовала считать этим алгоритмом, но у меня не сошлось ни с одной суммой посчитанной в онлайн калькуляторе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2015, 17:44 |
|
||
|
что делать без безнакового byte
|
|||
|---|---|---|---|
|
#18+
соответствие набора бит числу - это всего-лиш соглашение, пускай оно вас не волнует вы смотрите на байт не как на десятичное число, а как на 8 бит. если хотите, а вам сделаю println() который по байту будет печатать числа в диапазоне 0..255 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2015, 22:40 |
|
||
|
что делать без безнакового byte
|
|||
|---|---|---|---|
|
#18+
gvenihvivarИ в масив я не могу положить числа свыше 0x80, а они есть.Положить можно, но только с явным преобразованием Код: java 1. 2. см. bytesToHex() В данном случае явное преобразование необходимо по след. причинам: - по умолчанию в Java любое целочисленное число будет воспринято как int . - и не существуют спец. литерала для указания, что это byte ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2015, 01:38 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39114531&tid=2124624]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
147ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 461ms |

| 0 / 0 |
