Архитектура и программирование микропроцессора INTEL 80386/Пер. с англ. В. Л. Григорьева.— М.: Конкорд, 1992.— с. 334, ил. ISBN 5-87737-004-9 Перевод на русский язык книги английских авторов по программированию микропроцессора 80386 фирмы Intel способствует продвижению на рынок России новых информационных технологий и современных технических средств. Книга интересна тем, что она содержит полный комплекс инструкций по программированию процессора 80386 на языке ассемблер. Издание рассчитано на специалистов.
ОГЛАВЛЕНИЕ
От научного редактора перевода И
Глава 1. ВВЕДЕНИЕ В ЯЗЫК
АССЕМБЛЕР 13
1.1. Язык ассемблер 13
1.1.1. Префиксы команды 15 -----~ 16
1.1.2. Директивы ассемблера
1.1.3. Ассемблерная арифметика 17
1.1.4. Что делает язык ассемблер 18
1.1.5. Ассемблирование 80386 18
1.2. Машинные числа 20
1.2.1. Представление данных в компьютере 20
1.2.2. Представление чисел 22
1.3. Двоичная арифметика 23
1.3.1. Отрицательные двоичные числа 24
1.3.2. Переполнение и перенос 25
1.3.3. Знаковое расширение 26
1.3.4. Двоичная логика 26
Глава 2. АРХИТЕКТУРА ПРОЦЕССОРА
80386 28
2.1. Эволюция микропроцессоров фирмы Intel 29
2.2. Семейство 8086
30
2.3. Основа микропроцессоров 30
2.4. Базовый цикл в 8Q386 33
2.4.1. Процессор 80386 33
2.4.2. Программируемые регистры 34
2.5. Регистр флажков
2.5.1. Резерв фирмы Intel
2.5.2. Системные флажки
2.5.3. Флажки состояния
2.5.4. Флажки управления
2.6. Плоская и сегментированная память
2.6.1. Регистры управления, проверки и отладки
2.6.2. Регистры управления памятью
2.6.3. Типы данных
2.6.4. Режимы адресации
2.6.5. Прерывания и их особые случаи
Глава 3. СИСТЕМА КОМАНД ПРОЦЕССОРА 80386
3.1. Команды передачи данных
3.2. Арифметические команды
3.3. Команды преобразования данных
3.4. Команды десятичной арифметики
3.5. Логические команды
3.6. Команды сдвига и циклического сдвига
3.7. Команда операций над битами
3.8. Команды управления флажками
3.9. Циклические команды
3.10. Команды управления программой
3.11. Команды поддержки языка высокого уровня
3.12. Команды управления процессором
37 38 38 40 41
41
43 47 48 50 52
55 56 57 61 62 63 65 67 68 69 71
73 73
3.13. Команды операций с адресами 74
3.14. Команда преобразования 75
Глава 4. ИНСТРУКЦИИ
ПРОЦЕССОРА 80386 76
4.1. Как работает язык ассемблер 78
4.2. Что такое формат команды? 79
4.3. Временная информация 81
4.4. 80386 и другие процессоры iAPX 86 83
4.5. Система команд 85
Глава 5. ЗАЩИЩЕННЫЙ РЕЖИМ 269
5.1. Мультизадачность 269 5.1.1. Поддержка мультизадачное™ в 80386 271
5.2. Сегментация 273
5.2.1. Формирование линейного адреса 274
5.2.2. Дескрипторы сегментов и таблицы 275
5.3. Страничная организация 277 5.3.1. Формирование физического адреса 278
5.4. Виртуальная память 280 5.4.1. Поддержка виртуальной памяти 282
Глава 6. РЕЖИМ ВИРТУАЛЬНОГО 8086 284
6.1. Определение режима виртуального 8086 284
6.2. Виртуальные машины 285
6.3. Еще о виртуальных режимах
287
6.4. Сравнение процессоров и режимов 289
6.4.1. Сравнение программ 8086 с программами реального и защищенного режимов 80386 290
6.4.2. Новая архитектура 291
6.4.3. Новые и измененные команды 291
6.4.4. Новые команды для реального режима 80386 293
6.4.5. Другие различия между программами
8086 и защищенного режима 80386 294
6.5. Особенности операционной системы 297 6.5.1. Примеры гипервизоров 298
Глава 7. ВНУТРЕННЯЯ ОРГАНИЗАЦИЯ
ПРОЦЕССОРА 80386 300
7.1. Производительность компьютера 300
7.2. Обращение к памяти 301
7.2.1. Расслоение памяти 304
7.2.2. Кэширование памяти 306
7.2.3. Страничные RAM 311
7.2.4. Организация памяти 312
7.3. Внутреннее устройство 80386 317
7.3.1. Конвейеризация команд 317
7.3.2. Блоки процессора 80386 319
7.3.3. Выполнение команд в 80386 328
7.4. Примеры сложных команд 332
7.5. Особенности программирования 333
Список рисунков
Рис. 2.1. Общие компоненты компьютера
32
Рис. 2.2. Регистры данных 80386 (общего назначения) 35
Рис. 2.3. Регистры указателя и индексации 80386 36
Рис. 2.4. Сегментные регистры 37
Рис. 2.5. Регистр флажков 38
Рис. 2.6. Сложение селектора и смещения для получения 20-байтного адреса 42
Рис. 2.7. Регистры отладки 46
Рис. 4.1. Время выполнения некоторых команд 77
Рис. 4.1.а. Байт ModRM 80
Рис. 4.1.6. Байт SIB 81
Рис. 4.2. Очереди и скорость выполнения 82
Рис. 4.3. Системы команд семейства iAPX 86 84
Рис. 5.1. Дескриптор шлюза задачи 272
Рис. 5.2. Дескриптор сегмента 275
Рис. 5.3. Элемент каталога страниц/элемент таблицы страниц
278
Рис. 5.4. Связь виртуальной памяти с дисковой
памятью и реальной памятью 281
Рис. 7.1. Сигналы синхронизации 302
Рис. 7.2. RAM с расслоением (2 банка) 305
Рис. 7.3. Подсистема кэш-памяти 306
Рис. 7.4. Обращение к кэш-памяти 310
Рис. 7.5. Диаграмма для 32-элементного TLB 327
Список таблиц
Таблица 2.1. Номера и описания прерываний 53
Таблица 4.1. Логические операции над тетрадами 85
Таблица 7.1. Время реакции микросхем RAM 307
Таблица 7.2. Сравнение обращений 308
Таблица 7.3. Размер и эффективность кэш-памяти 308
Таблица 7.4. Действие конвейеризации 318
Список листингов
Листинг 1.1. Пример ассемблерной программы 19
Листинг 1.2. Процесс ассемблирования 20
Листинг 1.3. Двоичные, десятичные и 16-ричные
цифры 21
Листинг 1.4. Двоичная логика 26
Листинг 1.5. Применение логических операторов 27
Листинг 7.1. Элемент очереди дешифрованной команды 321
Листинг 7.2. Пример команд 328
Листинг 7.3. Сложные команды 333
От научного редактора перевода
Микропроцессоры фирмы Intel в значительной степени определяют направление развития компьютерной техники в последнее десятилетие. Каждые несколько лет фирма Intel демонстрирует новые прорывы в своей технологии, существенно меняя наши представления о возможностях компьютеризации.
Предлагаемая читателю книга представляет собой последовательное изложение архитектурных особенностей и тонкостей программирования микропроцессора i80386, пришедшего ,на смену наиболее распространенному сегодня для класса персональных компьютеров процессора i80286.
Новый процессор фирмы Intel представляет собой не только очередной шаг в повышении производительности микропроцессоров и степени их интеграции, но и содержит целый ряд принципиально новых подходов, реализованных в его архитектуре.
Профессиональные разработчики программ для многопроцессорных систем и систем с повышенными требованиями к надежности и защите программ найдут в этой книге самое подробное изложение и примеры реализации соответствующих механизмов i80386.
В то же время, первые главы книги дают тот необходимый минимум вводной информации, который позволит понять весь последующий материал и читателю, не имеющему специальной профессиональной подготовки.
В настоящее время фирма Intel начала следующий этап наступления в повышении мощности своих микропроцессоров.
Процессор 180486 и следующие за ним i80586, i80686 (Р5 и Р6) обещают гораздо


Hosted by uCoz