Компьютер как основное средство обработки информации
В 1946 – 1948 годах в Принстонском университете (США) коллективом исследователей под руководством Джона фон Неймана был разработан проект ЭВМ, который никогда не был реализован, но идеи которого используются и по сей день. Этот проект получил название машины фон Неймана или Принстонской машины. В его состав входила схема (рассматривается ниже) и принципы функционирования вычислительной машины:
1) принцип программного управления: работа ЭВМ регламентируется программой, что позволяет, вводя разные программы, решать разные задачи. Команды, из которых состоит программа, интерпретируются специально введенным в схему устройством – устройством управления. Структура отдельной команды имеет вид:
<код операции> <операнды>,
где <код операции> определяет, какая операция должна выполняться,
<операнды> - список (возможно, одноэлементный) тех констант, адресов или имен переменных, над которыми выполняется данная операция.
В зависимости от числа операндов различают одно-, двух- и трехадресные машинные команды. Каждая команда имеет определенный объем, измеряемый байтами.
Этот принцип был самым прогрессивным среди включенных в проект, поскольку обеспечивал универсальность ЭВМ. В соответствии с принципом программного управления любая ЭВМ – это совокупность аппаратной (технической) и программной частей;
2) принцип условного перехода: команды из программы не всегда выполняются одна за другой. Возможно присутствие в программе команд условного перехода, которые меняют последовательное выполнение команд в зависимости от значений данных;
3) принцип размещения программы в памяти: программа, требуемая для работы ЭВМ, предварительно размещается в памяти компьютера, а не вводится команда за командой;
4) принцип иерархии памяти: память ЭВМ не однородна. Для часто используемых данных выделяется память меньшего объема, но большего быстродействия; для редко используемых данных выделяется память большего объема, но меньшего быстродействия;
5) принцип двоичной системы счисления: для внутреннего представления данных и программ в памяти ЭВМ применяется двоичная система счисления, которую можно проще реализовать технически.
Структура Принстонской машины представлена на рисунке:
|
Обозначения:
информационная связь,
управляющая связь.
Рассмотрим назначение отдельных элементов этой схемы и их взаимосвязь в процессе функционирования ЭВМ.
Через устройство ввода (УВв)в память (П)вводится программа – набор команд, предписывающих ЭВМ выполнять требуемые действия (на схеме связь 1). При вводе программы (а позже и данных) выполняется отображение вводимой информации во внутреннее представление, принятое в ЭВМ.
После размещения программы в памяти устройство управления (УУ)выбирает последовательно команду за командой из памяти (связь 2) и интерпретирует ее по следующим правилам:
· если выбранная команда является командой ввода данных, УУ посылает управляющий сигнал (связь 3) в УВв для начала ввода данных. Данные также вводятся по связи 1 и размещаются в памяти П;
· если выбранная команда связана с выполнением арифметических или логических операций, то в память П из УУ посылается сигнал (связь 4) на выборку указанных в команде данных с последующей их пересылкой в арифметико-логическое устройство (АЛУ) (связь 5), а в само АЛУ передается сигнал с кодом нужной операции (связь 7). АЛУ выполняет арифметические и логические действия над переданными операндами. После выполнения требуемых действия, АЛУ возвращает результат в память П (связь 6);
· если выбранная команда является командой вывода, УУ генерирует управляющий сигнал устройству вывода (УВыв)(связь 8) на начало операции по выводу данных. Сами данные выбираются из памяти П по связи 9.
УВыввыводит информацию из ЭВМ и преобразует ее из внутреннего представления во внешнее.
В соответствии с принципом иерархии памяти блок делится на два блока – внешняя и внутренняя память.Внешняя память традиционно отводится для долговременного хранения данных и программ, а сама оперативная обработка данных в соответствии с программой, как это было рассмотрено выше, выполняется во внутренней памяти.
В современных компьютерах блоки УУ и АЛУ объединены в блок, называемый процессором. В состав процессора, кроме указанных блоков, входят также несколько регистров – специальных небольших областей памяти, куда процессор помещает промежуточные результаты и некоторую другую информацию, необходимую ему в ближайшие такты работы.
Устройство управления
Структура УУ определяется важнейшей характеристикой процессора – адресностью машинных команд. Рассмотрим структуру УУ для двухадресных команд и взаимодействие его элементов в процессе функционирования:
УВв, УВыв, внешняя память, АЛУ
Регистр кода операции | Регистр первого операнда | Регистр второго операнда |
Регистр команды |
Блок центрального управлениягенерирует сигнал о начале выполнения очередной команды (связь 1). Ее адрес А находится в счетчике адреса команд.
Блок выборки из памятипо сигналу считывает из ОЗУпо адресу А, который выбирается из счетчика адреса команд (связь 8), очередную команду (связь 2) и помещает ее на временное хранение в регистр команд(связь 3).
Дешифратор кода операциивыбирает код (связь 4) и расшифровывает его. Затем передает информацию блоку формирования управляющих сигналов(связь 10):
· если операция арифметическая, от блока формирования управляющих сигналовпоступает сигнал в блок выборки из памяти(связь 5) с командой считать из ОЗУ операнды, расположенные по адресам, указанным в регистрах первого и второго операндов(связь 6), и поместить их в соответствующие регистры АЛУ. Затем формируется сигнал в АЛУна выполнение нужной операции (связь 7). Счетчик адреса команд увеличивается на объем команды (связь 9);
· если операция ввода-вывода, блок формирования управляющих сигналовформирует сигнал УВв и УВыв (связь 7). Счетчик адреса увеличивается на объем команды (по связи 9);
· если операция условного перехода, блок центрального управленияанализирует результат предыдущей операции, находящийся в АЛУ. Если знак результата отрицателен, в счетчик адреса командзаписывается адрес из регистра первого операнда. Если знак положителен, в счетчик адреса командзаписывается адрес из регистра второго операнда.Если результат равен 0, в счетчик адреса команддобавляется 1 (эти связи не показаны). Так реализуется принцип условного перехода.
· если операция безусловного перехода, в счетчик адреса командпересылается содержимое регистра первого операнда(связь не показана).