SREC

Поделись знанием:
(перенаправлено с «S-record»)
Перейти к: навигация, поиск
SREC

SREC — формат текстового ASCII файла, разработанный фирмой Motorola для хранения двоичных данных, также иногда называется Motorola S-record или S19. Формат имеет ряд преимуществ по сравнению с бинарными форматами. ASCII-файлы можно изменять с помощью текстового редактора. Кроме того, каждая запись содержит контрольную сумму, позволяющую выявить ошибки, которые были допущены во время передачи данных[1].

Этот формат был разработан в 1970 году для процессора Motorola 6800 и используется многими компиляторами как конечный результат работы, особенно у компиляторов для встраиваемых систем.

Аналогичное кодирование, со слегка измененным форматом ASCII файла, называется Intel Hex и используется для процессоров Intel.





Формат

SREC файл состоит из записей, представляющих собой ASCII символы. Все шестнадцатеричные (Hex) числа записаны в виде старший байт слева. Записи имеют следующую структуру:

  1. Старт, один символ S.
  2. Тип записи, одна цифра, 0 до 9, определяет тип поля данных.
  3. Количество байт, две шестнадцатеричных цифры, указывающие количество байт в оставшейся части записи (адрес, поле данных, контрольная сумма).
  4. Адрес, четыре, шесть или восемь шестнадцатеричных цифр, определяющих начальный адрес блока данных этой записи в памяти.
  5. Данные, двоичные данные, закодированные шестнадцатеричными числами длиной n байт.
  6. Контрольная сумма, два шестнадцатеричных числа, дополняет до FF сумму чисел полей: количество байт, адрес и данных. Необходима для проверки целостности данных.

Есть восемь типов записей, которые перечислены ниже:

Запись Тип Байтов в адресе Дальнейшие данные
S0 Заголовок блока 2 Есть
S1 Последовательность данных 2 Есть
S2 Последовательность данных 3 Есть
S3 Последовательность данных 4 Есть
S5 Количество записей 2 Нет
S7 Конец блока 4 Нет
S8 Конец блока 3 Нет
S9 Конец блока 2 Нет

Запись типа S0 содержит данные разработчика программы и не имеет отношения к программному коду. Количество записей хранится в 2-х байтном поле адреса записи типа S5. Поля адреса записей типа S7, S8, или S9 могут содержать начальные адреса программы[2].

Пример

S00F000068656C6C6F202020202000003C
S11F00007C0802A6900100049421FFF07C6C1B787C8C23783C6000003863000026
S11F001C4BFFFFE5398000007D83637880010014382100107C0803A64E800020E9
S111003848656C6C6F20776F726C642E0A0042
S5030003F9
S9030000FC

     Старт      Тип записи      Количество байт      Адрес      Данные      Контрольная сумма

См. также

Напишите отзыв о статье "SREC"

Примечания

  1. [www.die.net/doc/linux/man/man5/srec.5.html srec — Linux man page]
  2. [www.freescale.com/files/archives/doc/ref_manual/M68000PRM.pdf MC68000 Family Programmer’s Reference Manual] Appendix C

Ссылки

  • [srecord.sourceforge.net/ SRecord] программы для работы с файлами формата SREC

Отрывок, характеризующий SREC

– Да чего ж ты хотела? – вскрикнула опять горячась Марья Дмитриевна, – что ж тебя запирали что ль? Ну кто ж ему мешал в дом ездить? Зачем же тебя, как цыганку какую, увозить?… Ну увез бы он тебя, что ж ты думаешь, его бы не нашли? Твой отец, или брат, или жених. А он мерзавец, негодяй, вот что!
– Он лучше всех вас, – вскрикнула Наташа, приподнимаясь. – Если бы вы не мешали… Ах, Боже мой, что это, что это! Соня, за что? Уйдите!… – И она зарыдала с таким отчаянием, с каким оплакивают люди только такое горе, которого они чувствуют сами себя причиной. Марья Дмитриевна начала было опять говорить; но Наташа закричала: – Уйдите, уйдите, вы все меня ненавидите, презираете. – И опять бросилась на диван.
Марья Дмитриевна продолжала еще несколько времени усовещивать Наташу и внушать ей, что всё это надо скрыть от графа, что никто не узнает ничего, ежели только Наташа возьмет на себя всё забыть и не показывать ни перед кем вида, что что нибудь случилось. Наташа не отвечала. Она и не рыдала больше, но с ней сделались озноб и дрожь. Марья Дмитриевна подложила ей подушку, накрыла ее двумя одеялами и сама принесла ей липового цвета, но Наташа не откликнулась ей. – Ну пускай спит, – сказала Марья Дмитриевна, уходя из комнаты, думая, что она спит. Но Наташа не спала и остановившимися раскрытыми глазами из бледного лица прямо смотрела перед собою. Всю эту ночь Наташа не спала, и не плакала, и не говорила с Соней, несколько раз встававшей и подходившей к ней.
На другой день к завтраку, как и обещал граф Илья Андреич, он приехал из Подмосковной. Он был очень весел: дело с покупщиком ладилось и ничто уже не задерживало его теперь в Москве и в разлуке с графиней, по которой он соскучился. Марья Дмитриевна встретила его и объявила ему, что Наташа сделалась очень нездорова вчера, что посылали за доктором, но что теперь ей лучше. Наташа в это утро не выходила из своей комнаты. С поджатыми растрескавшимися губами, сухими остановившимися глазами, она сидела у окна и беспокойно вглядывалась в проезжающих по улице и торопливо оглядывалась на входивших в комнату. Она очевидно ждала известий об нем, ждала, что он сам приедет или напишет ей.
Когда граф взошел к ней, она беспокойно оборотилась на звук его мужских шагов, и лицо ее приняло прежнее холодное и даже злое выражение. Она даже не поднялась на встречу ему.
– Что с тобой, мой ангел, больна? – спросил граф. Наташа помолчала.
– Да, больна, – отвечала она.
На беспокойные расспросы графа о том, почему она такая убитая и не случилось ли чего нибудь с женихом, она уверяла его, что ничего, и просила его не беспокоиться. Марья Дмитриевна подтвердила графу уверения Наташи, что ничего не случилось. Граф, судя по мнимой болезни, по расстройству дочери, по сконфуженным лицам Сони и Марьи Дмитриевны, ясно видел, что в его отсутствие должно было что нибудь случиться: но ему так страшно было думать, что что нибудь постыдное случилось с его любимою дочерью, он так любил свое веселое спокойствие, что он избегал расспросов и всё старался уверить себя, что ничего особенного не было и только тужил о том, что по случаю ее нездоровья откладывался их отъезд в деревню.


Со дня приезда своей жены в Москву Пьер сбирался уехать куда нибудь, только чтобы не быть с ней. Вскоре после приезда Ростовых в Москву, впечатление, которое производила на него Наташа, заставило его поторопиться исполнить свое намерение. Он поехал в Тверь ко вдове Иосифа Алексеевича, которая обещала давно передать ему бумаги покойного.