Алгоритм функционирования процессора
Центральный процессор (ЦП; также центра́льное проце́ссорное устро́йство — ЦПУ; англ. central processing unit, CPU, дословно — центральное обрабатывающее устройство, часто просто процессор) — электронный блок либо интегральная схема, исполняющая машинные инструкции (код программ), главная часть аппаратного обеспечения компьютера или программируемого логического контроллера. Иногда называют микропроцессором или просто процессором.
Функционирование компьютера с шинной организацией определяется работой процессора, которая, в свою очередь, осуществляется в соответствии со следующим алгоритмом (рис. 1).
Рис. 1. Алгоритм функционирования центрального процессора (ЦП).
- Инициализация. После включения компьютера (или после операции сброса) в регистры процессора заносят начальные значения. Обычно в этом случае в память записывают специальную программу (первичный загрузчик), основное назначение которой загрузить с какого-либо устройства внешней памяти операционную систему. Программному счетчику присваивается начальное значение, равное адресу первой команды программы.
- Выборка команды. Центральный процессор считывает команду из памяти. Для нахождения адреса ячейки памяти используется содержимое программного счетчика.
- Увеличение командного счетчика. Содержимое считанной ячейки рассматривается процессором как команда и помещается в регистр команд. Устройство управления интерпретирует прочитанное. По полю кода операции из первого слова команды УУ определяет ее длину и, если необходимо, организует дополнительные операции считывания, пока вся команда не будет полностью прочитана процессором. Вычисленная длина команды прибавляется к исходному содержимому программного счетчика, и, к моменту полного прочтения всей команды, программный счетчик будет хранить адрес следующей команды.
- Дешифровка. По адресным полям команды УУ определяет, имеет ли команда операнды в памяти. Если это так, то на основе указанных в адресных полях режимов адресации вычисляются адреса операндов и производится операция чтения памяти для считывания операндов.
- Выполнение команды. УУ и АЛУ выполняют операцию, указанную в коде операций команды. Во флаговом регистре процессора запоминаются признаки результата: равно нулю или нет, знак результата, наличие или отсутствие переполнения и т.п.
- Запись результата. Если это необходимо, УУ выполняет операцию записи, чтобы поместить результат выполнения команды в память.
- Остановка процессора. Если последней не была команда «Остановить процессор», то настоящая последовательность действий повторяется, начиная с шага 1.