Программное управление компьютером 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Программное управление компьютером



Первая вычислительная машина, способная хранить програм­му в своей памяти, разрабатывалась в 1943—1948 гг. в США под руководством Джона Мочли и Преснера Экерта.

В 1945 г. к работе был привлечен знаменитый математик Джон фон Нейман, который сформулировал общие принципы функ­ционирования универсальных вычислительных устройств.

Первый компьютер, в котором были полностью реализованы эти принципы, был построен в 1949 г. английским исследовате­лем Морисом Уилксом. Изменяется элементная база, компьютеры становятся все более и более мощными, но до сих пор боль-

гинство из них соответствуют тем принципам, которые изложил своем докладе в 1945 г. Джон фон Нейман.

Принципы фон Неймана

Устройства компьютера. В состав компьютера должны входить следующие устройства:

• арифметико-логическое устройство, выполняющее арифме­тические и логические операции;

• устройство управления, которое организует процесс выпол­нения программ;

• запоминающее устройство, или память, для хранения про­грамм и данных;

• внешние устройства для ввода-вывода информации.
В современных компьютерах это:

• память (запоминающее устройство — ЗУ), состоящая из пе­ренумерованных ячеек;

• процессор, включающий в себя устройство управления (УУ) и арифметико-логическое устройство (АЛУ);

• устройство ввода;

• устройство вывода.

Эти устройства соединены между собой каналами связи, по которым передается информация. Основные устройства компьютера и связи между ними представлены на рис. 2.5.

Функции памяти:


Рис. 2.5. Общая схема компьютера: — сигнал управления; —»»- — информационный сигнал

• прием информации из других устройств;

 

* Колм запоминание информации;

• выдача информации по запросу в другие устройства машины. Функции процессора:

 

• обработка данных по заданной программе путем выполнения арифметических и логических операций;

• программное управление работой устройств компьютера.

Одна часть процессора, которая выполняет команды, называ­ется арифметико-логическим устройством, а другая его часть, вы­полняющая функции управления устройствами, — устройством управления. Обычно эти устройства выделяются чисто условно, конструктивно они не разделены.

В составе процессора имеется ряд специализированных допол­нительных ячеек памяти, называемых регистрами. Регистр выпол­няет функцию кратковременного хранения числа или команды. Основным элементом регистра является электронная схема, на­зываемая триггером (см. подразд. 2.2).

Регистр представляет собой совокупность триггеров, связанных друг с другом определенным образом общей системой управления.

Существует несколько типов регистров, отличающихся видом выполняемых операций. Некоторые важные регистры имеют свои названия, например:

• сумматор — регистр АЛУ, участвующий в выполнении каж­дой операции (см. подразд. 2.2);

• счетчик команд — регистр УУ, содержимое которого соответ­ствует адресу очередной выполняемой команды. Он служит для авто­матической выборки программы из последовательных ячеек памяти;

• регистр команд — регистр УУ для хранения кода команды на период времени, необходимый для ее выполнения. Часть его раз­рядов используется для хранения кода операции, остальные — для хранения кодов адресов операндов.

Принцип программного управления. Программа состоит из на­бора команд, выполняющихся процессором автоматически в оп­ределенной последовательности.

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

Выборка программы из памяти осуществляется с помощью счетчика команд. Этот регистр процессора последовательно уве­личивает хранимый в нем адрес очередной команды на длину команды. Так как команды расположены в памяти друг за другом, организуется выборка цепочки команд из последовательно рас­положенных ячеек памяти. Если же нужно после выполнения ко­манды перейти не к следующей, а к какой-то другой ячейке, то используются команды условного и безусловного перехода, ко­торые заносят в счетчик команд номер ячейки памяти, содержа­щей следующую команду. Выборка команд из памяти прекраща­ется после достижения и выполнения команды «стоп». Процес­сор исполняет программу автоматически, без вмешательства че­ловека.

Принцип однородности памяти. Программы и данные хранятся в одной и той же памяти, поэтому компьютер не различает, что хранится в данной ячейке памяти — число, текст или команда. Над командами можно выполнять такие же действия, как и над данными.

