Программа для ЭВМ это упорядоченная последовательность команд, подлежащая обработке
Скачать 1.98 Mb.
|
1. Архитектурные принципы фон Неймана.Термин «электронная вычислительная машина – ЭВМ» определяется как совокупности технических средств, служащих для автоматизированной обработки дискретных данных по заданному алгоритму. В основе архитектуры современных ЭВМ лежит представление алгоритма решения задачи в виде программы последовательных вычислений. Согласно стандарту ISO 2382/1-84, программа для ЭВМ – это «упорядоченная последовательность команд, подлежащая обработке». ЭВМ, в которой определенным образом закодированные команды программы хранятся в памяти, известна под названием вычислительной машины (ВМ) с хранимой в памяти программой, а сама концепция вычислительной машины – концепции хранимой в памяти программы (концепция машины с хранимой в памяти программой). Сущность фон-неймановской концепции вычислительной машины можно свести к четырем принципам: 1. двоичного кодирования; 2. программного управления; 3. адресности; 4. однородности памяти. Принцип двоичного кодирования Вся информация в вычислительной машине (как данные, так и команды) кодируется в двоичной форме и разделяется на единицы (элементы) информации, которые называются словами. Группа двоичных разрядов, составляющих слово, обрабатываются одновременно. Каждый тип информации имеет свой формат. Например, в формате данных с фиксированной запятой обычно выделяют поле знака и поле значащих разрядов. Принцип программного управления Порядок выполнения действий вычислительной машиной задается алгоритмом. Все действия, предусмотренные алгоритмом решения задачи, представляются в виде программы, состоящей из последовательности управляющих слов – машинных команд. Каждая команда предписывает некоторую элементарную операцию из набора операций, реализуемых вычислительной машиной, с помощью которых осуществляется обработка данных. Команды программы хранятся в последовательных ячейках памяти вычислительной машины и выполняются в естественной последовательности, т. е. в порядке их положения в программе. При необходимости, с помощью специальных команд, эта последовательность может быть изменена. Решение об изменении порядка выполнения команд программы принимается либо на основании анализа результатов предшествующих действий, либо безусловно. В формате команды выделяются две части: операционная часть и адресная часть. В операционной части задается код операции. Код операции представляет собой указание, какая операция должна быть выполнена. Адресная часть содержит адреса объектов обработки (операндов) и результата. Принцип адресности Структурно память вычислительной машины состоит из пронумерованных ячеек, причем процессору в произвольный момент доступна любая ячейка. Слова информации (двоичные коды команд и данных) хранятся в ячейках памяти, а для доступа к ним используются номера соответствующих ячеек, которые называются адресами слов. Принцип однородности памяти Команды и данные хранятся в одной и той же памяти и внешне в памяти неразличимы, распознать их можно только по способу использования, т.е. разнотипные слова информации различаются по способу использования, но не способом кодирования. Отсутствует явное различие между командами и данными. Их идентифицируют неявным способом при выполнении операций. Так, объект, адресуемый командой перехода, определяется как команда, а операнды, с которыми имеет дело команда, определяются как данные. В свою очередь, назначение (тип) данных не является их неотъемлемой составной частью, т.е. ЭВМ безразлична к целевому назначению данных – ей все равно, какую логическую нагрузку несут обрабатываемые данные. Нет, например, никаких средств, позволяющих явно отличить набор бит, представляющих число с плавающей запятой, от набора бит, являющихся строкой символов. Назначение данных определяется логикой программы. Если машина извлекает из памяти команду сложения чисел с плавающей запятой, то предполагается, что операнды – числа с плавающей запятой, и над операндами выполняется сложение согласно правилам арифметики чисел с плавающей запятой. 2. Структура фон-неймановской вычислительной машины.Фон-неймановская ВМ включает пять функциональных блоков (рис. 1): устройство ввода, память, АЛУ, устройство управления и устройство вывода. Рисунок 1 - Структура фон-неймановской вычислительной машины В любой ВМ имеются средства для ввода программ и данных. Информация поступает из подсоединенных к ВМ периферийных устройств (ПУ) ввода. Затем отдельные команды программы одна за другой автоматически поступают в устройство управления (УУ), которое их декодирует и управляет выполнением операции, заданной в команде. Операции обычно выполняются в арифметико-логическом устройстве (АЛУ), содержащем все необходимые для обработки данных схемы. При этом данные должны поступить в АЛУ из памяти. Результаты вычислений выводятся на периферийные устройства вывода. Связь и взаимодействие ВМ и ПУ обеспечивают порты ввода и порты вывода. Термином порт обозначают аппаратуру сопряжения периферийного устройства с ВМ. Совокупность портов ввода и вывода называют устройством ввода/вывода (УВВ). АЛУ и устройство управления вместе образуют центральное процессорное устройство (ЦПУ), которое обычно называют центральным процессором (ЦП) или просто процессором. Чтобы программа могла выполняться, команды и данные должны располагаться в основной памяти (ОП), организованной таким образом, что каждое двоичное слово хранится в отдельной ячейке, идентифицируемой адресом, причем соседние ячейки памяти имеют следующие по порядку адреса. Доступ к любым ячейкам запоминающего устройства (ЗУ) основной памяти может производиться в произвольной последовательности. Такой вид памяти известен как память с произвольным доступом. ОП современных ВМ в основном состоит из полупроводниковых оперативные запоминающих устройств (ОЗУ), обеспечивающих как считывание, так и запись информации. Для таких ЗУ характерна энергозависимость – хранимая информация теряется при отключении электропитания. Если необходимо, чтобы часть основной памяти была энергонезависимой, в состав ОП включают постоянные запоминающие устройства (ПЗУ), также обеспечивающие произвольный доступ. Хранящаяся в ПЗУ информация в рабочем режиме ВМ может только считываться (но не записываться). В вычислительной машине может быть дополнительная память, известная как вторичная. Введенная информация всегда сначала запоминается в основной памяти, а затем может переноситься во вторичную память для длительного хранения. Вторичная память энергонезависима и чаще всего реализуется на базе магнитных дисков. Информация в ней хранится в виде специальных программно поддерживаемых объектов – файлов. Обработка данных осуществляется главным образом в АЛУ. Встроенные операции, как правило, элементарны: функции АЛУ обычно сводятся к простым арифметическим и логическим операциям, а также операциям сдвига. АЛУ обеспечивает обработку двух входных переменных, в результате которой формируется выходная переменная. Более сложные математические действия должны выполняться с помощью программ, использующих встроенные операции. АЛУ содержит набор регистров, используемых для промежуточного хранения информации в процессе ее обработки и называемых рабочими или регистрами общего назначения (РОН). Помимо результата операции АЛУ формирует ряд признаков результата (флагов), характеризующих полученный результат и события, произошедшие в процессе его получения (равенство нулю, знак, четность, перенос, переполнение и т. д.). Флаги могут анализироваться в УУ с целью принятия решения о дальнейшей последовательности выполнения команд программы. Устройство управления управляет работой ВМ, организуя автоматическое выполнение программ и обеспечивая функционирование ВМ как единой системы. УУ автоматически, последовательно по одной, выбирает команды из памяти, декодирует каждую из них и генерирует необходимые для ее выполнения сигналы. Для того чтобы получить команду из памяти, УУ прежде всего должно знать ее адрес. Обычно команды выбираются из последовательных ячеек памяти, и их адреса указываются специальным программным счетчиком (program counter), находящимся в устройстве управления. После выборки текущей команды содержимое программного счетчика автоматически увеличивается с тем, чтобы указывать на следующую по порядку команду. Далее, чтобы иметь возможность декодировать и выполнить текущую команду, она помещается в регистр команд (instruction register), который находится в УУ. Код операции однозначно определяет операцию, выполняемую в процессе интерпретации команды. Адресная часть команды (если она присутствует) указывает на ячейки памяти или РОН, к которым нужно обращаться, выполняя команду (например, считывать операнды и записывать результат). Кроме того, УУ синхронизирует работу отдельных блоков ВМ. Эта функция осуществляется с помощью генератора тактовых импульсов (ГТИ), или тактового генератора. Таким образом, функционирование ВМ сводится к выполнению последовательности команд программы. |