Нейман предложил трехкомпонентную
архитектуру, получившее название треугольник Фон - Неймана. В Фон-Неймановская
архитектура ЭВМвключает в себя:
1)ЦП – объединяющий в себе УУ(устройство управления) и
АЛУ(арифметико-логическое устройство).
2) ЗУ - запоминающее устройство -
память.
3)УВВ - устройство ввода-вывода.
Классификация памяти: 1.постоянная; 2.оперативная
Программы и данные должны
храниться в памяти. Ввод/вывод осуществляется через устройство ввода/вывода.
Общее управление осуществляет ЦП. Между УВВ и ЗУ предусмотрена связь, т. к. при
выполнении медленных операций ввода-вывода, ЦП может выполнять другие вычисления,
не требующие ввода-вывода. А специальное устройство – контроллер прямого
доступа к памяти управляет процессом передачи данных между ЗУ и УВВ. Под программой
понимают набор команд, извлекаемые в порядке их следования, либо в соответствии
с управляющими командами. Данные хранятся в виде переменных, которые могут быть
поименованы для последующей реализации и изменения. Программы данных хранятся в
памяти. Память – последовательность ячеек для хранения порций
информации. Доступ к информации ячеек осуществляется в соответствии с адресом
(порядковым номером) информация хранится в двоичном виде.
Единица информации бит, байт – минимально адресуемая в памяти единица
информации (1 байт=8 бит). Одним байтом может быть закодировано 28,
т. е. 256 различных значений. Байты объединяются в слова, двоичные слова. Размер машинного слова –
разрядность ЭВМ.
Классификация памяти: постоянная и оперативная.
В процессоре объединены два устройства
- УУ - для считывания команд данных из памяти и общей координации команд и АЛУ
- для простейших логических и арифметических операций.
Регистры –
быстродействующие ячейки памяти, расположенные на кристалле процессора.
Регистры специального назначения и регистры общего назначения:
РОН предназначены для логических и
арифметических операций. РСН – в их состав входят счетчик команд; регистр
состояния программы; регистр указателя стека. Счетчик команд хранит адрес
следующей команды; регистр состояние программы – обязательно включает в себя
флаги (1/0, да/нет, правда/ложь, true/false), характеризующие результат выполнения последней
программы. Флаги используются для выполнения условных операций. Регистр стека –
хранит адрес вершины стека. Стек – область памяти, доступ к
которой осуществляется по принципу LIFO.
Арифметико-логическое устройство
процессора предназначено для выполнения операций в соответствии с кодом команды
над данными, которые указываются в качестве аргумента.
Команда пересылки.
По ней данные, определяемые 1-м
операндом пересылаются по месту хранения, которое определяется 2-м операндом. Данные
пересылаются по адресу со смещением. При этом говорят о непосредственной
адресации в случае, если указаны данные; прямой адресации данных, если указан адрес
данных; косвенной, если указывается адрес адреса данных; индексная, если указан
индекс блока адреса и смещение.
Команды перехода.
Командам безусловного перехода
соответствует оператор goto; вместе с кодом операции указывается операнд
определяющий адрес команды на которую передается управление. Фактически
осуществляется команда пересылки адреса команды в реестр счетчика команд. Для
задания адреса могут использоваться различные виды адресации. При команде
условного перехода пересылка адреса выполняется в случае истинности условия
перехода, что определяется значениями файлов регистра состояния программы.
Арифметические операции.
1)
"+" (выполняется в прямом коде).
2)
"-" (реализуется как сложение уменьшаемого
с вычитаемым, которое представляется в дополнительном коде).
3)
Умножение (выполняется как комбинация сложений и
сдвигов).
4)
Деление - комбинация вычитаний и сдвигов с
определением частного и остатка.
5)
Операции над числами с плавающей точкой.
6)
Операции над действительными числами выполняются в
зависимости от форм представления (с фиксированной или с плавающей точкой).
7)
Выполняется в виде совокупности операций или над
мантиссой и характеристикой числа.
Логические операции.
· И (++ = +,
+- = -, -- = -)
· ИЛИ (++ =
+, +- = +, -- = -)
· НЕ
· ИСКЛЮЧАЮЩЕЕ
ИЛИ (++ = +, +- = неоднозначность, -- = -).
Другие операции: команды останова, команды работы со стеком, пустую
операцию, команды вызова подпрограммы, команда обмена, команда цикла. Они могут
быть реализованы как комбинация пересылок, переходов, арифметических или
логических действий, но присутствуют в виде отдельных команд из-за частого
использования.
Понятие об элементарном исполнителе.
Выполнение программы на машинном
языке осуществляется следующим образом: в счетчик команд заносится адрес первой
исполняемой команды. Устройство управления считывает по этому адресу код
операции, дешифрует его, определяет количество операндов, место их размещения.
Дешифрованная информация передается арифметико-логическому устройству. Также
при этом значение регистра и счетчика команд увеличивается на размер команды,
включая операнды. Если код команды соответствует команде перехода, то в регистр
счётчика команд заносится адрес перехода. Процедура повторяется до тех пор,
пока не возникнет исключительная ситуация: или внешнее прерывание, или пока не
встретится команда остановок. ЦП является элементарным исполнителем для
алгоритма исполняемой программы.
|