» » Функции ЦП. Основы ПК и программирования.
Информация к статье
  • Просмотров: 73
  • Автор: Admin
  • Дата: 20-05-2015, 03:16
20-05-2015, 03:16

Функции ЦП. Основы ПК и программирования.

Категория: Разное

Функции ЦП

 

Функции ЦП. ЦП в компьютерной системе выполняет три основные задачи: (1) перенос данных, (2) арифметические и логические операции и (3) управляет последовательностью выполнения программ. Перенос данных - это одна из наиболее часто выполняемых задач ЦП. Большая часть времени работы ЦП расходуется на перенос данных. Перенос данных включает извлечение команд из памяти, обмен данными между регистрами или ячейками памяти, а также перемещение результатов некоторых логических или арифметических операций между памятью и ЦП или между устройствами ввода-вывода и ЦП. Та часть задачи переноса данных, которая связана с извлечением команд из памяти, является наиболее часто выполняемой и важной операцией, реализуемой ЦП. Извлечение команд из памяти позволяет ЦП выполнять программы, записанные в памяти системы, с высоким быстродействием. Концепция сохраняемой программы делает компьютер весьма мощным устройством - она была впервые предложена также Чарльзом Беббиджем. Большинство программ по крайней мере 50% времени своего выполнения заняты перемещением данных, часто этот процент будет намного более высоким. В табл. 1.1 перечислены некоторые из наиболее распространенных операций переноса данных, выполняемых большинством ЦП.

 

Таблица 1.1. Наиболее распространенных операций переноса данных

 

Память --> Регистр операцийИзвлечение операции с занесением ее в регистр операций

Память --> Регистр данныхИзвлечение данных из памяти с занесением их в регистр данных

Регистр данных —> ПамятьСохранение данных из регистра данных в ячейке памяти

Регистр данных —> Регистр данныхПеренос содержимого регистра данных в другой регистр данных

Регистр данных --> ввод-выводПеренос содержимого регистра данных в устройство ввода-вывода

Ввод-вывод --> Регистр данныхПеренос содержимого устройства ввода-вывода в регистр данных

 

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

 

Таблица 1.2. Обычные арифметические и логические операции

 

ОперацияКомментарий

СложениеМежду регистрами, регистром и памятью или с непосредственными данными.

ВычмтаниеМежду регистрами, регистром и памятью или с непосредственными данными.

УмножениеМежду регистрами, регистром и памятью или с непосредственными данными; результат может иметь удвоенный формат

ДелениеМежду регистрами, регистром и памятью или с непосредственными данными; результат может иметь удвоенный формат. (Некоторые микроконтроллеры не выполняют операцию деления.)

ИнверсияЗнак числа изменяется

ИЛогическое побитовое И между регистрами, регистром и памятью или с непосредственными данными

ИЛИЛогическое побитовое ИЛИ между регистрами, регистром и памятью или с непосредственными данными

Исключительное ИЛИЛогическое побитовое исключительное ИЛИ между регистрами, регистром и памятью или с непосредственными данными

НЕЛогическое побитовое НЕ между регистрами, регистром и памятью или с непосредственными данными

 

Наиболее мощной функцией, выполняемой ЦП, является его способность модифицировать ход потока команд программы через использование простых числовых решений. Управление выполнением команд программы обеспечивает возможность многократного выполнения в программе секции либо секций программного кода. Команды управления выполнением команд программы также позволяют передать управление выполнением программы функции или процедуре. Имеются условные и безусловные команды передачи управления. Примерами команд безусловной передачи управления являются команды GOTO и команда вызова функции CALL. Команды условной передачи управления обеспечивают возможность проверки чисел на их соответствие каким-либо условиям с целью определения того, должна ли модифицироваться последовательность управления выполнением программы.

 

Условные команды управления последовательностью выполнения программы обычно проверяют числа с целью определения того, являются ли они нулевыми, имел ли место перенос после сложения, либо того, является ли результат операции отрицательным либо положительным. В табл. 1.3 перечислены многие из обычно проверяемых условий для большинства ЦП. Условные команды управления последовательностью выполнения программы обычно составляют небольшой процент от всех команд, составляющих типичную программу, однако эти команды делают ЦП мощным компонентом компьютерной системы, наделяя ее способностью принимать решения. Например, как может компьютер определить, то, что с клавиатуры введено, например, число 3? Он делает это, отнимая 3 от введенного числа, а затем проверяет, не является ли результат нулевым. Если результат нулевой, то последовательность выполнения программы модифицируется таким образом, что как реакция на ввод с клавиатуры числа 3 выполняется определенная задача. Здесь возникает иллюзия того, что компьютер может думать и рассуждать о причинах ввода числа 3 с клавиатуры, хотя в действительности единственное, что он делает - так это вычитает число 3 из введенного числа, а затем проверяет, не является ли результат нулевым. Что делает компьютерную систему мощным инструментом? Конечно же, - программное обеспечение, написанное программистами, ибо именно оно создает иллюзию того, что компьютер может думать и рассуждать.

 

Таблица 1.3. Условия, проверяемые многими ЦП.

 

УсловиеКомментарий

 

НольЯвляется число нулевым или нет?

 

Перенос Имел или не имел место перенос?

 

ЗнакЧисло положительно или отрицательно?

 

Переполнение Некоторые ЦП выполняют проверку на арифметическое переполнение

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.