Pull to refresh
71
0.5
Иван Савватеев @SIISII

Микроконтроллеры, цифровая электроника, ОС…

Send message

Во-первых, в большинстве популярных CPU x86 adc просто выполняется медленнее, чем обычная add. Так как у adc есть третье входящее значение (флаг переноса), эта команда сложнее, чем add

Абсолютно неверное утверждение. Команды вида ADD и ADC выполняются с абсолютно одинаковой скоростью и на абсолютно одном и том же оборудовании. Технически разница между ними заключается только в том, что в качестве входного переноса в ADD подаётся нуль, а в ADC -- значение переноса, запомненное при выполнении какой-либо предшествующей команды.

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

Если на RS-485, то при правильном проектировании проблем всё равно не возникает: устройства ведь по своей инициативе на шину не лезут, а ждут, когда их спросят, а соответственно, никаких конфликтов, порядок операций на шине предопределён хостом. Задержка же с момента выдачи команды хостом до момента ответа устройства при нормально спроектированном устройстве вполне себе предсказуема. Ну а в TCP/IP слишком много сторонних факторов, которые вносят кучу неопределённости. Естественно, это не всегда является проблемой (чаще, наверное, даже не является: скажем, если ты опрашиваешь датчик раз в минуту, то, в общем-то, без разницы, придёт ответ секундой раньше или позже), но игнорировать подобное чревато.

Мало того что задержка, она ещё и непредсказуемая.

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

Дык на уже проложенном RS-485 бюджеты не освоишь :)

Насколько помню (давно уже Дельфями не пользуюсь), нет возможности создавать статические экземпляры классов (переменная типа "класс" реально является указателем на класс), т.е. навязывают динамическую память (в це++ ты сам определяешь, как тебе создавать экземпляр -- статически при трансляции с вызовом его конструктора до вызова main или динамически с помощью new). Освобождение памяти в каких-то случаях тоже выполняется автоматом, но уж не помню, в каких. Для высокоуровневого прикладного кода (а-ля Жаба) это, возможно, и нормально, но совершенно неприемлемо для низкоуровневых вещей, где контроль за всем подобным должен на все 100% оставаться за программистом -- как, собственно, это и было в классическом Паскале.

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

Про шаблоны и говорить нечего -- крайне убогие генерики, мягко говоря, это не то.

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

Я вот не помню, чтоб в Дельфях 15-20-летней давности были какие-то несовместимости с классическим Паскалем. Исключение -- это поддержка файлов и прочего ввода-вывода, но она в классическом Паскале просто никак стандартизирована не была, и в каждой конкретной реализации это делали по-своему. (Т.е. Read/Write были, а вот как открыть файл стандартным образом -- не было). Но она, по большому счёту, -- это библиотека поддержки языка, но не сам язык.

Ну а кардинальных отличий уж точно не было вообще. За исключением упомянутого открытия-закрытия файлов, программа, написанная на Паскале для СМ-1420 (надо полагать, краденый у ДЕКа), ничем не отличалась от той же программы, написанной на Турбо Паскале 3.0 на Роботроне-1715 или на Турбо Паскале для IBM PC.

Вот с Object Pascal, т.е. с последними ДОСовскими версиями Турбо Паскаля, возможно, совместимости и не было. Но, как я говорил, развитие Дельфей пошло совсем не туда, куда следовало бы: стали подражать Жабе и универсальный язык (по функционалу, а соответственно, и возможностям применения ничем не отличающийся от Це) превратили в хрен знает что. Развивать надо было примерно так же, как Це++, только с нормальным синтаксисом, а не с тем ужасом, что унаследован от Це и продолжает углубляться и расширяться.

Дельфи -- это Паскаль, а соответственно, один из самых старых пока ещё живых языков (1969 год, если память не изменяет). От того, что к нему добавили классы, он Паскалем быть не перестал. И да, старость сама по себе не означает, что язык плох -- вот только развивали его явно не так, как следовало бы. Хотя и сегодня, будь выбор, я предпочёл бы писать под МК на Паскале, а не на Це/Це++.

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

Ну а возможность физически подключиться к линии, скажем, RS-485... Если злоумышленник способен проникнуть на предприятие, чтобы сие совершить, что и всякие там шифрования не особо помогут: в конце концов, что мешает ему не к линии подключаться, а бомбу заложить? Тут вопрос решаться не на ИТ-уровне должен.

