Читать «Архитектура компьютера» онлайн - страница 54

Эндрю Таненбаум

Краткое содержание книги

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

Мы в первую очередь имеем дело с общими понятиями и не касаемся деталей и строгой математики. По этой причине многие примеры значительно упрощены, чтобы сделать упор на основных понятиях, а не на деталях.

Чтобы разъяснить, как принципы, изложенные в этой книге, могут применяться на практике, мы в качестве примеров используем компьютеры x86, ARM и AVR. Они были выбраны по нескольким причинам. Во-первых, они широко используются, и у читателя наверняка есть доступ хотя бы к одному из них. Во-вторых, каждый из этих компьютеров обладает собственной уникальной архитектурой, что дает основу для сравнения и возможность показать альтернативные варианты. Книги, в которых рассматривается только один компьютер, оставляют у читателя чувство, будто это и есть единственный нормальный компьютер, что является абсурдным в свете огромного числа компромиссов и произвольных решений, которые разработчики вынуждены принимать. Читатель должен рассматривать эти и все другие компьютеры критически и стараться понять, почему дела обстоят именно таким образом и что можно изменить, а не просто принимать их как данность.

Нужно уяснить с самого начала, что эта книга не о том, как программировать x86, ARM и AVR. Эти компьютеры используются только в качестве иллюстративных примеров, и мы не претендуем на их полное описание. Читателям, желающим ознакомиться с этими компьютерами, следует обратиться к публикациям производителей.

Глава 2 знакомит читателей с основными компонентами компьютера: процессорами, памятью, устройствами ввода-вывода. В ней дается краткое описание системной архитектуры, что потребуется при чтении следующих глав.

Главы 3-6 касаются каждая одного из уровней, показанных на рис. 1.2. Мы идем снизу вверх, поскольку компьютеры разрабатывались именно таким образом. Структура уровня k в значительной степени определяется особенностями уровня k -1, поэтому очень трудно понять, как устроен определенный уровень, если не рассмотреть подробно предыдущий, который и определяет строение последующего. К тому же с точки зрения обучения логичнее следовать от более простых уровней к более сложным, а не наоборот.