- •Основные понятия
- •Основные понятия об информации и информатике
- •Понятие об информационных технологиях
- •Этапы развития вычислительной техники
- •Сферы использования вычислительной техники
- •Развитие отечественной вычислительной техники
- •Арифметические и логические основы работы эвм Системы счисления
- •Арифметические основы работы эвм
- •Организация данных в эвм Представление данных в эвм
- •Файловая система
- •Аппаратные средства Структурная схема эвм
- •Мышь Клавиатура Системный блок Монитор История развития процессоров
- •Оперативная память
- •Внешние запоминающие устройства
- •Устройства ввода информации
- •Устройства вывода информации
- •Электронно-лучевые мониторы
- •Жидкокристаллические мониторы
- •Классификация эвм
- •Системное программное обеспечение Понятие об операционной системе
- •Методы архивации
- •Принципы сжатия информации
- •Вирусы и антивирусные программы
- •Прикладное программное обеспечение
- •Текстовые редакторы
- •Графические редакторы
- •Электронные таблицы
Арифметические основы работы эвм
Правила выполнения арифметических действий над двоичными числами задаются таблицами сложения, вычитания и умножения.
Таблица 1
|
Сложение |
Вычитание |
Умножение |
|
0 + 0 = 0 |
0 – 0 = 0 |
0 0 = 0 |
|
0 + 1 = 1 |
1 – 0 = 1 |
0 1 = 0 |
|
1 + 0 = 1 |
1 – 1 = 0 |
1 0 = 0 |
|
1 + 1 = 10 |
10 – 1 = 1 |
1 1 = 1 |
Правила арифметики во всех позиционных СС аналогичны. В двоичной СС арифметическое сложение происходит по правилу сложения по модулю два с учетом переноса единицы в старший разряд (см. таб. 1).
Пример 1. Выполнить операцию арифметического сложения в двоичной системе счисления.
Решение.
Точками показаны переносы.
В
устройствах, реализующих операцию
арифметического сложения двоичных
чисел, операнды представляют числами
определенной разрядности (одинаковой
для обоих операндов). При этом неиспользуемые
старшие разряды заполняются нулями.
Также заполняются нулями младшие разряды
дробной части вещественного числа
(справа от точки).


|
. . . . . 13 01101 + 7 + 00111
10 2 |
Следует заметить, что в реальных ЭВМ чаще всего используются 16-, 32-, 64-разрядные сетки (машинные слова). Однако для учебных целей при рассмотрении методов выполнения арифметических операций не будем обращать внимание на разрядность операндов (т. е. будем использовать разрядность, отличающуюся от разрядности реальных ЭВМ).
Пример 2. Выполнить операцию арифметического сложения двух вещественных чисел в двоичной системе счисления.
Решение.
Результаты
сложения двух чисел показаны на рисунке
слева. При сложении вещественных чисел
в общем случае перенос осуществляется
и из дробной части числа в целую часть.


|
. . . . . . 55,25 0110111.01 + 19,5 + 0010011.10 74,75 1001010.11 10 2 |
Рассмотрим правило умножения многоразрядных двоичных чисел.
|
Умножение двоичных многоразрядных чисел производится путем образования частичных произведений и последующего их суммирования. Каждое частичное произведение равно нулю, если в соответствующем разряде множителя стоит 0, или равно множимому, сдвинутому на соответствующее число разрядов влево, если в разряде множителя стоит 1.
|
Таким образом, операция умножения многоразрядных двоичных чисел внутри ЭВМ сводится к операции сдвига и сложения. Положение точки, отделяющей целую часть от дробной части, определяется так же, как и при умножении десятичных чисел.
Пример 3. Перемножить в двоичной СС числа 7,5D и 5D.
Решение.
|
|
|
множимое x множитель 1-е част. произв. + 2-е част. произв. 3-е част. произв. . п р о и з в е д е н и е |
|
|

|
111.1 x 101 1111 + 0000 1111 . 100101.1 2 |

|
7,5 x 5 37,5 10 |
В рассмотренном примере второй разряд множителя равен нулю, поэтому второе частичное произведение также равно нулю.
В ВТ, с целью упрощения реализации арифметических операций, применяют специальные коды. За счет этого облегчается определение знака результата операции, а операция вычитания чисел сводится к арифметическому сложению. В результате упрощаются устройства, выполняющие арифметические операции.
В ВТ применяют прямой, обратный и дополнительный коды.
Прямой двоичный код Рпр(х) — это такое представление двоичного числа х, при котором знак «+» кодируется нулем в старшем разряде числа, а знак «–» — единицей. При этом старший разряд называется знаковым.
Например, числа +5D и –5D, представленные в прямом четырехразрядном коде, выглядят так: +5D = 0'101B; –5D = 1'101B. Здесь апострофом условно (для удобства определения знака) отделены знаковые разряды.
Обратный код Робр(х) получается из прямого кода по следующему правилу:
0' Pпр(х), при х 0
Робр(х) =
1' Pпр(х), при х 0.

