- •Глава 2. Многоуровневая организация компьютера. Архитектура и структура компьютера
- •2.1 Сущность многоуровневой организации компьютера
- •2.2. Современные многоуровневые компьютеры
- •2.3. Развитие многоуровневых компьютеров
- •2.4. Аппаратное и программное обеспечение логически эквивалентны
- •2.5. Изобретение микропрограммирования
- •2.6. Изобретение операционной системы
- •2.7. Смещение функциональности на уровень микрокода
- •2.8. О терминах "архитектура и структура" компьютера
- •2.9. Методы исследования сложных систем
- •Контрольные вопросы
2.9. Методы исследования сложных систем
Любой компьютер, даже, на первый взгляд, самый простой, представляет собой сложную систему, состоящую из миллионов простейших электронных компонентов. Единственный способ описать функционирование и структуру подобного рода сложных систем — выполнить ее иерархическую декомпозицию.
Любую иерархическую систему можно представить в виде ограниченного множества взаимодействующих подсистем, каждая из которых выполняет определенные функции и в свою очередь может иметь иерархическую структуру. Иерархическая декомпозиция может быть распространена на достаточно большую глубину, например, относительно компьютера — вплоть до уровня отдельных логических комбинационных схем.
Осознание иерархической природы сложной системы очень существенно как с точки зрения ее описания (анализа), так и с точки зрения проектирования (синтеза) такой системы. На определенном этапе проектирования разработчик, как правило, имеет дело с каким-либо одним уровнем иерархии. Описание функций каждого уровня выполняется в терминах абстрактных функций компонентов этого уровня, каковыми являются элементы следующего, более низкого в иерархии уровня. При проектировании подсистемы любого уровня для разработчика наибольший интерес представляют ее (подсистемы) структура и распределение функций между компонентами.
Структура — это способ объединения компонентов подсистемы в единое целое, а функции — операции, выполняемые каждым компонентом в процессе реализации функции, назначенной всей подсистеме.
При решении проблемы анализа сложной системы (ее описания) можно применить один из двух альтернативных подходов: начать с описания функций элементов самого низкого уровня и далее подниматься по уровням иерархии все выше и выше (восходящий подход, или подход "снизу-вверх") или рассмотреть систему в целом и попытаться отыскать в ней подсистемы, относительно независимые в смысле выполняемых функций (нисходящий подход, или подход "сверху-вниз"). Далее такого же рода декомпозиция применяется к выделенным подсистемам и т.д. Практика анализа разного рода больших систем показала, что нисходящий подход обладает несомненными преимуществами в смысле ясности и эффективности анализа.
Этом подход и будет использоваться в дальнейшем.
Контрольные вопросы
Дайте определение программы
Какой язык называют машинным?
Почему машинный язык неудобен человеку?
Какие языки удобны человеку и почему?
Какая технология выполнения программ называется трансляцией?
Как выполняется интерпретация программы?
Общее и различия между трансляцией и интерпретацией
Почему нет компьютеров прямо выполняющих программы, написанные на языках высокого уровня?
Сколько уровней в современных компьтерах?
Каковы особенности уровня структуры?
Каковы особенности уровня ассемблера?
Какие функции выполняет уровень операционной системы?
Что понимается под термином «Архитектура компьютера»?
Что входит в перечень характеристик «Архитектуры компьютера»?
Что понимается под термином «Структура компьютера»?
Что входит в перечень характеристик «Структура компьютера»?
Почему архитектура компьютера должна быть стабильной?
Что такое программная соместимость?
Почему надо стремиться к сохранению программной совместимости?
В чем причина изменчивости структуры компьютера?
