Современные компьютеры обладают способностью объединять несколько команд в одну. Это осуществляется с помощью программы, хранящейся в памяти. Когда команда дешифрована блоком управления, эта программа выдает последовательность инструкций для ее выполнения.
Блоки управления различных компьютеров отличаются друг от друга. В основном, блок управления состоит из индексного регистра, регистра команд, дешифратора команд, счетчика команд, генератора тактовых импульсов и схемы формирования импульсов управления (рис. 36-2).
Рис. 36-2. Блок управления компьютера.
Регистр команд запоминает командное слово, которое должно быть дешифровано. Это слово дешифруется дешифратором команд, посылающим соответствующий логический сигнал в генератор импульсов управления. Генератор импульсов управления выдает импульс при поступлении соответствующего тактового импульса. Выходной импульс генератора импульсов управления позволяет другой цепи в компьютере выполнить заданную команду.
Счетчик команд отслеживает последовательность команд, которые должны быть выполнены. Команды хранятся в программе, хранящейся в памяти. Для того чтобы программа начала выполняться, в счетчик команд помещается начальный адрес программы (определенное место в памяти).
Первая команда вызывается из памяти, дешифруется и выполняется. После этого счетчик команд автоматически перемещается к адресу следующей команды. Каждый раз, когда команда вызывается и выполняется, счетчик команд продвигается на один шаг до тех пор, пока программа не будет завершена.
Некоторые команды задают переход в другое место программы. Регистр команд содержит адрес расположения следующей команды, и он загружается в индексный регистр.
АЛУ выполняет операции, связанные с математической логикой и принятием решений. Большинство арифметико-логических устройств могут делать сложение и вычитание.
Умножение и деление программируются в блоке управления. Арифметико-логическое устройство может выполнять логические операции, такие как инверсия, И, ИЛИ и исключающее ИЛИ. Оно может также принимать решения путем сравнения заданных чисел с 0, 1 или отрицательными числами.
На рис. 36-3 изображена блок-схема арифметико-логического устройства. Оно состоит из арифметико-логической цепи и накапливающего регистра.
Рис. 36-3. Арифметико-логическое устройство (АЛУ).
Все данные в арифметико-логическую цепь и накапливающий регистр посылаются через регистр данных. Содержимое накапливающего регистра может быть увеличено на 1, уменьшено на 1, сдвинуто вправо на одну позицию или влево на одну позицию. Накапливающий регистр имеет такой же размер, как и слово памяти; в 8-разрядном микропроцессоре слово памяти и накапливающий регистр имеют размер 8 бит.
Арифметико-логическая цепь является, главным образом, двоичным сумматором. Двоичный сумматор может производить сложение, вычитание и логические операции.
Для сложения двух двоичных чисел, одно число запоминается в накапливающем регистре, а другое запоминается в регистре данных. После сложения сумма двух чисел размещается в накапливающем регистре, заменяя исходное двоичное число.
Память — это место, где хранятся программы. Программы содержат команды, указывающие компьютеру, что надо делать. Программа — это последовательный набор команд для решения определенной задачи.
Память компьютера — это просто некоторое количество регистров хранения. Данные могут быть загружены в регистры и могут быть выгружены оттуда или «считаны» для выполнения каких-либо операций, сохраняющих содержимое регистров. Каждому регистру или ячейке памяти сопоставлено число, называемое адресом. Адрес используется для определения места данных в памяти.
На рис. 36-4 изображено типичное распределение памяти.
Рис. 36-4. Распределение памяти в компьютере.
Регистры памяти сохраняют двоичные данные. Эта память, обычно называемая памятью с произвольным доступом (RAM), основана на способности ячеек памяти хранить (записывать) или находить (читать) данные, или памятью только для чтения (ROM), способной только считывать данные из памяти.
Читать дальше