![](/user_photo/2706_HbeT2.jpg)
- •Омский государственный технический университет
- •1. Из истории развития систем счисления
- •Пальцевый счет
- •1.2. Древнеегипетская система счисления
- •Вавилонская система счисления
- •1.4. Системы счисления, основанные на позиционном принципе
- •1.5. Системы счисления Древней Греции
- •1.6. Римская система счисления
- •1.7. Древнеславянская система счисления
- •2. Позиционная система счисления
- •2.1. Представление произвольного числа в позиционной системе счисления
- •2.2. Двоичная система счисления
- •2.3. Восьмеричная система счисления
- •2.4. Шестнадцатеричная система счисления
- •2.5. Перевод чисел в систему с кратным основанием
- •2.6. Перевод правильной дроби
- •Задания для самостоятельной работы №1
- •1. Перевести данное число из десятичной системы счисления в двоичную, восьмеричную и шестнадцатеричную системы счисления.
- •2. Перевести данное число в десятичную систему счисления.
- •Контрольная работа №1
- •3. Двоичная арифметика
- •3.1. Сложение двоичных чисел
- •3.2. Вычитание двоичных чисел
- •3.3. Умножение в двоичной системе счисления
- •3.4. Деление двоичных чисел
- •4. Формы представления чисел в эвм
- •4.1. Числа с фиксированной запятой
- •4.2. Числа с плавающей запятой
- •4.3. Сложение (вычитание) чисел с плавающей запятой
- •4.4. Умножение чисел с плавающей запятой
- •4.5. Прямой код
- •4.6. Обратный код
- •1 0111111111111111 – Обр. Код второго числа
- •4.7. Дополнительный код
- •4.8. Признак переполнения разрядной сетки
- •4.9. Правило перевода из дополнительного кода в десятичную систему
- •4.10. Модифицированные коды
- •5. Форматы чисел в эвм
- •Задания для самостоятельной работы №2
- •Контрольная работа №2.2
- •Контрольная работа №2.3
- •Контрольная работа №2.4
- •6. Кодирование алфавитно-цифровой информации
- •6.1. Параметры алфавитно-цифровой информации
- •6.3. Стандарты кодирования символов ansi, кои-8 и unicode
- •7. Двоично-десятичные коды
- •7.2. Коды с избытком
- •7.5. Действия над двоично-десятичными числами
- •7.6. Сложение двоично-десятичных чисел
- •7.7. Вычитание модулей двоично-десятичных чисел
- •7.8. Умножение модулей двоично-десятичных чисел
- •8. Код грея
- •8.1. Строение кода Грея
- •8.2. Использование кода Грея
- •8.3. Алгоритмы преобразования кода Грея
- •9. Погрешности вычислений
- •9.1. Источники погрешностей
- •9.2. Абсолютная и относительная погрешности
- •9.3. Десятичная запись приближенных чисел Значащая цифра числа. Верная значащая цифра
- •9.4. Распространение ошибок
- •9.5. Правила подсчета цифр
- •9.6. Общие рекомендации, позволяющие уменьшить погрешность вычислений
- •9.7. Ошибки в программах, связанные с особенностью выполнения арифметических операций
- •10. Представление графической информации
- •10.1. Текстовый режим
- •10.2. Графический режим
- •10.3. Растровое графическое изображение
- •10.4. Векторная графика
- •10.5. Форматы графических файлов
- •11. Представление звуковой информации
- •11.1. Цифро-аналоговое и аналого-цифровое преобразование звуковой информации
- •11.2. Компрессия звука
- •11.3. Формат Microsoft riff
- •11.6. Midi-форма звука
- •11.7. Аппаратные синтезаторы
- •11.8. Альтернативы звука в эвм
- •11.9. Звуковые платы
- •Задачи для самостоятельной работы
- •Приложение 3
- •Содержание
- •Литература
1 0111111111111111 – Обр. Код второго числа
1 1100111111111111 – обр. код результата
1 0011000000000000 – пр. код результата
порядок результата – 4
1 1100000000000000 – нормализованный результат
порядок результата после нормализации – 2.
Итак, 5 + (– 8) = – 3 = – 011.
Пример 4.6. Вычислить выражение – 3(10) –2(10).
Пример 4.7. Вычислить 7(10) – 3(10).
Указанные трудности привели к тому, что в современных ЭВМ абсолютное большинство операций выполняется в дополнительном коде.
4.7. Дополнительный код
Дополнительный код двоичного числа G, представляемого в n-разрядной сетке, определяется как
,
при
0;
=
,
при
0,
где
– величина, равная весу разряда,
следующего за старшим разрядом
используемой разрядной сетки (для дробей
,
для целых чисел
).
Диапазон представляемых дополнительным
кодом чисел отличается от диапазона
прямого или обратного кода. Для
положительных и отрицательных чисел
поддиапазоны различны. Для положительных
чисел, как и у прямого кода 0
<
,
а для отрицательных 0 <
.
Из определения дополнительного кода
следует, что старший (знаковый) разряд
у кода положительного числа равен 0, а
у кода отрицательного числа 1. В цифровых
разрядах дополнительного кода
положительного числа представляется
модуль этого числа. Дополнительный код
отрицательного числа удобно получать
через обратный код.
Сначала формируется обратный код (ОК), а затем к младшему разряду (МЗР) добавляют 1. При выполнении арифметических операций положительные числа представляются в прямом коде (ПК), а отрицательные числа – в ДК, причем обратный перевод ДК в ПК осуществляется аналогичными операциями в той же последовательности. На рисунке 4.3. рассмотрена цепь преобразований числа из ПК в ДК и обратно в двух вариантах.
Рис. 4.3. Два варианта преобразования чисел из ПК в ДК и обратно
Если рассматривать
обратный и дополнительный коды числа
как двоичные числа без знаков, то для
отрицательных двоичных дробей
,
а для отрицательных целых чисел
.
Пример 4.8. Число –5(10) перевести в ДК и обратно (первый вариант).
Пример 4.9. Число –5(10) перевести в ДК и обратно (второй вариант).
Рассмотрим алгебраическое сложение в дополнительном коде. В общем виде: A – B = A + (–B)доп = A + B + 1.
При выполнении алгебраического сложения в дополнительном коде перенос из старшего разряда отбрасывается.
Необходимо помнить, что результат алгебраического сложения слагаемых, представленных в обратном или дополнительном коде, получается в том же коде, что и слагаемые. Для того чтобы изменить знак числа необходимо:
– в прямом коде изменить знаковый разряд числа на противоположный;
– в обратном коде инвертировать код;
– в дополнительном коде инвертировать код и прибавить 1 в младший разряд.
В общем случае
использованием ДК для записи отрицательных
чисел можно перекрыть диапазон десятичных
чисел от
до
–
1, где
– число используемых двоичных разрядов,
включая знаковый. Так, с помощью одного
байта можно представить десятичные
числа от –128 до +127, либо только положительные
числа от 0 до 255 (здесь под положительными
числами понимаются числа без знака).
Оба этих способа представления чисел
(со знаком и без знака) широко используются
в ЭВМ.
В ЭВМ используется быстрый способ формирования ДК. Его суть заключается в следующем. Двоичное число в ПК просматривается от МЗР к СЗР. Пока встречаются нули, их копируют в одноименные разряды результата. Первая встретившаяся единица также копируется в соответствующий разряд, а каждый последующий бит исходного числа заменяется на противоположный (0 – на 1, 1 – на 0). Использование ДК для представления отрицательных чисел устраняет двусмысленное представление нулевого результата (возникновение двух нулей: +0 и –0), так как – 0 исчезает.
Пример 4.10. Число –44(10) (10101100 (2)) перевести в ДК и обратно.
Проверка:
Пример 4.11. Перевести в ДК модуль числа –44.
Как видно из примеров, результаты, полученные при преобразовании обоими методами, совпадают.