Из приведенного выражения видно, что обратный код для положительных чисел совпадает с прямым кодом. Чтобы представить отрицательное двоичное число в обратном коде, нужно поставить в знаковом разряде 1, во всех значащих разрядах заменить 1 на 0, а 0 на 1. Такая операция называется инверсией и обозначается горизонтальной чертой над инвертируемым выражением (см. разд. «Логические основы работы ЭВМ»).
Пример 4. Получить обратный код для числа х = –11D.
Решение.
Рпр(х) = (1'1011)2
Робр(х) = (1'0100)2.
Считается, что здесь числа представлены пятью разрядами. Из рассмотренного примера видно, что обратный код для положительных чисел совпадает с прямым, а для отрицательных чисел получается инверсией (переворотом) всех разрядов, кроме знакового разряда.
Дополнительный
код
Рдоп(х
) образуется следующим образом:
|
0' Pпр(х), при х 0 Рдоп(х) = 1' Pпр(х) + 1, при х 0.
|
Из выражения видно, что дополнительный код положительного числа совпадает с прямым кодом, а для отрицательного числа получается инверсией всех значащих разрядов и добавлением единицы к младшему разряду результата.
Дополнительный код отрицательного числа может быть получен из обратного кода путем прибавления 1 к младшему разряду обратного кода (естественно, с учетом переносов между разрядами).
Пример 5. Получить дополнительный код для числа х = –13D.
Решение.
Рпр(х) = ( 1'1101 )2 прямой код
Робр(х) = ( 1'0010 )2 обратный код
Рдоп(х ) = ( 1'0011)2 дополнительный код.
В табл. 2 представлены прямые, обратные и дополнительные коды чисел от –7D до +7D.
Таблица 2
|
Десятичное число х |
Рпр(х) |
Робр(х) |
Рдоп(х ) |
|
0 |
0'000 |
0'000 |
0'000 |
|
1 |
0'001 |
0'001 |
0'001 |
|
2 |
0'010 |
0'010 |
0'010 |
|
3 |
0'011 |
0'011 |
0'011 |
|
4 |
0'100 |
0'100 |
0'100 |
|
5 |
0'101 |
0'101 |
0'101 |
|
6 |
0'110 |
0'110 |
0'110 |
|
7 |
0'111 |
0'111 |
0'111 |
|
-0 |
1'000 |
1'111 |
— |
|
-1 |
1'001 |
1'110 |
1'111 |
|
-2 |
1'010 |
1'101 |
1'110 |
|
-3 |
1'011 |
1'100 |
1'101 |
|
-4 |
1'100 |
1'011 |
1'100 |
|
-5 |
1'101 |
1'010 |
1'011 |
|
-6 |
1'110 |
1'001 |
1'010 |
|
-7 |
1'111 |
1'000 |
1'001 |
Рассмотрим правило сложения двоичных чисел в дополнительном коде.
|
При алгебраическом сложении двоичных чисел положительные слагаемые представляют в прямом коде, а отрицательные числа (слагаемые) — в дополнительном коде и производят арифметическое суммирование этих кодов, включая разряды знаков, которые при этом рассматривают как старшие разряды. При возникновении переноса из разряда знака единицу переноса отбрасывают. В результате получают алгебраическую сумму в прямом коде, если эта сумма положительная, и в дополнительном коде, — если сумма отрицательная.
|
Напомним, что алгебраическое сложение — это сложение, в котором могут участвовать как положительные, так и отрицательные числа.
Пример 6. Выполнить алгебраическое сложение с использованием дополнительного кода для чисел х1 = 7D и х2 = –3D.
Решение.
Необходимо найти сумму: y = x1 + x2.
Учитывая, что x1 > 0, это число нужно представить в прямом коде, а так как x2 < 0, то x2 нужно перевести в дополнительный код.
P(y)
= Рпр(x1)
+ Рдоп(x2).
|
. . . 0'111 P(y) = + 1'101 0'100 2 |
Рпр(x1) = 0'111В
Рпр(x2) = 1'011B
Робр(х2) = 1'100B
Рдоп(x2) = 1'101B.
Так как результат положителен (в знаковом разряде P(y) — 0), значит, он представлен в прямом коде. После перевода двоичного числа в десятичную СС получим ответ: y = +4D.
Пример 7. Выполнить алгебраическое сложение с использованием дополнительного кода для чисел х1 = 8D и х2 = –13D.
Необходимо найти сумму: y = x1 + x2.
Число x1 нужно представить в прямом коде, а x2 — в дополнительном коде.
P(y)
= Рпр(x1)
+ Рдоп(x2).
|
0'1000 P(y) = + 1'0011 1'1011 2 |
Рпр(x1) = 0'1000В
Рпр(x2) = 1'1101B
Робр(х2) = 1'0010B
Рдоп(x2) = 1'0011B.
В знаковом разряде стоит единица, и, значит, результат получен в дополнительном коде. Для перехода от дополнительного кода
Pдоп(y) = 1'1011B
к прямому коду Рпр(y) необходимо выполнить следующие преобразования:
Робр(y) = Рдоп(y) – 1 = 1'1011B – 1 = 1'1010B,


Рпр(y) = Робр(y) = 1'1010B = 1'0101B.
Переходя от двоичной СС к десятичной СС, получим ответ: y = –5D.
Для описания логики функционирования аппаратных и программных средств ЭВМ используется алгебра логики или, как ее часто называют, булева алгебра. Основоположником этого раздела математики был Дж. Буль.
Булева алгебра оперирует с логическими переменными, которые могут принимать только два значения: истина или ложь, обозначаемые соответственно 1 и 0.
Как ранее отмечалось, основной системой счисления ЭВМ является двоичная СС, в которой также используются только две цифры: 1 и 0. Таким образом, одни и те же цифровые устройства ЭВМ могут применяться для обработки как числовой информации в двоичной СС, так и логических переменных. Это обуславливает универсальность (однотипность) схемной реализации процесса обработки информации в ЭВМ.
Совокупность значений логических переменных x1, x2, ..., xn называется набором переменных.
Логической функцией от набора логических переменных (аргументов) F(x1, x2, ..., xn ) называется функция, которая может принимать только два значения: истина или ложь (1 или 0). Любая логическая функция может быть задана с помощью таблицы истинности, в левой части которой записываются возможные наборы аргументов, а в правой — соответствующие им значения функции. Логическую функцию порой называют функцией алгебры логики (ФАЛ).
В случае большого числа аргументов табличный способ задания функции алгебры логики становится громоздким, поэтому ФАЛ удобно выражать через другие, более простые ФАЛ.
Общее число ФАЛ n переменных определяется возведением числа 4 в степень n, т. е. 4n. Существуют четыре ФАЛ одной логической переменной.
Таблица 1
|
x |
F0(x) |
F1(x) |
F2(x) |
F3(x) |
|
0 |
0 |
0 |
1 |
1 |
|
1 |
0 |
1 |
0 |
1 |
Функции F0(х) = 0 и F3(х) = 1 являются константами (функции не изменяются при изменении аргумента). Функция F1(х) = х повторяет значение аргумента х. Функция F2(x) называется отрицанием переменной или инверсией и обозначается так:
F2(x)
=
.
Число
ФАЛ двух переменных x1
и x2
равно 16: F0(x)
...
F15(x).
Шесть функций являются вырожденными:
F0(x)
=
0, F3(x)
=
x1,
F5(x)
=
x2,
F10(x)
=
,F12(x)
=
,F15(x)
=
1.
Из оставшихся десяти логических функций широкое распространение имеют функции F1(х) (конъюнкция или логическое умножение) и F7(х) (дизъюнкция или логическое сложение), которые совместно с функцией инверсии составляют функционально полную систему логических функций. С помощью этих трех функций можно представить (аналитически выразить) любую сколь угодно сложную логическую функцию. Очень важной для вычислительной техники является логическая функция исключающее ИЛИ (неравнозначность, сложение по модулю два). Функция исключающее ИЛИ обозначается символом . Ниже приведены таблицы истинности для этих трех функций.
|
|
|
|
|
x2 |
x1 |
x2 x1 |
x2 x1 |
x2 x1 |
|
0 |
0 |
0 |
0 |
0 |
|
0 |
1 |
1 |
0 |
1 |
|
1 |
0 |
1 |
0 |
1 |
|
1 |
1 |
1 |
1 |
0 |
|
Инверсия | |
|
х |
|
|
0 |
1 |
|
1 |
0 |
Логические переменные, объединенные знаками логических операций, составляют логические выражения. При определении значения логического выражения принято следующее старшинство (приоритет) логических операций: сначала выполняется инверсия, затем конъюнкция и в последнюю очередь — дизъюнкция. Для изменения указанного порядка используют скобки.
Рассмотрим аксиомы, тождества и основные законы алгебры логики.
В алгебре логики рассматриваются переменные, которые могут принимать только два значения: 0 и 1. Базируется алгебра логики на отношении эквивалентности и трех упомянутых ранее операциях: дизъюнкции (синонимы — логическое сложение, операция ИЛИ), конъюнкции (логическое умножение, операция И) и отрицании (инверсия, операция НЕ).
Отношение эквивалентности обозначается знаком =.
Дизъюнкция обозначается знаком , а иногда символом +.
Конъюнкция обозначается символом либо точкой, которую можно опускать.
Отрицание
обозначается чертой над переменной:
.
Алгебра логики определяется следующей системой аксиом:
x = 0, если x 1.
x = 1, если x 0.
1 1 = 1 0 0 = 0
0 0 = 0 1 1 = 1
0 1 = 1 0 = 1 1 0 = 0 1 = 0
.
Если в аксиомах произвести взаимную замену операций дизъюнкции и конъюнкции, а также элементов 0 и 1, то из одной аксиомы данной пары получается другая. Это свойство называется принципом двойственности.
С помощью аксиом можно получить ряд тождеств:
![]()
![]()
![]()
![]()
Перечислим законы алгебры логики:
переместительный (или коммутативный)
,
.
сочетательный (или ассоциативный)
,
.
распределительный (или дистрибутивный)
,
.
двойственности (или де Моргана)
,
.
двойного отрицания
.
поглощения
,
.
склеивания
,
.