Это открывает целый ряд возможностей. Например, программа в процессе своего выполнения также может подвергаться перера­ботке, что позволяет задавать в самой программе правила получе­ния повтора некоторых ее частей (так в программе организуется выполнение циклов и подпрограмм).

Более того, команды одной программы могут быть получены как результаты выполнения другой программы. На этом принципе основаны методы трансляции — перевода текста программы с языка программирования высокого уровня на язык конкретной машины.

Принцип адресности. Структурно основная память состоит из пронумерованных ячеек. Процессору в произвольный момент вре­мени доступна любая ячейка.

Память компьютера должна состоять из некоторого числа про­нумерованных ячеек, в каждой из которых могут находиться или обрабатываемые данные, или инструкции программ. Все ячейки памяти должны быть одинаково легко доступны для других уст­ройств компьютера.

Отсюда следует возможность давать имена областям памяти так, Чтобы к сохраненным в них значениям можно было впоследствии обращаться или менять их в процессе выполнения программ с Использованием присвоенных имен.

2.3.2. Структура и виды команд

Алгоритм решения задачи, заданный в виде последовательно­сти команд на языке вычислительной машины (в кодах машины), Называется машинной программой.

Команда машинной программы (машинная команда) — это ЗДементарная инструкция машине, выполняемая ею автоматически из каких-либо дополнительных указаний и пояснений. Командаэто описание элементарной операции, которую дол­жен выполнить компьютер.

Машинная команда состоит из двух частей: операционной и адресной.

Операционная часть команды — это группа разрядов в команде, предназначенная для представления кода операции машины.

Адресная часть команды — это группа разрядов в команде, в которых записываются коды адреса (адресов) ячеек памяти ма­шины, предназначенных для оперативного хранения информа­ции, или иных объектов, задействованных при выполнении ко­манды. Часто эти адреса называют адресами операндов, т. е. чисел, участвующих в операции.

По числу адресов, записываемых в команде, команды подраз­деляются на трех-, двух-, одноадресные и безадресные (рис. 2.6).

В трехадресной команде:

al и а2 — адреса ячеек (регистров), где расположены соответ­ственно первое и второе числа, участвующие в операции;

аЗ — адрес ячейки (регистра), куда следует поместить число, полученное в результате выполнения операции.

В двухадресной команде:

al — это обычно адрес ячейки (регистра), где хранится первое из чисел, участвующих в операции, и куда после завершения опе­рации должен быть записан результат операции;

а2 — обычно адрес ячейки (регистра), где хранится второе уча­ствующее в операции число.

В одноадресной команде:

al — в зависимости от модификатора команды может обозна­чать либо адрес ячейки (регистра), где хранится одно из чисел, участвующих в операции, либо адрес ячейки (регистра), куда сле­дует поместить число — результат операции.

Безадресная команда содержит только код операции, а ин­формация для нее должна быть заранее помещена в определен­ные регистры машины (безадресные команды могут использоваться только совместно с командами другой адресности).

Команды хранятся в ячейках памяти в двоичном коде.

Выполнение команды разбивается на следующие этапы:

1) из ячейки памяти, адрес которой хранится в счетчике ко­манд, выбирается очередная команда; при этом содержимое счет­чика команд увеличивается на длину команды;

2) выбранная команда передается в устройство управления на регистр команд;

3) устройство управления расшифровывает адресное поле ко­манды;

4) по сигналам УУ операнды считываются из памяти и запи­сываются в АЛУ на специальные регистры операндов;

5) УУ расшифровывает код операции и выдает в АЛУ сигнал выполнить соответствующую операцию над данными;

6) результат операции либо остается в процессоре, либо от­правляется в память, если в команде был указан адрес результата;

7) все предыдущие этапы повторяются до команды «стоп».

2.3.3. Архитектура компьютера

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

Наиболее распространены следующие архитектурные реше­ния.

Классическая архитектура. Классическая архитектура (архитек­тура фон Неймана) — одно арифметико-логическое устройство, через которое проходит поток данных, и одно устройство управ­ления, через которое проходит поток команд — программа (см. рис. 2.5). Это однопроцессорный компьютер. К этому типу архи­тектуры относится и архитектура персонального компьютера с гОбщей шиной (рис. 2.7). Все функциональные блоки здесь связаны Между собой общей шиной, называемой также системной магист­ралью, или системной шиной.

