metaclass: (Default)
[personal profile] metaclass
https://github.com/metametaclass/gr-air-modes/blob/master/python/altitude.py
Формат сообщения о высоте самолета в сообщении ADS-B

Такие чудеса битовой кодировки даже в эмбеддед железе белорусских государственных НИИ нечасто бывают :)

Date: 2013-01-12 03:02 pm (UTC)
From: [identity profile] falcrum.livejournal.com
Завидуешь? :)

Date: 2013-01-12 03:30 pm (UTC)
From: [identity profile] enternet.livejournal.com
Навскидку - ничего необычного. Вполне прозрачно.

Date: 2013-01-12 03:59 pm (UTC)
From: [identity profile] skif-by.livejournal.com
А ты вот парсер такого говна напиши.

Date: 2013-01-12 04:02 pm (UTC)
From: [identity profile] oldmann.livejournal.com
еще когда многие из вас на свет не появились, прекрасно коболом обмолачивалось "такое говно". на тысячекратно менее производительных машинах, чем андроид у вас в кармане.

это вам не типизация какая-нибудь.

Date: 2013-01-12 04:21 pm (UTC)
From: [identity profile] skif-by.livejournal.com
На фортране тоже, как практика показывает

Date: 2013-01-12 04:24 pm (UTC)
From: [identity profile] dair-spb.livejournal.com
То, что это (и не только) можно обмолотить — бесспорно. Но ЗАЧЕМ вот такое?

Date: 2013-01-12 05:05 pm (UTC)
From: [identity profile] enternet.livejournal.com
Да написал уже и не один. К примеру GRIB2-формат ничем не лучше. Тоже всё упаковано, каждый бит что-то значит, но между секциями может быть вагон мусора.

Date: 2013-01-12 05:12 pm (UTC)
From: [identity profile] skif-by.livejournal.com
GRIB2 парсил, BUFR советских идиотов тоже.

Date: 2013-01-12 04:22 pm (UTC)
From: [identity profile] lazy-flyer.livejournal.com
nobody uses metric altitude: AFAIK, it's an orphaned part of the spec. haven't seen it in three years.

C этого места можно уже забивать толстый болт на всё, что ниже написано.
GPS валит все данные в банальном ASCII формате, но автору очень нравится через жопу гланды удалять. На кол.

Date: 2013-01-12 04:45 pm (UTC)
From: [identity profile] tzirechnoy.livejournal.com
Вот именно из-за таких как Вы у нас и требуется гигагерц проца и пол-гига рамы чтобы позвонить без тормозов. Поскольку люди сначала пишут, а потом думают.

Date: 2013-01-12 04:50 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Это, блин, официальный стандарт передачи информации с самолетов. Там 500 страниц вот такой битовой шизы.

Date: 2013-01-12 04:56 pm (UTC)
From: (Anonymous)
А вы не в авторах?

Date: 2013-01-12 05:08 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Не, меня в такие места не пустят. Стандарты будут слишком простыми :)

Date: 2013-01-12 05:20 pm (UTC)
From: [identity profile] lazy-flyer.livejournal.com
Аха, я в курсах за протокол. Только я видел реализацию на побитовом сдвиге.

Date: 2013-01-12 05:42 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Вот я бы на ассемблере с флагами переноса быстрее бы сделал это все. А так приходится мудрить :)

Date: 2013-01-12 05:47 pm (UTC)
From: [identity profile] lazy-flyer.livejournal.com
На С - не? :) Тем более, что формат слов жёстко определён. Создать структуру и указателем ползать по битам. :)

Date: 2013-01-12 05:44 pm (UTC)
From: [identity profile] avnik.livejournal.com
Ребе, почитайте спеки на ASN.1 encoding rules (unaligned per) и какой нибудь телефонный протокол из недавно и не до конца мертвых (ss7 или h323)

Date: 2013-01-12 05:53 pm (UTC)
From: (Anonymous)
Ребе, вы зачем на пистоне байтоёбствуете? Неб-гоугодное это дело.

Date: 2013-01-12 06:09 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Так это не мой код, я его как референс использую и мелкие доработки вкручиваю.

Date: 2013-01-12 08:35 pm (UTC)
From: (Anonymous)
Ах, вот как.
Но всё равно не по-б-жески как-то :)

Date: 2013-01-12 05:56 pm (UTC)
From: [identity profile] denisioru.livejournal.com
Похоже на говнище от терминалов Skywave. Там >= 80 бит пакет (битовый поток, без разделения на байты или слова, деление сугубо по полям, многие вперемешку и разбросаны по разным местам пакета). Бинарный пакет превращается в base64, потом в укладывается как узел в XML. Цель такой манипуляции неясна.

Date: 2013-01-12 06:13 pm (UTC)
From: [identity profile] levgem.livejournal.com
на эрланге такое только в путь парсить

