Некоторые справочники / учебники по x86 ASM?
Я пытаюсь найти ссылки на языки сборки x86. Учебники / Примеры, чтобы помочь моему пониманию. -Спасибо
5 ответов
- Программирование с нуля (бесплатная книга, настоятельно рекомендуется)
- Сборка x86 (wikibooks.org)
- Основные ресурсы для программистов на x86
Я рекомендую Roby's PC Assembly Tutorial Lesson. Это также доступно для скачивания. Содержит диаграммы и примеры.
"Этот урок по сборке предназначен для конкретной архитектуры x86, то есть для Intel 8088, 80286, 80386 и т. Д. Да, он совместим с вашим Pentium или Pentium III. Пользователи AMD также могут использовать этот учебник, потому что я рассматриваю только основы. Я полагаю, что вы немного разбираетесь в каком-то языке программирования, таком как Pascal, C или C++. Я не хочу перебирать базовые концепции программирования заново ".
- Предварительный урок - базовые понятия низкого уровня
Рассказывает о регистрах, флагах, памяти, стеках и прерываниях. Не беспокойся об этом слишком сильно. Вы можете быть перепутаны с очень многими понятиями. Однако, по мере того, как вы будете следовать уроку, я думаю, что все концепции должны быть достаточно ясными. - Глава 1 - Структура программы COM
Начните свое путешествие в сборке, соблюдая простейшую структуру программы. - Глава 2 - Переменные в сборке
Откройте для себя уникальную концепцию переменных на ассемблере. Понятие сильно отличается от обычного языка программирования высокого уровня. Я также объясняю, как работает инструкция mov. - Глава 3 - Арифметические инструкции
Как мы можем выполнить некоторую арифметику в сборке? - Глава 4 - Побитовая логика, часть 1
Использование и, или, и xor для выполнения различных логических задач, включая маскирование битов и переключение. - Глава 5 - Побитовая логика, часть 2
Сдвиг битов и их прокрутка могут быть полезны для маскировки битов, изложенной в следующей главе. - Глава 6 - Ветвление
Филиал необходим для всех программ. Давайте попробуем несколько инструкций по ветвлению сборки, чтобы улучшить логику наших программ. - Глава 7 - Петля
Инструкция цикла в ассемблере может быть полезной для напоминания конструкции языка программирования более высокого уровня. - Глава 8 - Основы прерывания
Использование общих служб системных прерываний для вывода на экран и ввода данных. - Глава 9 - Стеки Использование push и pop и знание поведения стека. Некоторые подробности о режиме крошечной памяти объясняются здесь.
- Глава 10 - Создание подпрограмм
Использование подпрограмм для имитации подхода структурированного программирования. - Глава 11 - Макросы
Использование макросов. - Глава 12 - Доступ к массиву
Посмотрите, как сборка предоставляет очень грубые инструкции доступа к массиву. - Глава 13 - Основные инструкции
Использование различных строковых инструкций: movs, lods, cmps, scas и stos. - Глава 14 - Структуры
Использование структур, подобных тем, которые используются в языках высокого уровня. Структура в сборке эквивалентна структуре в C/C++ и записи в Pascal. - Глава 15 - Немного теории
Режимы адресации и режимы памяти объяснены плюс Компьютерная архитектура 101.
Лучший, наиболее полный источник ассемблера, который я видел, - это книга " Язык ассемблера". Это бесплатная загрузка в нескольких версиях.
Для справки, справочные руководства Intel IA-32 являются окончательным источником.
Я считаю, что Professional Assembly Language - хорошее начало.