Системная магистраль (системная шина) включает в себя три Многоразрядные шины: шину данных, шину адреса и шину уп­равления. Шины представляют собой многопроводные линии.


Шина данных. По этой шине данные передаются между Различными устройствами. Например, считанные из оперативной Памяти данные могут быть переданы процессору для обработки, а ^атем полученные данные могут быть отправлены обратно в опе­ративную память для хранения. Таким образом, данные по шине

Рис. 2.7. Магистрально-модульное устройство компьютера

данных могут передаваться от устройства к устройству в любом направлении.

Разрядность шины данных определяется разрядностью процес­сора, т. е. числом двоичных разрядов, которые процессор обраба­тывает за один такт. Разрядность процессоров постоянно увеличи­вается и в настоящее время составляет 64 бит.

Шина адреса. Выбор устройства, или ячейки памяти, куда пересылаются или откуда считываются данные по шине данных, производит процессор. Каждое устройство, или ячейка оператив­ной памяти, имеет свой адрес. Адрес передается по адресной шине, причем сигналы по ней передаются в одном направлении: от про­цессора к оперативной памяти и устройствам (однонаправленная шина).

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

N = 2',

где i — разрядность шины адреса.

Разрядность шины адреса постоянно увеличивается и в совре­менных персональных компьютерах составляет 32 бит. Таким об­разом, максимально возможное число адресуемых ячеек памяти

N = 232=4 294 967 396.

Шина управления. По шине управления передаются сиг­налы, определяющие характер обмена информацией по магист­рали. Сигналы управления определяют, какую операцию, считы­вание или запись информации из памяти нужно производить; син­хронизирует обмен информацией между устройствами и т.д.

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

Контроллер — устройство, которое связывает периферийное обо­рудование или каналы связи с системной магистралью центральным процессором, освобождая процессор от непосредственного управления функционированием данного оборудования.

Существуют другие варианты построения однопроцессорных компьютеров, например применяемые известной компанией Apple jylacintosh.

CISC-архитектура. Машины семейства IBM PC относятся к так называемой CISC-архитектуре компьютеров (CISC — Complete Instruction Set Computer — компьютер с полным набором команд). В системах команд процессоров, построенных по этой архитекту­ре, для каждого возможного действия предусмотрена отдельная команда.

Например, система команд процессора Intel Pentium состоит более чем из 1000 различных команд. Чем шире система команд, тем больше требуется бит памяти для кодирования каждой от­дельной команды.

Если, например, система команд состоит всего из 4 действий, то для их кодирования требуется 2 бит памяти; для 8 возможных действий требуется 3 бит памяти; для 16 — 4 бит и т.д. Таким образом, расширение системы команд влечет за собой увеличе­ние числа байт, выделяемых под одну машинную команду, а сле­довательно, и объема памяти, требуемой для записи всей про­граммы в целом.

Кроме того, увеличивается среднее время выполнения одной машинной команды, а следовательно, и среднее время выполне­ния всей программы.

RISC-архитектура. В середине 1980-х гг. появились первые про­цессоры с сокращенной системой команд, построенные по так называемой RISC-архитектуре (RISC — Reduce Instruction Set Computer — компьютер с усеченной системой команд).

К архитектуре RISC относятся достаточно широко известные машины компании Apple Macintosh, которые имеют систему ко­манд, обеспечивающую им в ряде случаев более высокую произ­водительность по сравнению с машинами семейства IBM PC. Еще одно важное отличие этих машин состоит в том, что многие воз­можности, которые в семействе IBM PC обеспечиваются путем Приобретения, установки и настройки дополнительного оборудо­вания, в машинах семейства Macintosh являются встроенными и не требует никакой настройки оборудования.

В качестве высокопроизводительных серверов достаточно часто используютсямашины семейств Sun Microsystems, Hewlett Packard Ш Compaq, которые также относятся к RISC-архитектуре. В каче­стве представителей других архитектур можно упомянуть еще и семейства переносных компьютеров классов Notebook (портатив­ные).

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

Важной составной частью аппаратной реализации любого ком­пьютера является процессор.

Центральный процессор в общем случае содержит:

• арифметико-логическое устройство;

• шины данных и шины адресов;

