2010-10-08 7 views
1

alt textXXD проблемы бинарной свалки

СОБРАННЫЙ выход в том формате, который следует ожидать от XXD или же присутствие Bizzare символов справа предлагает я сделал что-то неправильно?

Я пытаюсь сериализовать простой связанный список, и это результат, который я получаю. Не удалось ли удалить ссылочный символ «\ 0» из сериализации, вызвав ошибку?

ответ

1

Я предполагаю, что вы сериализацию, как двоичного не как строк, так это нормально. Каждые две шестнадцатеричные цифры слева соответствуют одному символу справа. Это один байт, т. Е. Восемь бит. Некоторые символы печатаются (см. Таблицу ASCII ниже), некоторые из них (показаны как точки).

ASCII Table - | hex value - name/char | 

| 00 nul| 01 soh| 02 stx| 03 etx| 04 eot| 05 enq| 06 ack| 07 bel| 
| 08 bs | 09 ht | 0a nl | 0b vt | 0c np | 0d cr | 0e so | 0f si | 
| 10 dle| 11 dc1| 12 dc2| 13 dc3| 14 dc4| 15 nak| 16 syn| 17 etb| 
| 18 can| 19 em | 1a sub| 1b esc| 1c fs | 1d gs | 1e rs | 1f us | 
| 20 sp | 21 ! | 22 " | 23 # | 24 $ | 25 % | 26 & | 27 ' | 
| 28 (| 29 ) | 2a * | 2b + | 2c , | 2d - | 2e . | 2f/| 
| 30 0 | 31 1 | 32 2 | 33 3 | 34 4 | 35 5 | 36 6 | 37 7 | 
| 38 8 | 39 9 | 3a : | 3b ; | 3c < | 3d = | 3e > | 3f ? | 
| 40 @ | 41 A | 42 B | 43 C | 44 D | 45 E | 46 F | 47 G | 
| 48 H | 49 I | 4a J | 4b K | 4c L | 4d M | 4e N | 4f O | 
| 50 P | 51 Q | 52 R | 53 S | 54 T | 55 U | 56 V | 57 W | 
| 58 X | 59 Y | 5a Z | 5b [ | 5c \ | 5d ] | 5e^| 5f _ | 
| 60 ` | 61 a | 62 b | 63 c | 64 d | 65 e | 66 f | 67 g | 
| 68 h | 69 i | 6a j | 6b k | 6c l | 6d m | 6e n | 6f o | 
| 70 p | 71 q | 72 r | 73 s | 74 t | 75 u | 76 v | 77 w | 
| 78 x | 79 y | 7a z | 7b { | 7c | | 7d } | 7e ~ | 7f del| 
1

Да, ожидается. Эти символы справа представляют собой одни и те же байты на вашем входе, у вас есть шестнадцатеричные коды слева. Байты со значениями, представляющими печатные символы, показаны с использованием соответствующего символа, другие - ..

1

Выходной сигнал имеет вид:

Адрес: hexadecimal_data ASCII_data

Данные шестнадцатеричных и ASCII являются одинаковыми, но отображаться по-разному. В данных ASCII в качестве их печатаемых символов выводятся только определенные байты, поскольку многие значения байтов не подлежат печати, а некоторые, которые можно распечатать, испортили форматирование печатных данных.

Невозможно определить, является ли это правильным или неправильным для вашего связанного списка, поскольку я не знаю, как выглядят ваши данные. Лучший способ проверить код сериализации - это прочитать его обратно. Вероятно, вы также захотите написать код, который отображает код в удобном для просмотра формате, и подключить этот код к вашему автору и вашему читателю, чтобы вы могли смотреть на различия в данных там.

Смежные вопросы