Date: 2013-01-12 07:45 pm (UTC)
From: [identity profile] peter lemenkov (from livejournal.com)
Мое любимое

* https://tools.ietf.org/rfcmarkup?doc=5389#page-11

Как декодировать на Erlang

* https://github.com/lemenkov/rtplib/blob/master/src/stun.erl#L41

Date: 2013-01-13 03:21 am (UTC)
From: [identity profile] antilamer.livejournal.com
А какой смысл в этом изначально? Неужели такое странное представление, с перестановками бит например, проще генерировать?
Я про это:
    #okay, the order they come in is:
    #C1 A1 C2 A2 C4 A4 X B1 D1 B2 D2 B4 D4
    #the order we want them in is:
    #D2 D4 A1 A2 A4 B1 B2 B4

Date: 2013-01-13 07:47 am (UTC)
From: [identity profile] metaclass.livejournal.com
Понятия не имею, это какая-то дичь с легаси, усугубленная разработкой государственными комитетами.

Date: 2013-01-13 10:27 am (UTC)
From: [identity profile] metaclass.livejournal.com
Тут подали идею - это, возможно, заточено под некие существующие аппаратные декодеры времен царя гороха, которые никто менять не будет.

Date: 2013-01-13 10:23 am (UTC)
From: [identity profile] bambr77.livejournal.com
Ну например в староглиняные времена это могло парсится вообще не процессором например. А жесткой логикой. Сдвиговые регистры, триггеры и прочее в том же духе. И авиация в этом смысле дичайше консервативна, что правильно. И скорости там могут быть вовсе не 100500Кбит/сек, а вообще какие 9600. Так что лишний мегабайт хмл-ного оверхеда никуда не пролезет.
Ребе, вас что, битовые операции смущают?

Date: 2013-01-13 10:25 am (UTC)
From: [identity profile] metaclass.livejournal.com
Меня смущает отсутствие под руками ассемблера в питонах и C#.
На логике и низкоуровневых языках я бы это быстрее сделал :)

Date: 2013-01-13 10:29 am (UTC)
From: [identity profile] bambr77.livejournal.com
Так это. Есть же там и & и | и прочие >> c ^ :) Только вот jmp не хватает :) Или скорее jnz и jc всяких, да?

Date: 2013-01-13 10:35 am (UTC)
From: [identity profile] metaclass.livejournal.com
Флагов переноса и сдвигов с ними не хватает. Дичайше.
Зато есть отладочные логи. Вместо светодиодов :)

Date: 2013-01-13 10:36 am (UTC)
From: [identity profile] bambr77.livejournal.com
Не может лог заменить светодиоды! Никак не может. Светодиоды интереснее :)

Date: 2013-01-13 10:39 am (UTC)
From: [identity profile] berezovsky.livejournal.com
Можно кормить логи спецсервису, который управляет светодиодами. А светодиоды сверху на монитор приебенить.

Сергей Рыжков, директор Кроникс+, выдвигал отличную идею: во все сервера
(желательно и на колокейшне) ставится звуковуха, маленький динамик и
небольшая программа. Которая произносит случайное ругательство при
прохождении
каждого гигабайта через сетевуху. Представь - датацентр, темнота, и
только негромко матерятся сервера в стойках.

Date: 2013-01-13 10:42 am (UTC)
From: [identity profile] bambr77.livejournal.com
Скармливать битовый поток плате на 155-й логике. А плата мигает светодиодами. Вот наш метод! :)

Date: 2013-01-13 11:14 am (UTC)
From: [identity profile] potan.livejournal.com
С ерланговскими бинарисами получится значительно короче.

Date: 2013-01-13 12:32 pm (UTC)
From: [identity profile] theiced.livejournal.com
на пейтоне там говно какое то написано (что впрочем неудивительно. я вот последние пару месяцев интегрирую нас с разными пейтонными поделиями - они все говно и писаны уёбками). надо жыж дсл свой сначала писать жыж.

Date: 2013-01-13 12:38 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Да, DSL тут надо. Но там в целом все херово, так что разницы особой нет.

Date: 2013-01-13 12:48 pm (UTC)
From: [identity profile] theiced.livejournal.com
ну потому что пейтон. я вам кричу, я за 2 месяца насмотрелся на пару десятков пейтонных поделий - от мелочи разной до энтерпрайзного говнища (openstack например). там везде чуть более чем полное отсутсвие какого либо предварительного дизайна либ, отсутствие общего стиля кода, говнокод чуть более чем везде, то что ненужно - документированно, то что нужно - хуй. итд итд итд.

Date: 2013-01-13 01:07 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Там и без питона - сама спека на этот формат - ебаное говно и пиздец.

Date: 2013-01-13 01:16 pm (UTC)
From: [identity profile] theiced.livejournal.com
логическая цепочка - пейтон - рукожопые уебланы - говнософт. независимо от спеки на формат.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 17th, 2025 08:17 pm
Powered by Dreamwidth Studios