Если всё работает нормально, то зачем менять-то? Чтоб стильно-модно-молодёжно? Дык это и станки/котлы/реакторы тогда поменять неплохо б.

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

Но тут уместней говорить не о РПГшности Сталкера, а об ухудшении РПГшности в современных РПГ по сравнению с древними (или современными, но не мейнстримовыми -- в какой-нибудь там The Age of Decadence и геймплей, и набор квестов, и стороны мира, которые удастся открыть, очень сильно зависят от того, как будешь прокачивать перса).

В Киберпанке специализация есть, всё ты прокачать не можешь, и она отчасти влияет на способы прохождения определённых квестов, но не сказать, чтоб шибко сильно. Тем более, что добавили возможность в любой момент всё переделать (изначально её не было).

Ну, от направления прокачки в первом Ведьмаке вся стилистика прохождения сильно менялась. В частности, как-то прошёл его, большую часть игры, в т.ч. финальные разборки, вообще не доставая меч -- сжигал всё с помощью Игни. Но дальше они резко ослабили и ухудшили алхимию и всё такое прочее :( Хотя всё равно довольно сильно влияет (ну а в Сталкере, как Вы правильно заметили, ничего такого в принципе нет, сам персонаж вообще никак не меняется).

Какая ж это РПГ? Прокачка персонажа, например, отсутствует полностью, от слова "совсем". Приблуды -- это ни разу не прокачка, эдак можно сказать, что и первый Дум -- тоже РПГ, ведь там, помнится, если что-то сожрёшь, получаешь временную прибавку к жизни, плюс расходуемая броня имеется -- тоже ж как бы прокачивают персонажа. Ну и оружие дополнительное находишь, ага, -- можно считать прокачкой :) А сравнить, кстати, лучше даже не с Обливионом, а с Фолами, начиная с 3-го, поскольку там тоже стреляешь, а не мечами орудуешь, т.е., в определённом смысле, Фолы -- тоже шутеры. Но там-то как раз прокачка в полной мере имеется -- и главные характеристики (SPECIAL), и производные от них, и всякие разные дополнительные навыки, открываемые по мере накопления опыта и по выбору игрока... В Сталкере ничего такого в принципе нет.

Квесты и в линейных шутерах, по большому счёту, есть -- только чисто линейные (пройти из точки А в точку Б, по пути всех перестреляв, и дёрнуть за рубильник). Группировки -- чисто антураж (вон, в Халф-Лайфе тоже, можно сказать, имеются: вот тебе спецназ, вот тебе учёные, а где-то над всеми -- G-Man).

В общем, оригинальный Сталкер -- это стрелялка с некоторыми элементами РПГ, а отнюдь не "честная РПГ".

Ну, по сравнению с традиционными линейными шутерами мир там вполне открытый. Да, он поделён на локации, но после открытия прохода он почти всегда остаётся доступным в обе стороны, а не закрывается, ну а само их открытие носит более-менее логичный характер в рамках сюжетных квестов. Если на то пошло, какой-нибудь третий Ведьмак или там Фолы-3-НВ-4 -- тоже не одна локация, и полной свободы перемещения между ними тоже нет, хотя размеры и намного больше.

Корсары -- классная серия, да. Но целой толпы фанатов со 100500 модами спустя даже 20 лет после выхода там нет. Так что Сталкер таки уникален из пост-советских игрушек.

Но такого сообщества, как у Сталкера, вокруг Пиратов нет.

Мне, кстати, она тоже зашла. Больше или меньше -- тяжело сказать.

Ни один из аспектов действительно не был прорывным, и тут Вы совершенно правы, ну а про количество багов на релизе и говорить нечего (правда, ТЧ ещё ничего, если сравнивать с ЧН). Но вот их комбинация дала такой результат, который ни одной другой игрой, созданной на постсоветском пространстве, не достигнут.

Если уж страдать вежливостью, то можно было написать на украинском, а не траслитом.

То ли карма, то ли талант :) Но что он ждалкер и вылеталкер -- таки да, особенно сразу после выхода и независимо от части.

1
23 ...

Information

Rating
2,397-th
Location
Солнечногорск, Москва и Московская обл., Россия
Date of birth
Registered
Activity

Specialization

Embedded Software Engineer
Lead