- •Основные понятия информатики
- •1.1. Информатика как наука и учебная дисциплина
- •1.2. Понятие информации
- •1.3. Сигналы и данные
- •1.4. Информатизация общества
- •1.5. Контрольные вопросы и задания
- •2. Меры и единицы измерения информации
- •2.1. Формулы Хартли и Шеннона
- •2.2. Меры информации
- •2.2.1. Синтаксическая мера информации
- •2.2.2. Семантическая мера информации
- •2.2.3. Прагматическая мера информации
- •2.3. Бит, байт и производные от них единицы
- •2.4. Контрольные вопросы и задания
- •3. Системы счисления
- •3.1. Позиционные системы счисления
- •3.2. Двоичная, восьмеричная и шестнадцатеричная системы счисления
- •3.3. Перевод чисел из десятичной системы в другую позиционную систему счисления и обратно
- •3.3.1. Перевод целого десятичного числа в другую позиционную систему счисления
- •3.3.2. Перевод правильной десятичной дроби в другую позиционную систему счисления
- •3.3.3. Перевод числа в десятичную систему счисления
- •3.4. Арифметические операции в позиционных системах счисления
- •3.4.1. Сложение
- •3.4.2. Вычитание
- •3.5. Контрольные вопросы и задания
- •4. Кодирование (представление) данных в эвм
- •4.Введение
- •4.1. Представление целых чисел в компьютере
- •4.1.1. Форматы хранения целых чисел без знака
- •4.1.2. Форматы хранения целых чисел со знаком
- •4.2. Представление в компьютере вещественных чисел Форматы хранения вещественных чисел
- •4.3. Представление в компьютере текстовой информации
- •4.4. Кодирование графической информации
- •0×00Bbggrr
- •4.5. Контрольные вопросы и задания
- •5. Основные понятия алгебры логики
- •5.1. Логические величины: истина (логическая единица) и ложь (логический ноль)
- •5.2. Логические операции: инверсия, дизъюнкция и конъюнкция
- •5.3. Основные законы булевой алгебры
- •5.4. Контрольные вопросы и задания
- •6. Логические основы эвм
- •6.Введение
- •6.1. Бистабильная ячейка – триггер
- •6.2. Регистры
- •6.3. Сумматор
- •6.4. Выполнение операций сложения, вычитания и умножения целых чисел
- •6.4.1. Сложение и вычитание
- •6.4.2. Умножение и деление
- •6.5. Контрольные вопросы и задания
- •7. Основные этапы развития вычислительной техники. Архитектура эвм. Принципы работы вычислительной системы
- •7.1. Основные этапы развития вычислительной техники
- •7.2. Архитектура эвм
- •7.3. Принцип работы вычислительной системы
- •7.4. Контрольные вопросы и задания
- •7.4. Контрольные вопросы и задания
- •8. Состав и назначение основных элементов персонального компьютера. Центральный процессор. Системные шины и слоты расширения
- •8.1. Классификация эвм. Основные элементы пк и их назначение
- •8.2. Центральный процессор
- •8.2.1. История развития процессоров
- •8.2.2. Назначение и структура простейшего процессора
- •8.2.3. Принцип действия процессора
- •8.2.4. Арифметико-логическое устройство
- •8.3. Системные шины и слоты расширения
- •8.3.1. Шина расширения isa
- •8.3.2. Шина расширения pci
- •8.3.3. Шина расширения agp
- •8.3.4. Шина расширения pci Express
- •Описание протокола
- •Пропускная способность шины pci Express
- •8.4. Контрольные вопросы и задания
- •9. Запоминающие устройства: классификация, принцип работы, основные характеристики
- •9.1. Классификация и основные параметры зу. Память
- •9.2. Оперативная память
- •9.3. Внешнее запоминающее устройство
- •9.4. Контрольные вопросы и задания
- •10. Устройства ввода/вывода данных, их разновидности и основные характеристики
- •10.1. Устройства ввода информации
- •10.2. Устройства вывода информации
- •10.3. Контрольные вопросы и задания
8.2.4. Арифметико-логическое устройство
Арифметико-логическое устройство (АЛУ) – важнейшая часть процессора. Оно позволяет выполнять разнообразные арифметические и логические операции над операндами. Вид выполняемой в АЛУ операции определяет программист, составляющий управляющую программу. Программа, хранящаяся в оперативной памяти, по частям передается в процессор, где и выполняется. Таким образом, процессор лишь исполняет указания программиста, выраженные в виде совокупности команд (программы).
Процессор (как и все другие цифровые устройства) воспринимает управляющие сигналы и операнды в виде двоичных чисел. Результат также формируется в виде двоичных чисел. Однако программисты составляют управляющие программы чаще всего на языках программирования высокого уровня (Паскаль, Бейсик, Си…). В момент трансляции программы ее текст превращается в набор двоичных чисел (объектный код). Именно эти двоичные числа заставляют процессор (в том числе и АЛУ) выполнять операции, запланированные программистом.
Структурная схема простейшего АЛУ показана на рис. 8.2.
Рис. 8.2. Структурная схема простейшего АЛУ
Два многоразрядных операнда (числа, буквы, символы и т.д.), подлежащие обработке в АЛУ, подаются на входы А и В. Результат выполнения операции появляется на выходе F. Вид операции, выполняемой в АЛУ, определяется сигналами, которые подаются на входы S и M. Таким образом при сложении чисел 2 и 3 одно из них подается на вход А, а второе – на вход В. В этот момент на шины S и М подается двоичное число, которое на обыденном языке означает команду (приказ) «Выполнить арифметическое сложение». Результат сложения – число 5 появляется на выходе F.
У входов M и S одинаковое назначение – определять вид выполняемой в АЛУ операции. Эти входы разделены лишь с методической целью. Сигнал на входе М (Mode – режим) определяет, какую операцию будет выполнять АЛУ – логическую или арифметическую.
Рассматриваемый простейший тип АЛУ (К155ИП3, американский аналог – 74181) имеет малую разрядность – лишь 4 бита. По этой причине разработчики АЛУ предусмотрели возможность увеличения (наращивания) разрядности устройства (в случае возникновения такой необходимости). Увеличить разрядность АЛУ можно за счет использования нескольких секций (микросхем) и двух специальных шин C0 и Cn+1.
Шина C0 при создании многоразрядных конструкций используется для приема переноса, формируемого в предыдущей (младшей) секции (микросхеме). Шина Cn+1 служит для передачи арифметического переноса из младшей секции в старшую. Другими словами: если у разработчика в наличии имеется n-разрядное АЛУ, то для получения разрядности 2n нужно взять еще одну аналогичную микросхему, объединить параллельно входы S и M, а выход Cn+1 младшей секции соединить со входом C0 старшей секции (микросхемы). Логические и арифметические операции отличаются тем, что в логических операциях вычисления производятся поразрядно (между собой взаимодействуют только одноименные разряды и переносов между разрядами нет). При выполнении арифметических операций в случае необходимости происходят переносы между соседними разрядами (от младшего разряда к старшему).
Проиллюстрируем сказанное двумя примерами: логической операцией Исключающее ИЛИ и арифметическим сложением. Обе операции выполняются по одинаковым правилам, но в арифметическом сложении допускается перенос между разрядами.
Рис. 8.3. Логические операции Исключающее ИЛИ и арифметическое сложение
Предположим, что имеется два десятичных числа A = 12D и B = 10D. В двоичной системе счисления эти числа имеют вид: A =1100B и B =1010B.
В результате выполнения логической операции Исключающее ИЛИ получается четырехразрядное число 0110B. После выполнения арифметического сложения на выходе F появляется четырехразрядное число 0110B, а на шине Cn+1 присутствует логическая единица. Этот сигнал свидетельствует о возникновении переноса в пятый разряд, т. е. в следующую старшую секцию восьмиразрядного АЛУ.
Работу четырехразрядного АЛУ можно описать выражением:
В этой формуле индексами i отмечены номера разрядов операндов A и B и выходного сигнала F.
Если на управляющие входы такого АЛУ подать сигналы M = 1, S3 = 1, S2 = 0, S1 = 1, S0 = 1, то АЛУ будет выполнять операцию Fi = Ai ^ Bi, т. е. операцию конъюнкции (логическое умножение). Этот результат получается при подстановке исходных данных в приведенную формулу.
Изменяя пять управляющих сигналов M, S3,…S0, можно «заставить» такое АЛУ выполнить 32 различные операции (16 логических и 16 арифметических).
Так, присутствие на управляющих входах двоичного числа M = 0, S3 = 1, S2 = 0, S1 =0, S0 = 1 заставит АЛУ выполнить арифметическое сложение чисел, поступивших на шины A и B, и к полученному результату прибавить значение переноса из предыдущей секции, т. е. Fi = Ai + Bi + C0.
В табл. 8.2. показано, как, изменяя управляющие сигналы, можно задавать вид выполняемой операции.
Таблица 8.2. Иерархия процессоров и их характеристики
Управляющие сигналы |
Выполняемые операции | ||||
S3 |
S2 |
S1 |
S0 |
Логические М = 1 |
Арифметические М = 0 |
0 |
0 |
0 |
0 |
A + C0 | |
0 |
0 |
0 |
1 |
(A v B) + C0 | |
0 |
0 |
1 |
0 |
^ B |
(A v ) + C0 |
0 |
0 |
1 |
1 |
0000 |
1111 + C0 |
0 |
1 |
0 |
0 |
A + (A ^ ) + C0 | |
0 |
1 |
0 |
1 |
(A v B) + (A ^ ) + C0 | |
0 |
1 |
1 |
0 |
A + + C0 | |
0 |
1 |
1 |
1 |
A ^ |
1111 + (A ^ ) + C0 |
1 |
0 |
0 |
0 |
v B |
A + (A ^ B) + C0 |
1 |
0 |
0 |
1 |
A + B + C0 | |
1 |
0 |
1 |
0 |
B |
(A v ) + (A ^ B) + C0 |
1 |
0 |
1 |
1 |
A ^ B |
1111 + (A ^ B) + C0 |
1 |
1 |
0 |
0 |
1111 |
A + A + C0 |
1 |
1 |
0 |
1 |
A v |
(A v B) + A + C0 |
1 |
1 |
1 |
0 |
A v B |
(A v ) + A + C0 |
1 |
1 |
1 |
1 |
A |
1111 + A + C0 |