Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Что значит дизассемблировать? Только объясните понятно.

рома малышев Мастер (2144), закрыт 8 лет назад
Лучший ответ
Сергей Ноздрин Мастер (1582) 11 лет назад
как ты знаешь каждую программу пишут програмисты.
на разных языках програмирования, которые даже не похожи между собой.
общее между ними всеми то, что конечный результат (exe - файл, сама программа) это набор машинных команд "говорящий" процессору и памяти и всем устройствам компьютера что и как надо делать (выводит красивые окошки, делать вычисления.... )

назад в код для программистов программу переделать невозможно (для того что бы внести изменения) , но возможно переделать в код, называемый языком "ассемблер"
это язык, который работает непосредственно с машинными командами
но работать на нем очень сложно для многих современных програмистов

вот этот перевод и есть дизассемблирование.

обычно применяется для того что бы сломать программу что бы она не просила ключ регистрации и что нибудь в этом роде
Остальные ответы
Анастасия Лыжина Мастер (1788) 11 лет назад
Дизассе́мблер — транслятор, преобразующий машинный код, объектный файл или библиотечные модули в текст программы на языке ассемблера.

По режиму работы с пользователем делятся на

Автоматические
Интерактивные
Примером автоматических дизассемблеров может служить Sourcer. Такие дизассемблеры генерируют готовый листинг, который можно затем править в текстовом редакторе. Пример интерактивного — IDA. Он позволяет изменять правила дизассемблирования и является весьма удобным инструментом для исследования программ.

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

Чаще всего дизассемблер используют для анализа программы (или ее части) , исходный текст которой неизвестен — с целью модификации, копирования или взлома. Реже — для поиска ошибок (багов) в программах и компиляторах, а также для анализа и оптимизации создаваемого компилятором машинного кода.

Источник: понятно?
Άηϑρέΰ ҂ Искусственный Интеллект (180095) 11 лет назад
было: AE 00
а стало: mov ax, 0

преобразовать машинный код в мемо-код
Krab Bark Искусственный Интеллект (191708) 11 лет назад
Перевести программу или ее часть из машинного кода в текст на Ассемблере (наиболее близкий к машинному коду язык программирования).
Кирилл Мухин Профи (502) 11 лет назад
Это значит - перевести в ассемблер.
Сергей Шапавалoв Ученик (177) 7 лет назад
Дизассе́мблер — транслятор, преобразующий машинный код, объектный файл или библиотечные модули в текст программы на языке ассемблера.

По режиму работы с пользователем делятся на

-Автоматические
-Интерактивные

Примером автоматических дизассемблеров может служить Sourcer[1]. Такие дизассемблеры генерируют готовый листинг, который можно затем править в текстовом редакторе. Пример интерактивного — IDA. Он позволяет изменять правила дизассемблирования и является весьма удобным инструментом для исследования программ.

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

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

Обычно однопроходный дизассемблер (как и построчный ассемблер) является составной частью отладчика.

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