Логические и арифметические основы и принципы работы ЭВМ

         

Автомат Неймана


По принципу обработки информации вычислительное устройство, предложенное Нейманом (автомат Неймана – АН), существенно отличается от машины Тьюринга.

Важная особенность машины Тьюринга – преобразование информации на каждом такте происходит лишь в одной ячейке, остальные дожидаются посещения головки, хотя часто имеется возможность работать параллельно.

Простейшее решение – использование нескольких машин Тьюринга с общей для них внешней памятью (лентой) – не всегда допустимо из-за возможных конфликтов при обращении к одной и той же ячейке памяти.

В автомате Неймана число одновременно обрабатываемых ячеек может неограниченно расти, оставаясь в каждый момент конечным.

Элемент Неймана (ЭН) – это устройство, которое на каждом такте пребывает в одном из конечного числа состояний ri

R, образующих его алфавит. ЭН имеет два входных канала: левый и правый; по каждому из них на такте t также поступает по одному состоянию из R (рис. 2).


Рис. 10.2.  Элемент Неймана

Элемент реализует функцию zt+1=

(ri, rj, rm)t, то есть в такте t+1 переходит в состояние z, определяемое его состоянием в текущий момент времени и значениями, поступившими по входным каналам.

Состояния элементов Неймана в момент времени t определяют конфигурацию автомата Неймана (рис. 3) в момент t: K(t).


Рис. 10.3.  Структура автомата Неймана

Функционирование АН – это переход от состояния К(t) к состояниям K(t+1), K(t+2)...

За один такт свое состояние может менять большое число элементов Неймана, что фактически приводит к параллельной обработке информации.



Классические основы построения ЭВМ


Основы построения электронных вычислительных машин в их современном понимании были заложены в 30-е – 40-е годы прошлого века видными учеными: английским математиком Аланом Тьюрингом и американцем венгерского происхождения Джоном (Яношем) Нейманом.



Машина Тьюринга


В 1936 году А. Тьюринг сформулировал понятие абстрактной вычислительной машины. Одновременно с ним, хотя и не в столь явной форме, это же сделал Э. Пост (США). Хотя машина Тьюринга (МТ) не стала реально действующим устройством, она до настоящего времени постоянно используется в качестве основной модели для выяснения сущности таких понятий, как "вычислительный процесс", "алгоритм", а также для выяснения связи между алгоритмом и вычислительными машинами [11].



Основные положения машины Тьюринга


Машина Тьюринга (рис.10.1) имеет конечное число знаков si, образующих внешний алфавит, в котором кодируются сведения, подаваемые в МТ, а также вырабатываемые в ней. Среди знаков имеется пустой знак (s1), посылка которого в какую-либо ячейку стирает находившийся в ней знак и оставляет ее пустой.


Рис. 10.1.  Структура машины Тьюринга

В зависимости от поданной начальной информации

(содержащихся на ленте внешней памяти знаков) возможны два случая:

после конечного числа тактов машина останавливается (имея информацию ?), подавая сигнал об остановке. В этом случае МТ применима к информации

и перерабатывает ее в информацию ?;остановка никогда не наступает. В этом случае МТ не применима к начальной информации
.

В каждый момент обозревается лишь одна ячейка ленты (памяти). Переход может осуществляться лишь к соседней ячейке ( R – вправо, L–влево, N– нет перехода (остаться)). Переход к произвольной ячейке производится путем последовательного перебора всех ячеек, разделяющих текущую и необходимую ячейки. На каждом отдельном такте t команда предписывает только замену единственного знака si, хранящегося в обозреваемой ячейке, каким-либо другим знаком sj.

Логический блок МТ имеет конечное число состояний {qi} i=1..m.

Знаки R, L, N, q1,..,qmобразуют внутренний алфавит машины.

Переработанный знак sj, записываемый в просматриваемую ячейку, состояние, которое примет машина Тьюринга в следующем такте q(t+1) и выполняемая в данном такте операция перехода к следующей ячейке P(t+1) являются функцией анализируемого в данном такте символа и текущего состояния машины si и q(t):

si(t+1)=f1(si,q(t)); q(t+1)=f2(si,q(t)); P(t+1)=f3(si,q(t)).

Программа для МТ определяется тройкой {si, P, q}t.

Пример записи программы вычисления логической функции "неравнозначность" для машины Тьюринга представлен ниже.

Символ (si)Состояниеq1q2q3q4
00, R, q20, N, q41, N, q40, N, q4
11, R, q31, N, q40, N, q41, N, q4

Перед началом работы машина Тьюринга находится в состоянии q1 считывания первого операнда.

Данная МТ применима к исходной информации. Останов – состояние q4. Значение si в ячейке y не меняется (сохраняется результат).

Если программа для МТ будет определена таблицей переходов

Символ (si)Состояниеq1q2q3q4
00, R, q20, N, q41, N, q41, N, q4
11, R, q31, N, q40, N, q40, N, q4

то данная МТ будет не применима к исходной информации, поскольку в состоянии q4 значение si в ячейке y постоянно меняется на противоположное.



Структура ЭВМ


В 1946 году Джоном Нейманом на летней сессии Пенсильванского университета был распространен отчет, заложивший основы развития вычислительной техники на несколько десятилетий вперед. Последующий опыт разработки ЭВМ показал правильность основных выводов Неймана, которые, естественно, в последующие годы развивались и уточнялись.

Основные рекомендации, предложенные Нейманом для разработчиков ЭВМ [11]:

Машины на электронных элементах должны работать не в десятичной, а в двоичной системе счисления.Программа должна размещаться в одном из блоков машины – в запоминающем устройстве (ЗУ), обладающем достаточной емкостью и соответствующими скоростями выборки и записи команд программы.

Программа так же, как и числа, с которыми оперирует машина, представляется в двоичном коде. Таким образом, по форме представления команды и числа однотипны. Это обстоятельство приводит к следующим важным последствиям:

промежуточные результаты вычислений, константы и другие числа могут размещаться в том же ЗУ, что и программа;числовая форма записи программы позволяет машине производить операции над величинами, которыми закодированы команды программы.

Трудности физической реализации ЗУ, быстродействие которого соответствовало бы скорости работы логических схем, требует иерархической организации памяти.Арифметические устройства машины конструируются на основе схем, выполняющих операцию сложения. Создание специальных устройств для вычисления других операций нецелесообразно.В машине используется параллельный принцип организации вычислительного процесса (операции над словами производятся одновременно по всем разрядам).

ЭВМ, построенная по принципам, определенным Нейманом, состоит из следующих основных блоков (рис. 4): запоминающего устройства, арифметико-логического устройства и устройства управления.


Рис. 10.4.  Структура классической ЭВМ

Запоминающее устройство, или память – это совокупность ячеек, предназначенных для хранения некоторого кода. Каждой из ячеек присвоен свой номер, называемый адресом .