• регистры;

• счетчики команд;

• кэш — очень быструю память малого объема (от 8 до 512 Кбайт);

• математический сопроцессор чисел с плавающей точкой.
Современные процессоры выполняются в виде микропроцес­соров.

Физически микропроцессор представляет собой интегральную схему — тонкую пластинку кристаллического кремния прямо­угольной формы площадью всего несколько квадратных милли­метров, на которой размещены схемы, реализующие все функ­ции процессора.

Кристалл-пластинка обычно помещается в пластмассовый или плоский керамический корпус и соединяется золотыми провод­ками с металлическими штырьками, чтобы его можно было при­соединить к системной плате компьютера.

Память компьютера построена на триггерах (хранение одного бита информации реализуется с помощью триггера, см. подразд. 2.2), объединенных в группы по 8 бит, которые называются бай­тами (единицы измерения памяти совпадают с единицами изме­рения информации). Все байты пронумерованы. Номер байта на­зывается его адресом.


Рис. 2.8. Многопроцессорная архитектура

Байты могут объединяться в ячейки, которые называются так­же словами. Для каждого компьютера характерна определенная длина слова — 2, 4 или 8 байт. Это не исключает использования ячеек памяти

Таблица 2.16

Организация внутренней памяти

 

Байт 0 Байт 1 Байт 2 Байт 3 Байт 4 Байт 5 Байт 6 Байт 7
ПОЛУСЛОВО ПОЛУСЛОВО ПОЛУСЛОВО ПОЛУСЛОВО
слово слово
ДВОЙНОЕ слово  

Как правило, в одном машинном слове может быть представ­лено либо одно целое число, либо одна команда. Однако допуска­ются переменные форматы представления информации. Разбие­ние памяти на слова для четырехбайтовых компьютеров представ­лено в табл. 2.16.

В основу архитектуры современных персональных компьюте­ров положен магистрально-модульный принцип построения, ко­торый позволяет потребителю самому комплектовать нужную ему конфигурацию компьютера и производить при необходимости ее модернизацию.

Такой подход еще называют принципом «открытой архитекту­ры». Если бы современный компьютер был сделан так же, как другие, существовавшие до его появления компьютеры, то он бы устарел через два-три года и мы бы давно уже о нем забыли. Дей­ствительно, кто сейчас помнит о моделях телевизоров, телефонов или даже автомобилей двенадцатилетней давности!

На основной электронной плате компьютера (системной, или материнской, плате) размещены только те блоки, которые осуществляют обработку информации (вычисления). Схемы, управ­ляющие всеми остальными устройствами компьютера (монитоpoм дисками, принтером и т.д.), реализованы на отдельных пла­тах, которые вставляются в стандартные разъемы на системной штате — слоты. К этим электронным схемам подводится электропитание из единого блока питания, а для удобства и надежности |все это заключается в общий металлический или пластмассовый «корпус — системный блок.

Наибольшую выгоду от открытости архитектуры получили, естественно, пользователи. Они получили возможность самостоятельно расширять возможности своих компьютеров, покупая со­ответствующие устройства и подсоединяя их в свободные разъемы на системной плате. При этом они не были связаны ассорти­ментом моделей, предлагаемых фирмой IBM, так как могли поступать дополнительные устройства, производимые независимы­ми фирмами. Они могли сэкономить деньги, ориентируясь при покупке компьютеров на свои сегодняшние, а не будущие потребности — ведь при необходимости компьютер можно модернизировать.

 

Контрольные вопросы

1.Перечислите основные устройства, обеспечивающие работу компь­ютера.

2.Что такое команда? Что описывает команда?

3.Сформулируйте функции памяти и процессора.

4.Что понимается под архитектурой компьютера?

5.В чем заключается принцип «открытой архитектуры»?

6.Почему именно работы американского математика Джона фон Ней­мана значительно изменили подходы к построению вычислительных уст­ройств?

7.В чем состоит различие между адресным пространством процессора и объемом оперативной памяти, установленной в компьютере?

8.Найдите информацию об эволюции программ для компьютеров.

Глава 3



Поделиться:


Последнее изменение этой страницы: 2017-01-20; просмотров: 1573; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.17.128.129 (0.057 с.)