Постановка задачи: реализовать функцию uint32_t average(uint32_t a, uint32_t b), не используя типов шире, чем uint32_t...
В реальной жизни надо провести замеры времени исполнения и сравнить с полученными автором для его алгоритма. Естественно, сама задача актуальна для архитектуры, не имеющей аппаратной реализации операций с 64-битными числами.
У Вас на видео она хотя бы гибкая, у меня в штанах вообще вшит жесткий брусок. А что касается конструкции - неужели Вы думаете, что производитель просто по недомыслию сделал ее такой, а не пришел к ней в результате серьезной проработки с учетом реальных условий эксплуатации и последующего тестирования в реальной эксплуатации? Это же не какая-то самоделка, а давно выпускающееся промышленное изделие.
Ну все-таки это не полоска фольги, как антикражные метки в магазинах, а хорошо прощупывающийся пластмассовый брусок, который не в любую одежду можно вшить так, чтоб он не мешал (я в своих штанах Killy обнаружил RECCO сразу, еще до того, как увидел соответствующую маркировку). Сделать откажатель таким-же тонким, как антикражная метка, мешает то, что он должен быть достаточно надежным при носке, стирке, отжиме и т.д., а проверить его работоспособность в бытовых условиях подручными средствами вряд ли возможно. Да и дальность обнаружения должна быть больше, чем у антикражных меток, что так же диктует большие размеры антенны.
Частоты уже давно выделены - https://en.wikipedia.org/wiki/RECCO , и одежда с отражателями RECCO давно выпускается множеством производителей, и опыт применения в России имеется (во всяком случае в Красной Поляне). Проблема в том, что, в отличии от лыжника, вероятность того, что одежда какой-нибудь заблудившегося грибника будет оснащена отражателями RECCO стремится к нулю.
В принципе, нелинейная радиолокация, лежащая в основе работы RECCO, позволяет обнаружить любую электронику, в независимости от того, включена она или выключена, но при этом радиус обнаружения существенно сокращается по сравнению со специальным отражателем, настроенным в резонанс с зондирующим сигналом детектора и его второй гармоникой, что фактически исключает возможность поиска с вертолета.
ET5410 заработал без видимых проблем, во всяком случае связь идет и текущие данные показывает. Естественно все не проверял, а надо бы (судя по косякам с коэффициентом для IOut у RD60xx)
VC8145 не заработал, пишет что таймаут. В конфигурационном файле для него в общем-то и менять нечего. Но, насколько я понял из конфигурационного файла, он если и заработает, то умеет читать только число с основного дисплея (это я и сам умею:)). Поскольку официальной документации протокола я не нашел, мне было бы интересно посмотреть, как читаются данные с дополнительного дисплея, но увы...
Попробовал подключить RD6006P и сразу потребовались те самые "лишние телодвижения", о которых Вы спрашивали.
У меня источник RD6006P (идентификатор прибора 60065), а программа из коробки знает только RD6006 (идентификатор прибора 60062), RD6012 (идентификатор прибора 60121) и RD6018 (идентификатор прибора 60181). RD6006P - это вариант RD6006 с двойной стабилизацией (после импульсного стабилизатора стоит еще линейный). Отличается от RD6006 существенно меньшими пульсациями и разрешающей способностью установки и измерения напряжения и тока.
Ладно, дописал в файл RidenRD60xx.txt конфигурацию для RD6006P с нужным идентификатором прибора 60065. Источник начал опознаваться программой, но напряжение и ток показывает в 10 раз больше, чем надо. И если ток поправить оказалось довольно просто заменой значения для переменной CurrentScaleFactor с 1000 на 10000, то с напряжением все гораздо печальней - авторы файла RidenRD60xx.txt не удосужились завести для его масштабирования переменную, а жестко вбили в SCPI команды умножение и деление на 100 (а для RD6006P надо 1000), т.е. нужно завести переменную VoltageScaleFactor для всех распознаваемых типов приборов и в командах найти и заменить где надо 100 на эту переменную. На этом пока остановился, отложив на потом, когда появится необходимость или будет совсем уж нечем заняться.
Попутно похоже и с током нашел ошибку: в некоторых SCPI командах (в частности для чтения IOut) вместо переменной CurrentScaleFactor жестко прописано значение 100, т.е. эти значения будут корректными только для RD6012 и RD6018, а не для RD6006.
Я в свое время вообще пришел к тому, что для доступа к приборам наиболее гибко использовать простейшие утилиты командной строки, а все остальное делать с помощью bash скрипта, написанного под конкретную задачу. Например, надо снять характеристики какого-нибудь dc/dc - пишем скрипт, управляющий программируемым источником питания, электронной нагрузкой и мультиметром, результаты пишем в SQLite, а потом уже с помощью gnuplot строим какие нужно графики (зависимость выходного напряжения от входного, зависимость выходного напряжения от тока нагрузки и т.д.).
А самой перекиси глубоко проникать и не надо, проникает атомарный кислород, выделяющийся из нее. Во всяком случае глубже, чем молекулы кислорода воздуха.
Да и разрушение только поверхностного слоя может сильно влиять на прочность - это и формирование зародышей трещин, которые в дальнейшем могут развиваться вглубь, и путь для проникновения кислорода в глубь детали, и путь для более быстрого улетучивания из пластмассы таких компонентов, как пластификатор.
Впрочем, я же ничего и не утверждал, а лишь задался вопросом.
А насколько сильно ухудшаются механические свойства пластмассы корпуса после такой обработки? Многие полимеры активно стареют под действием ультрафиолета солнца и кислорода воздуха, а тут еще такой мощный окислитель, как перекись.
Там еще придется поделить число двойной длинны, правда только один раз.
В данном случае мешает условие
В реальной жизни надо провести замеры времени исполнения и сравнить с полученными автором для его алгоритма. Естественно, сама задача актуальна для архитектуры, не имеющей аппаратной реализации операций с 64-битными числами.
Проблемы этой группы решаются светильником с датчиком движения.
У Вас на видео она хотя бы гибкая, у меня в штанах вообще вшит жесткий брусок. А что касается конструкции - неужели Вы думаете, что производитель просто по недомыслию сделал ее такой, а не пришел к ней в результате серьезной проработки с учетом реальных условий эксплуатации и последующего тестирования в реальной эксплуатации? Это же не какая-то самоделка, а давно выпускающееся промышленное изделие.
Ну все-таки это не полоска фольги, как антикражные метки в магазинах, а хорошо прощупывающийся пластмассовый брусок, который не в любую одежду можно вшить так, чтоб он не мешал (я в своих штанах Killy обнаружил RECCO сразу, еще до того, как увидел соответствующую маркировку). Сделать откажатель таким-же тонким, как антикражная метка, мешает то, что он должен быть достаточно надежным при носке, стирке, отжиме и т.д., а проверить его работоспособность в бытовых условиях подручными средствами вряд ли возможно. Да и дальность обнаружения должна быть больше, чем у антикражных меток, что так же диктует большие размеры антенны.
Большинство ходят за грибами в том, что не жалко, а не в специальных "куртках грибника".
Частоты уже давно выделены - https://en.wikipedia.org/wiki/RECCO , и одежда с отражателями RECCO давно выпускается множеством производителей, и опыт применения в России имеется (во всяком случае в Красной Поляне). Проблема в том, что, в отличии от лыжника, вероятность того, что одежда какой-нибудь заблудившегося грибника будет оснащена отражателями RECCO стремится к нулю.
В принципе, нелинейная радиолокация, лежащая в основе работы RECCO, позволяет обнаружить любую электронику, в независимости от того, включена она или выключена, но при этом радиус обнаружения существенно сокращается по сравнению со специальным отражателем, настроенным в резонанс с зондирующим сигналом детектора и его второй гармоникой, что фактически исключает возможность поиска с вертолета.
Вряд ли - думается, что современный ИИ уже способен не путать понятия статической и строгой типизации.
Спасибо! Это гораздо более полная информация, чем те обрывки, что мне удалось найти в свое время.
Даже страшно подумать, что в книгах, помимо оглавления, есть еще предисловие, а иногда и несколько.
ET5410 заработал без видимых проблем, во всяком случае связь идет и текущие данные показывает. Естественно все не проверял, а надо бы (судя по косякам с коэффициентом для IOut у RD60xx)
VC8145 не заработал, пишет что таймаут. В конфигурационном файле для него в общем-то и менять нечего. Но, насколько я понял из конфигурационного файла, он если и заработает, то умеет читать только число с основного дисплея (это я и сам умею:)). Поскольку официальной документации протокола я не нашел, мне было бы интересно посмотреть, как читаются данные с дополнительного дисплея, но увы...
Попробовал подключить RD6006P и сразу потребовались те самые "лишние телодвижения", о которых Вы спрашивали.
У меня источник RD6006P (идентификатор прибора 60065), а программа из коробки знает только RD6006 (идентификатор прибора 60062), RD6012 (идентификатор прибора 60121) и RD6018 (идентификатор прибора 60181). RD6006P - это вариант RD6006 с двойной стабилизацией (после импульсного стабилизатора стоит еще линейный). Отличается от RD6006 существенно меньшими пульсациями и разрешающей способностью установки и измерения напряжения и тока.
Ладно, дописал в файл RidenRD60xx.txt конфигурацию для RD6006P с нужным идентификатором прибора 60065. Источник начал опознаваться программой, но напряжение и ток показывает в 10 раз больше, чем надо. И если ток поправить оказалось довольно просто заменой значения для переменной CurrentScaleFactor с 1000 на 10000, то с напряжением все гораздо печальней - авторы файла RidenRD60xx.txt не удосужились завести для его масштабирования переменную, а жестко вбили в SCPI команды умножение и деление на 100 (а для RD6006P надо 1000), т.е. нужно завести переменную VoltageScaleFactor для всех распознаваемых типов приборов и в командах найти и заменить где надо 100 на эту переменную. На этом пока остановился, отложив на потом, когда появится необходимость или будет совсем уж нечем заняться.
Попутно похоже и с током нашел ошибку: в некоторых SCPI командах (в частности для чтения IOut) вместо переменной CurrentScaleFactor жестко прописано значение 100, т.е. эти значения будут корректными только для RD6012 и RD6018, а не для RD6006.
Надежность бесперебойной подачи электропитания не зависит от позывов пользователя к испражнению. А надежность - это вероятностная характеристика.
Я отвечал на Ваш комментарий:
Там Вы говорили о возможности отключения питания в неподходящий момент, а не о возможности утечки.
Вероятность отключения электричества в датацентре облака несравнимо меньше, чем вероятность отключения в бухгалтерии или даже в локальной серверной.
Она еще не дошла до понимания, что чем таскать выброшенные вещи в дом, проще самой поселиться прямо у мусорного контейнера.
Ну не сегодня точно. Если удастся поиграться на этой неделе, то отпишусь о результатах.
Я в свое время вообще пришел к тому, что для доступа к приборам наиболее гибко использовать простейшие утилиты командной строки, а все остальное делать с помощью bash скрипта, написанного под конкретную задачу. Например, надо снять характеристики какого-нибудь dc/dc - пишем скрипт, управляющий программируемым источником питания, электронной нагрузкой и мультиметром, результаты пишем в SQLite, а потом уже с помощью gnuplot строим какие нужно графики (зависимость выходного напряжения от входного, зависимость выходного напряжения от тока нагрузки и т.д.).
Если кому вдруг будет интересно:
https://github.com/Serge78rus/rd6006p - управление источником RD6006P
https://github.com/Serge78rus/vc8145 - общение с мультиметром VC8145
https://github.com/Serge78rus/scpi - управление приборами, поддерживающими SCPI (есть пример работы с электронной нагрузкой ET5410)
Заранее прошу извинить за недостаточную "вылизанность" программ - писалось наспех для удовлетворения сиюминутных потребностей по мере их возникновения
А самой перекиси глубоко проникать и не надо, проникает атомарный кислород, выделяющийся из нее. Во всяком случае глубже, чем молекулы кислорода воздуха.
Да и разрушение только поверхностного слоя может сильно влиять на прочность - это и формирование зародышей трещин, которые в дальнейшем могут развиваться вглубь, и путь для проникновения кислорода в глубь детали, и путь для более быстрого улетучивания из пластмассы таких компонентов, как пластификатор.
Впрочем, я же ничего и не утверждал, а лишь задался вопросом.
А насколько сильно ухудшаются механические свойства пластмассы корпуса после такой обработки? Многие полимеры активно стареют под действием ультрафиолета солнца и кислорода воздуха, а тут еще такой мощный окислитель, как перекись.