- •Глава 1.
- •Базовая структура машины Джона фон Неймана:
- •Поколения эвм.
- •Представление информации в эвм.
- •Представление других видов информации.
- •Системы счисления.
- •Перевод целых чисел.
- •Перевод дробных чисел.
- •Прямой, обратный и дополнительный коды.
- •Прямой код.
- •Обратный код.
- •Дополнительный код
- •1.1.12. Модифицированные коды.
- •1.2. Структура эвм и назначение ее элементов.
- •1.2.1. Элементы архитектуры вычислительных систем.
- •1.2.2. Понятие о системе программного обеспечения эвм. Понятие об архитектуре эвм.
- •1.2.3. Общие принципы построения современных эвм.
- •1.3. Центральный процессор эвм.
- •1.3.1. Принципы построения элементарного процессора.
- •1.3.2. Операционные устройства (алу).
- •1.3.3. Управляющие устройства.
- •1.3.4. Уу с жесткой логикой.
- •1.3.5. Структура базового микропроцессора.
- •1.3.6. Структура микропроцессора.
- •1.4. Организация и структура памяти.
- •1.4.1. Структура памяти эвм.
- •1.4.2. Способы организации памяти.
- •1.4.3. Адресная память.
- •1.4.4. Ассоциативная память.
- •1.4.4. Стековая память (магазинная).
- •1.4.5. Постоянный зу (пзу, ппзу).
- •1.4.6. Флеш-память.
- •1.4.7. Размещение информации в основной памяти ibm pc.
- •1.5. Система прерываний.
- •1.5.1. Назначение, принцип работы и организация системы прерываний эвм.
- •1.5.2. Возможные структуры систем прерывания.
- •1.5.3. Характеристики систем прерывания.
- •1.6. Системы ввода-вывода.
- •1.6.1. Принципы организации ввода / вывода информации в эвм.
- •1.6.2. Общие принципы организации вв.
- •1.6.3. Программный вв.
- •1.6.4. Вв по прерываниям.
- •1.6.5. Вв в режиме пдп.
- •Пдп с захватом цикла.
- •Пдп с блокировкой процессора.
- •Системы визуального отображения информации (видеосистемы).
- •Клавиатура.
- •Принтер.
- •Сканер.
- •Устройства ввода-вывода звуковых сигналов.
- •1.8. Компоненты материнской платы.
- •Chipset.
- •Разновидности слотов.
- •Типы обмена по системной магистрали.
- •1.8. Введение в микропроцессорную технику.
- •Классификация мп
- •Структура типового микропроцессора
- •1.9. Архитектура современных эвм.
- •Глава 2.
- •Пользователь 1
- •1. Основные понятия безопасности
- •2. Проблемы обеспечения безопасности ос
- •3. Основные функции подсистемы защиты ос
- •4. Отказоустойчивость операционных систем
- •Глава 3
Обратный код.
В обратном коде (ОК), также как и в прямом коде, для обозначения знака положительного числа используется бит, равный нулю, и знака отрицательного - единице. Обратный код отрицательного двоичного числа формируется дополнением модуля исходного числа нулями до самого старшего разряда модуля, а затем поразрядной заменой всех нулей числа на единицу и всех единиц на нули. В знаковом разряде обратного кода у положительных чисел будет 0, а у отрицательных - 1.
На рис. 1.2 приведен формат однобайтового двоичного числа в обратном коде.
Рис. 1.2. Формат двоичного числа со знаком в обратном коде
а - положительное число; б – отрицательное
В общем случае ОК является дополнением модуля исходного числа до наибольшего числа без знака, помещенного в разрядную сетку.
Алгоритм формирования ОК очень прост, при этом ОК позволяет унифицировать операции сложения и вычитания в АЛУ, которые в прямом коде выполняются по-разному. Однако работа с ОК вызывает ряд трудностей. В частности, возникают два нуля: +0 и -0, т.е. в прямом коде (в котором представлены положительные числа) имеет место (+0) = 000...0, а в обратном коде (в котором представлены отрицательные числа): (-0) = 111...1.
Кроме того, в операциях сложения и вычитания требуется дополнительная операция по прибавлению бита переноса в младший разряд суммы. Рассмотрим правила алгебраического сложения в ОК (поскольку А-В=А+(-В)). Алгоритм сложения в ОК включает в себя:
- сложение кодов, включая знаковый разряд;
- прибавление переноса к МЗР (младшему значащему разряду) суммы.
Пример:
Вычислить выражение -3(10) -2(10).
Пример:
Вычислить 7(10) -3(10).
Указанные трудности привели к тому, что в современных ЭВМ абсолютное большинство операций выполняется в дополнительном коде.
Дополнительный код
Дополнительный код (ДК) строится следующим образом. Сначала формируется обратный код (ОК), а затем к младшему разряду (МЗР) добавляют 1. При выполнении арифметических операций положительные числа представляются в прямом коде (ПК), а отрицательные числа - в ДК, причем обратный перевод ДК в ПК осуществляется аналогичными операциями в той же последовательности. На рис. 2.3 рассмотрена цепь преобразований числа из ПК в ДК и обратно в двух вариантах.
Рис. 1.3. Два варианта преобразования чисел из ПК в ДК и обратно
Пример:
Число -5(10) перевести в ДК и обратно (первый вариант).
Пример:
Число -5(10) перевести в ДК и обратно (второй вариант).
Использование ДК для представления отрицательных чисел устраняет двусмысленное представление нулевого результата (возникновение двух нулей: +0 и -0), так как -0 исчезает.
В общем случае использованием ДК для записи отрицательных чисел можно перекрыть диапазон десятичных чисел от –2k-1 до +2k-1-1, где k - число используемых двоичных разрядов, включая знаковый. Так, с помощью одного байта можно представить десятичные числа от -128 до +127, либо только положительные числа от 0 до 255 (здесь под положительными числами понимаются числа без знака). В табл.1 приведены 4-разрядные двоичные числа от 0000 до 1111 и десятичные числа в случае представления их со знаком и без знака. Из этой таблицы следует, что в формате 4-разрядного двоичного числа могут быть представлены десятичные числа со знаком в диапазоне от -8 до +7 или десятичные числа без знака в диапазоне от 0 до +15.
Оба этих способа представления чисел (со знаком и без знака) широко используются в ЭВМ.
Таблица 1. Представление десятичных чисел одним полубайтом.
4-х разрядное двоичное число |
десятичные эквиваленты двоичного числа со знаком |
десятичные эквиваленты двоичного числа без знака |
0000 |
+0 |
0 |
0001 |
+1 |
1 |
. . . . ПК |
. . . |
. . . |
0110 |
+6 |
6 |
0111 |
+7 |
7 |
1000 |
-8 |
8 |
1001 |
-7 |
9 |
1010 |
-6 |
10 |
. . . . ДК |
. . . |
. . . |
1110 |
-2 |
14 |
1111 |
-1 |
15 |
В ЭВМ используется быстрый способ формирования ДК. Его суть заключается в следующем. Двоичное число в ПК просматривается от МЗР к СЗР. Пока встречаются нули, их копируют в одноименные разряды результата. Первая встретившаяся единица также копируется в соответствующий разряд, а каждый последующий бит исходного числа заменяется на противоположный (0 - на 1, 1 - на 0).
Пример:
Число –44(10) (10101100 (2)) перевести в ДК и обратно.
Проверка:
Пример:
Перевести в ДК модуль числа -44.
Как видно из примеров, результаты, полученные при преобразовании обоими методами, совпадают.