5.4 KiB
- Развитие Машины Тьюринга. Отличия:
- Лента заменена на Random-Access Memory (RAM)
- Инструкции и данные объединены
- Призвана быть максимально простой в реализации и производстве
- Процедурное программирование и ООП - тот же принцип
Особенности
- Использование двоичного кодирования
- Встречается и троичное, и двоично-десятичное кодирование
- Программное управление. Команды выполняются последовательно
- Последовательность и порядок сегодня условны
- Память компьютера однородно хранит данные и программы
- Однородность спорна
- Ячейки памяти компьютера имеют адреса. Random-Access Memory
- Адрес не сводится к целому числу сегодня
- Память не является пассивным элементом компьютера
- Возможность условного перехода
- И перехода по иным причинам
Окружение
(Микро)процессор
Цифровая схема, которая выполняет операции с внешним источником данных (обычно с памятью или потоком данных)
(Микро)контроллер
Микросхема, предназначенная для управления электронными устройствами. Типичный микроконтроллер сочетает функции процессора и периферийных устройств, содержит ОЗУ и/или ПЗУ
Оперативная память (память)
Обычно часть компьютерной памяти, в которой хранится выполняемый машинный код, а также входные, выходные и промежуточные данные
Control Unit и DataPath
Control Unit
Компонент центрального процессора (CPU), управляющей работой процессора. CU часто использует двоичный декодер для преобразования закодированных инструкций в управляющие сигналы, координирующие работу остальных блоков
DataPath
АЛУ, набор регистров и внутренние шины CPU, по которым данные перемещаются между ними
Виды инструкций
- Работа с памятью: запись констант, копирование данных (память, регистры, порты I/O)
- Арифметческие, логические и битовые операции
- Управляющие операции: переходы, вызов и возврат из подпрограмм
- Инструкции сопроцессоров: загрузка и выгрузка данных, управление сопроцессором
Роль машинного слова
Единица данных, которая выбрана естественной для данной архитектуры процессора
- Может быть адресована в памяти
- Передается по шине между памятью и процессором за один раз
- Является стандартной единицей обрабатываемой информации
- Связанные вопросы: формат инструкции, форматы данных, форматы адресов
На практике
- В чистом виде практически не встречаются
- Влияние на индустрию - трудно переоценить
- Элементы архитектуры присутствуют в подавляющем большинстве процессоров и средств разработки
- Структурное программирование, ООП - наследие фон Неймана
- Ловушка обратной совместимости
Вариации
- Память команд и данных: Принстонская и Гарвардская архитектуры
- Типы данных, адресные пространства, машинные слова, теги
- Принцип работы с данными в DataPath
- Accumulator, Register-to-Register, Register-to-Memory, Memory-to-Memory, Stack Architectures
- "Мощность" системы команд: CISC, RISC
- Количество операндов (0, 1, 2, ...)
- Кодирование инструкций
- Принципы построения Control Unit
- Адресация операндов Кроме того: ввод-вывод, параллелизм, иерархия памяти и тп

