وبلاگ بلیان

Программирование на языке Ассемблера для 32/64-разрядных микропроцессоров семейства 80x86. Учебное пособие. Часть 1

معرفی کتاب «Программирование на языке Ассемблера для 32/64-разрядных микропроцессоров семейства 80x86. Учебное пособие. Часть 1» نوشتهٔ М.Ю. Смоленцев، منتشرشده توسط نشر Иркутский государственный университет путей сообщения در سال 1111. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.

Вступление Введение в язык ассемблера Концепция Джона фон Неймана 13-26.pdf 1.1. Основные тенденции в развитии микропроцессоров 1.2. Начало 1.3. Микропроцессор i8086 1.4. Микропроцессор i8088 1.5. Микропроцессор i80186 1.6. Микропроцессор i80188 1.7. Микропроцессор i80286 1.8. Микропроцессор i80386 1.9. Сопроцессор 1.10. Кэш-память 1.11. Микропроцессор i80486 1.12. Семейство микропроцессоров Pentium 1.12.1. Микропроцессор Pentium 1.12.2. Микропроцессор Pentium Pro 1.12.3. Микропроцессор Pentium MMX 1.12.4. Микропроцессор Pentium II 1.12.5. Микропроцессор Celeron 1.12.6. Микропроцессор Pentium III 1.12.7. Микропроцессор Pentium 4 27-62.pdf Глава 2 Представление данных 2.1. Позиционные системы счисления 2.1.1. Шестнадцатеричные числа 2.1.2. Двоичные числа 2.1.3. Почему в байте именно 8 бит? 2.2. Представление отрицательных двоичных целых чисел 2.3. Расширение знака и расширение нуля 2.4. Представление чисел с плавающей запятой 2.5. Битовое поле 2.6. Буквено-цифровые символы 2.6.1. Русские кодировки в DOS и Windows 2.6.2. Управляющие символы 2.7. Строка 63-105.pdf Глава 3 Архитектура 32/64-разрядногомикропро­цессора семейства 80x86 3.1. Память 3.2. Внутренняя архитектура 32/64-разрядногомикропро­цессора семейства 80x86 3.3. Регистры микропроцессора 3.3.1. Регистры общего назначения 3.3.2. Регистры сегментов 3.3.4. Сегментация памяти 3.3.5. Защищенный режим и виртуальная память 3.3.6. Регистры дескриптора сегмента 3.3.7. Системные регистры 3.3.8. Регистр флагов (RFLAGS/EFLAGS) Флаги состояния 3.3.9. Указатель команд 3.4. Система команд 3.5. Система прерываний 3.5.1. Внешние прерывания 3.5.2. Внутренние прерывания Глава 4 Этапы создания программы на языке ассемблера 4.1. Подготовка текста программы 4.1.1. Использование стандартных редакторов 4.2. Ассемблирование программы 4.3. Компоновка программы 4.4. Загрузка программы 4.5. Отладка программы 4.6. Использование интегрированных сред 4.7. Структура программы 4.8. Пишем первую программу на языке ассемблера 106-108.pdf Глава 5 Основные правила написания программ на языке ассемблерА Начинайте с комментариев Читайте код Разлагайте сложные проблемы на задачи меньшего размера Используйте язык полностью Проблема должна быть хорошо продумана перед тем,как она смо­жет быть решена Отредактируйте свой код. Программа должна писаться не менее двух раз Оптимизация программ на языке ассемблера 108-133.pdf 6.1. Лексемы 6.1.1. Идентификаторы 6.1.2. Целые числа 6.1.3. Символьные и строковые константы 6.2. Предложения 6.2.1. Комментарии 6.2.2. Команды Метка Мнемокод Операнды Комментарий 6.2.3. Директивы Директивы определения данных Директива DB Операнд «?» Операнд – константное выражение со значением от –128 до 255 Директива с несколькими операндами Операнд – строка Операнд – конструкция повторения DUP Директива DW Операнд «?» Константное выражение со значением от –32768 до 65535 Адресное выражение Несколько операндов, конструкция повторения Директива DD Операнд «?» Константное выражение со значением от –231 до 232-1 Адресное выражение Несколько операндов, конструкция повторения Дополнительные директивы определения данных Выводы Директивы эквивалентности и присваивания Директива эквивалентности Операнд – имя Операнд – константное выражение Операнд – любой другой текст Директива присваивания «=» Целочисленные выражения Константные выражения Адресные выражения Мнемоника команд MMX, SSE, SSE2 SIMD для работы с вещественными числами: SIMD для работы с целыми числами: 109-134.pdf 6.1. Лексемы 6.1.1. Идентификаторы 6.1.2. Целые числа 6.1.3. Символьные и строковые константы 6.2. Предложения 6.2.1. Комментарии 6.2.2. Команды Метка Мнемокод Операнды Комментарий 6.2.3. Директивы Директивы определения данных Директива DB Операнд «?» Операнд – константное выражение со значением от –128 до 255 Директива с несколькими операндами Операнд – строка Операнд – конструкция повторения DUP Директива DW Операнд «?» Константное выражение со значением от –32768 до 65535 Адресное выражение Несколько операндов, конструкция повторения Директива DD Операнд «?» Константное выражение со значением от –231 до 232-1 Адресное выражение Несколько операндов, конструкция повторения Дополнительные директивы определения данных Выводы Директивы эквивалентности и присваивания Директива эквивалентности Операнд – имя Операнд – константное выражение Операнд – любой другой текст Директива присваивания «=» Целочисленные выражения Константные выражения Адресные выражения Мнемоника команд MMX, SSE, SSE2 SIMD для работы с вещественными числами: SIMD для работы с целыми числами: 109-134.pdf 6.1. Лексемы 6.1.1. Идентификаторы 6.1.2. Целые числа 6.1.3. Символьные и строковые константы 6.2. Предложения 6.2.1. Комментарии 6.2.2. Команды Метка Мнемокод Операнды Комментарий 6.2.3. Директивы Директивы определения данных Директива DB Операнд «?» Операнд – константное выражение со значением от –128 до 255 Директива с несколькими операндами Операнд – строка Операнд – конструкция повторения DUP Директива DW Операнд «?» Константное выражение со значением от –32768 до 65535 Адресное выражение Несколько операндов, конструкция повторения Директива DD Операнд «?» Константное выражение со значением от –231 до 232-1 Адресное выражение Несколько операндов, конструкция повторения Дополнительные директивы определения данных Выводы Директивы эквивалентности и присваивания Директива эквивалентности Операнд – имя Операнд – константное выражение Операнд – любой другой текст Директива присваивания «=» Целочисленные выражения Константные выражения Адресные выражения Мнемоника команд MMX, SSE, SSE2 SIMD для работы с вещественными числами: SIMD для работы с целыми числами: 135-155.pdf Глава 7 Команды передачи данных 7.1. Команды пересылки 7.1.1. Команда MOV Программирование на уровне битов Режимы адресации Уменьшение размера кодировки MOV 7.2. Команда LEA 7.3. Команда XCHG 7.4. Команда обмена байтов BSWAP 7.5. Оператор указания типа (PTR) 156-168.pdf Глава 8 Булева алгебра 169-195.pdf Глава 9 Логические команды 9.1.1. Команда NOT 9.1.2. Команда AND 9.1.3. Команда OR 9.1.4. Команда XOR Шифрование с помощью команды XOR 9.1.5. Команда ANDN Алгоритм работы: Пример: mov mm0,00000A5A5h mov mm7,000000FF0h pandn mm0,mm7 9.1.6. Команда TEST 9.2. Команды обработки бит 9.2.1. Команды сканирования бит Команда BSF Команда BSR 9.2.2. Команды проверки и модификации бит Команда BT Команда BTC Команда BTR Команда BTS Работа с битами Команды управления флагами микропроцессора Установка флага CF Сброс флага CF Инвертировать флаг CF Установка флага DF Сброс флага DF Установка флага IF Сброс флага IF Установка флага ZF Установка флага TF Одновременное изменение значения нескольких флагов Обобщаем. Как изменить (установить/сбросить) определенный бит в байте? М.Ю. Смоленцев
دانلود کتاب Программирование на языке Ассемблера для 32/64-разрядных микропроцессоров семейства 80x86. Учебное пособие. Часть 1