akorop |
|
Темы:
111
Сообщения:
1755
Участник с: 29 февраля 2012
|
AivarВсё правильно, но так было с полвека назад. А сейчас правильнее говорить, что Ассемблер создан, чтобы затруднить жизнь пишущему :) Ведь гораздо проще писать на C и т.п, не задумываясь о распределении регистров и прочих плюшках программирования на Ассемблере. А возможность программировать на C сейчас есть всегда. Даже для самого свежеиспечённого микроконтроллера. Об этом заботится фирма-изготовитель этого микроконтроллера, иначе никто его не купит.vasekРиторика. Программа Ассемблер и создана, дабы облегчить жизнь пишущему. Ведь гораздо проще запомнить мнемонику, пользоваться метками, другими плюшками в т.ч. и макросами, нежели запоминать шестнадцатеричные (восьмеричные, двоичные...) значения команд, вручную записывать/перемещать массивы данных, прописывать адреса к ним, короче кодить непосредственно в машинном коде. |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
akorop, Есть вещи, которые нет (и раньше тоже не было) смысла писать на ассемблере. Но по-прежнему есть вещи, которые ни на чём другом написать не получится, к примеру, тяжелые вычисления с оптимизацией под определённые наборы инструкций, и некоторые другие куски кода, от которых требуется максимально достижимая производительность на конкретной архитектуре. |
RAMZAY |
|
Темы:
43
Сообщения:
448
Участник с: 21 мая 2011
|
кстати про дизассемблирование. Всегда интересно было что он там выводит. К примеру,если дизассемблирую программу,изменю в коде что нибудь,я смогу её изменённый код собрать через nasm ? Или я не совсем правильно понимаю работу дизассемблера |
Rarog |
|
Темы:
10
Сообщения:
188
Участник с: 22 января 2013
|
vasekЭто уже ассемблер, а не машинный код. vasekДа. RAMZAYДа. Дизассемблировать, изменить и собрать обратно - можно(врятли ч/з nasm, у него нет линковщика). Именно так крякуют почти всё коммерческое ПО. |
vasek |
|
Темы:
48
Сообщения:
11320
Участник с: 17 февраля 2013
|
RarogОпять уел за мою неточность - да понятно это мне, что машина оперирует только 0 и 1 крякуют - имеется более красивое название занимаются инженерным реверсингом PS.............а вообще то я не прав, крякают не умехи, а инженерным реверсингом занимаются специалисты - так как снять упаковщик, а уж потом написать генератор, могут только специалисты.
Ошибки не исчезают с опытом - они просто умнеют
|
dartsergius |
|
Темы:
18
Сообщения:
238
Участник с: 15 декабря 2011
|
vasekможно даже без знания асма снять star Force 5-й вроде как. Если там ВМ не скушала функции исполнительного файла. Да и на многие протекторы ща есть скрипты снятия) Причем в паблике) vasekИменно так. |
akorop |
|
Темы:
111
Сообщения:
1755
Участник с: 29 февраля 2012
|
NatrioБывает и такое. Именно поэтому любой вменяемый компилятор позволяет делать ассемблерные вставки или линковать ассемблерные подпрограммы. Но эти фрагменты обычно очень малы. Например, я люблю и нередко использую сопрограммы, которые никак не поддержаны в обычно используемых языках. Приходится или извращаться через longjmp или реализовывать самому ассемблерной вставкой. Но это - исключение; и это десятка два команд максимум. NatrioОчень странные примеры. Разработчик компилятора или какой-то крутой библиотеки этим, конечно, должен быть озабочен, но прикладному программисту таким способом заботиться об эффективности вредно. Лучше об алгоритме подумать тщательнЕе. Ну на сколько так можно ускорить вычисления? На 20%? Да гори они огнём. Если это офисная задача - подождут: пользователь, который готов секунду (минуту, час, день) ждать, подождёт и 1.2 секунды (минуты, часа, дня). А если это задача реального времени, надо просто мощнее процессор взять и не закладывать бомбу под будущее сопровождение. |
vasek |
|
Темы:
48
Сообщения:
11320
Участник с: 17 февраля 2013
|
dartsergiusПротектор протектору рознь, одни снимают, другие пишут новые и вклинивают туда всякое нехорошее, такое как ВМ, срытие байтов и т.п. Так что самое сложное сейчас, это именно снятие протектора. А скриптами снимают то, что уже является пройденным этапом - особенно преуспевают в этом китаезы. PS.........но я чту и уважаю и не нарушаю уголовный кодекс.
Ошибки не исчезают с опытом - они просто умнеют
|
nafanja |
|
Темы:
94
Сообщения:
9252
Участник с: 02 июня 2012
заблокирован
|
Rarogчего чего? теоретически можно, а практически оно потом не соберется или работать не будет как исходный бинарник, дизасемблеры не настолько умны, это инструмент анализа!
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874 |
vasek |
|
Темы:
48
Сообщения:
11320
Участник с: 17 февраля 2013
|
nafanjaДа и теоретически не возможно. Дизассемблер только для анализа, ну и редко теста.
Ошибки не исчезают с опытом - они просто умнеют
|