Не знаю правда это или нет, да и что там за задачи были, раз их можно запросто вот так вот скинуть. Но вообще говоря такого чувака надо делать менеджером и развивать тему удаленной работы)
В конце прошлого века это в 90-х годах двадцатого или все-таки девятнадцатого?
Например, в США был период т.н. "диких банков". Доллар мог выпускать (и выпускал!) любой банк. И не банк, да и просто любой человек.
Это было не только в США. Но если это уже было и "свои" деньги мог делать любой желающий, то отчего же это все прекратилось? В этом вся соль. Почему частные деньги не прижились?
Я не плюсовик, но вообще -my_legs для INT_MIN должен выкинуть исключение. И как оно вообще компилируется, если там не для всех веток return есть? Или в плюсах это норма?
С советами соглашусь, код особо не вылизывал, тем более что на ассемблере что-то писал больше 10 лет назад, да и то для развлечения. Там в паре мест регистры портятся в процедурах, массив для тайлов было бы проще сделать из двойных слов вместо байт, проталкивания hwnd по всем процедурам можно избежать, именование не причесано к единому виду, всякие about-окна сделаны через MessageBox, а не полноценные окна. Для улучшений место есть.
Момент со смешиванием .IF и cmp есть, я прямо долго думал и никак не мог решить в каком стиле все это делать. С одной стороны я хотел показать как масмовские директивы упрощают жизнь, с другой стороны если все писать с их помощью, как наглядно показать разницу? Поэтому кое-где осталось в смешаном стиле.
Статья наполовину развлекательная, плюс хотелось именно оконное приложение. Был бы какой практический кейс, да еще подходящий по формату, но ничего в голову не пришло.
Ассемблеров много есть разных, это один из вариантов. Здесь фишка в том, что используется привычная IDE. С привычным дебагом в том числе. И все это идет из коробки и работает без проблем.
А если взять фасм, там с одним редактором приключений хватит. Фасмовский родной, ну это такое. В masm sdk куча примеров, причем нормально оформленных, а в фасме чуть больше десятка.
Разумеется и на фасме кто-то пишет, но статья не про фасм и не про ассемблер вообще, а про конкретный вариант использования.
То, что тут показано, это, конечно, не bleeding edge, но совсем устарелым я б не назвал. Если бы я написал что-нибудь про TASM, far/near и прочий int 21h, тогда да. Про юникод отступление я сделал в статье, наверное надо было подробнее написать, но объем статьи и так вышел намного больше изначального замысла, чем-то пришлось пожертвовать. Но если кратко, то использование юникода ничего принципиально не меняет.
Вот и вся разница. Как именно конвертировать строки, вот на эту тему можно написать статью.
Почему использовал 32-х разрядный ассемблер. Одной из целей было показать как использование директив MASM упрощает жизнь. А в 64-х разрядном MASM нету ни invoke, ни if, ни while. Вообще говоря это проблема решаемая, но это опять же можно целую статью написать только про это. Также calling convention изменился, нужны еще определенные приседания с прологом/эпилогом. Тут опять для простоты пришлось срезать углы. Я хотел показать как можно писать обычные windows-приложения без всяких лишних приседаний, установок и прочего и делать это в привычной многим IDE.
Хороший вопрос. Мне вообще непонятно, почему скорость метаболизма измеряют в калориях. Скорость по определению это изменение какой-то величины во времени - километры в час, литры в секунду и так далее. Почему просто калории?
Ну это же все в общем и среднем. Кому-то наскучивает, кто-то, наоборот, привыкает и почти не замечает. Это еще и от целей зависит, одно дело физкультура , другое дело спорт, даже любительский. Вообще статья так себе написана - как будто надергали готовые куски отовсюду.
Если бы это было полностью так, то война была бы проигрышной стратегией, и войн бы не было. Но если посмотреть в окно и сверится с реальностью, а не телевизором (это кстати полезно независимо от того, что именно показывают по этому транслятору безумных идей - "либеральный" канал или ура-патриотический), то мы увидим, что войны там таки есть, а значит в них есть какой-то смысл и какая-то выгода.
Эти ошибочные суждения содержат важный теоретический урок. Генералы, политики, банкиры и бизнесмены повсеместно принимали решения, основанные на ошибочных предпосылках и ложных ожиданиях. Генералы верили, что наступление восторжествует, политики и дипломаты – что время работает против их стран, а банкиры и бизнесмены – что война может привести к экономическому коллапсу. Если бы политики и военные лучше понимали критически важные особенности в своих «зонах ответственности», они, скорее всего, были бы более осторожными. Можно утверждать, что Первая мировая война случилась из-за этих иллюзий. Тем не менее, теории баланса сил, сдерживания и рационализма предполагают, что лидеры достаточно хорошо понимают условия, в которых действуют – совершенно необоснованное допущение в случае 1914 г.
Первая мировая не уникальна. С 1648 г. и по сей день, инициаторы войн с участием как минимум одной великой или растущей державы выиграли немногим более половины таких конфликтов. С 1945 г. инициаторы организовали тридцать одну войну и достигли своих политических целей только в семи, или в 26 процентах из них, а одержали военную победу только в 10 – или в 32 процентах [случаев]. Совсем не впечатляет, если принять во внимание тот факт, что в подавляющем большинстве случаев выбор между войной и миром, и временем начала войны был за инициатором. Теория баланса сил, другие подходы реалистов и рационалистов предполагают, что политики начинают войну только если рассчитывают выиграть или, как минимум, не проиграть. Эти ожидания имеют мало общего с эмпирическими данными, поскольку лидеры часто затевают войну по соображениям славы или мести, а не безопасности или материальной выгоды. Также они вовсе не обязательно прибегают к предварительному и тщательному анализу выгод и рисков. Для того, чтобы понять Первую мировую войну – и многие другие войны – мы должны задаться вопросом: почему такие иллюзии процветают, а существующие теории международных отношений не затрагивают этот вопрос.
Не знаю правда это или нет, да и что там за задачи были, раз их можно запросто вот так вот скинуть. Но вообще говоря такого чувака надо делать менеджером и развивать тему удаленной работы)
Скажу как сеньор, за 3000$ проще продолжать быть сеньором, и в лиды не лезть. Понятно что лид лиду рознь, но в среднем оно так.
В конце прошлого века это в 90-х годах двадцатого или все-таки девятнадцатого?
Это было не только в США. Но если это уже было и "свои" деньги мог делать любой желающий, то отчего же это все прекратилось? В этом вся соль. Почему частные деньги не прижились?
Когда это произошло? Можно примеры заодно.
Я не плюсовик, но вообще -my_legs для INT_MIN должен выкинуть исключение. И как оно вообще компилируется, если там не для всех веток return есть? Или в плюсах это норма?
Были, но на всех не хватало.
Это гуглоперевод
С советами соглашусь, код особо не вылизывал, тем более что на ассемблере что-то писал больше 10 лет назад, да и то для развлечения. Там в паре мест регистры портятся в процедурах, массив для тайлов было бы проще сделать из двойных слов вместо байт, проталкивания hwnd по всем процедурам можно избежать, именование не причесано к единому виду, всякие about-окна сделаны через MessageBox, а не полноценные окна. Для улучшений место есть.
Момент со смешиванием .IF и cmp есть, я прямо долго думал и никак не мог решить в каком стиле все это делать. С одной стороны я хотел показать как масмовские директивы упрощают жизнь, с другой стороны если все писать с их помощью, как наглядно показать разницу? Поэтому кое-где осталось в смешаном стиле.
Статья наполовину развлекательная, плюс хотелось именно оконное приложение. Был бы какой практический кейс, да еще подходящий по формату, но ничего в голову не пришло.
Кстати говоря, что используете в качестве IDE для FASM? Раньше там в комплекте шло что-то типа блокнота, но это была жуть.
Ассемблеров много есть разных, это один из вариантов. Здесь фишка в том, что используется привычная IDE. С привычным дебагом в том числе. И все это идет из коробки и работает без проблем.
А если взять фасм, там с одним редактором приключений хватит. Фасмовский родной, ну это такое. В masm sdk куча примеров, причем нормально оформленных, а в фасме чуть больше десятка.
Разумеется и на фасме кто-то пишет, но статья не про фасм и не про ассемблер вообще, а про конкретный вариант использования.
Через студийный менеджер расширений недоступно, видимо для 2022 только руками. Надо поразбираться.
Ассемблеров много хороших и всяких разных, тут, конечно, частный случай.
Спасибо! Я занимался настройками IDE где-то в начале лета, тогда еще не было.
То, что тут показано, это, конечно, не bleeding edge, но совсем устарелым я б не назвал. Если бы я написал что-нибудь про TASM, far/near и прочий int 21h, тогда да. Про юникод отступление я сделал в статье, наверное надо было подробнее написать, но объем статьи и так вышел намного больше изначального замысла, чем-то пришлось пожертвовать. Но если кратко, то использование юникода ничего принципиально не меняет.
Вот и вся разница. Как именно конвертировать строки, вот на эту тему можно написать статью.
Почему использовал 32-х разрядный ассемблер. Одной из целей было показать как использование директив MASM упрощает жизнь. А в 64-х разрядном MASM нету ни invoke, ни if, ни while. Вообще говоря это проблема решаемая, но это опять же можно целую статью написать только про это. Также calling convention изменился, нужны еще определенные приседания с прологом/эпилогом. Тут опять для простоты пришлось срезать углы. Я хотел показать как можно писать обычные windows-приложения без всяких лишних приседаний, установок и прочего и делать это в привычной многим IDE.
Согласен, статья так написана что нужны дополнительные пояснения, иначе не понять.
Хороший вопрос. Мне вообще непонятно, почему скорость метаболизма измеряют в калориях. Скорость по определению это изменение какой-то величины во времени - километры в час, литры в секунду и так далее. Почему просто калории?
Ну это же все в общем и среднем. Кому-то наскучивает, кто-то, наоборот, привыкает и почти не замечает. Это еще и от целей зависит, одно дело физкультура , другое дело спорт, даже любительский. Вообще статья так себе написана - как будто надергали готовые куски отовсюду.
Не могу сказать про минусующих, но это миф. Разумеется опыт работы с разведывательными спутниками пригодился, но никакой копией Хаббл не был.
Эти ошибочные суждения содержат важный теоретический урок. Генералы, политики, банкиры и бизнесмены повсеместно принимали решения, основанные на ошибочных предпосылках и ложных ожиданиях. Генералы верили, что наступление восторжествует, политики и дипломаты – что время работает против их стран, а банкиры и бизнесмены – что война может привести к экономическому коллапсу. Если бы политики и военные лучше понимали критически важные особенности в своих «зонах ответственности», они, скорее всего, были бы более осторожными. Можно утверждать, что Первая мировая война случилась из-за этих иллюзий. Тем не менее, теории баланса сил, сдерживания и рационализма предполагают, что лидеры достаточно хорошо понимают условия, в которых действуют – совершенно необоснованное допущение в случае 1914 г.
Первая мировая не уникальна. С 1648 г. и по сей день, инициаторы войн с участием как минимум одной великой или растущей державы выиграли немногим более половины таких конфликтов. С 1945 г. инициаторы организовали тридцать одну войну и достигли своих политических целей только в семи, или в 26 процентах из них, а одержали военную победу только в 10 – или в 32 процентах [случаев]. Совсем не впечатляет, если принять во внимание тот факт, что в подавляющем большинстве случаев выбор между войной и миром, и временем начала войны был за инициатором. Теория баланса сил, другие подходы реалистов и рационалистов предполагают, что политики начинают войну только если рассчитывают выиграть или, как минимум, не проиграть. Эти ожидания имеют мало общего с эмпирическими данными, поскольку лидеры часто затевают войну по соображениям славы или мести, а не безопасности или материальной выгоды. Также они вовсе не обязательно прибегают к предварительному и тщательному анализу выгод и рисков. Для того, чтобы понять Первую мировую войну – и многие другие войны – мы должны задаться вопросом: почему такие иллюзии процветают, а существующие теории международных отношений не затрагивают этот вопрос.
Between Peace and War Ричарда Лебоу