- •Омский государственный технический университет
- •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
- •Содержание
- •Литература
3. Двоичная арифметика
Правила выполнения арифметических действий над двоичными числами задаются таблицами двоичного сложения, двоичного вычитания и двоичного умножения.
Правила двоичной арифметики.
Таблица 3.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 = 0 плюс единица переноса в старший разряд |
10 – 1 = 1 |
1 * 1 = 1 |
3.1. Сложение двоичных чисел
При сложении двоичных чисел в каждом разряде в соответствии с таблицей двоичного сложения производится сложение двух цифр слагаемых или двух этих цифр и 1, если имеется перенос из соседнего младшего разряда. Необходимо помнить, что сумма двух единиц даёт ноль и единицу переноса в старший разряд. В результате получается цифра соответствующего разряда суммы и, возможно, также 1 переноса в старший разряд. Например, необходимо сложить два двоичных числа:
Справа показано сложение тех же чисел, представленных в десятичной системе счисления.
Способ сложения столбиком, в общем-то, такой же, как и для десятичного числа. То есть, сложение выполняется поразрядно, начиная с младшей цифры.
Если при сложении двух цифр получается СУММА больше девяти, то записывается цифра = СУММА – 10, а ЦЕЛАЯ ЧАСТЬ (СУММА /10), добавляется в старшему разряду. Так и с двоичным числом. Складываем поразрядно, начиная с младшей цифры. Если получается больше 1, то записывается 1 и 1 добавляется к старшему разряду (говорят "на ум пошло").
Пример 3.1. Выполнить операцию сложения 10011 + 10001.
+ |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
|
1 |
0 |
0 |
1 |
0 |
0 |
Первый разряд: 1+1 = 2. Записываем 0 и 1 на ум пошло.
Второй разряд: 1+0+1 (запомненная единица) =2. Записываем 0 и 1 в следующий разряд.
Третий разряд: 0+0+1 (запомненная единица) = 1. Записываем 1.
Четвертый разряд 0+0=0. Записываем 0.
Пятый разряд 1+1=2. Записываем 0 и добавляем к шестым разрядом 1. Переведём все три числа в десятичную систему и проверим правильность сложения.
10011 = 1*24 + 0*23 + 0*22 + 1*21 + 1*20 = 16 + 2 + 1 =19
10001 = 1*24 + 0*23 + 0*22 + 0*21 + 1*20 = 16 + 1 = 17
100100 = 1*25 + 0*24 + 0*23 + 1*22 + 0*21 + 0*20 =32+4=36
17 + 19 = 36 верное равенство
3.2. Вычитание двоичных чисел
При вычитании двоичных чисел в данном разряде при необходимости занимается 1 из следующего, старшего разряда. Эта занимаемая единица равна двум единицам данного разряда. Заём производится каждый раз, когда цифра в разряде вычитаемого больше цифры в том же разряде уменьшаемого.
Например, если нужно из одного двоичного числа вычесть другое:
Вычитать числа, будем также столбиком и общее правило тоже, что и для десятичных чисел, вычитание выполняется поразрядно и если в разряде не хватает единицы, то она занимается в старшем.
Пример 3.2.
|
1 |
1 |
0 |
1 |
|
|
|
|
|
– |
|
1 |
1 |
0 |
|
|
1 |
1 |
1 |
Первый разряд. 1 – 0 = 1. Записываем 1.
Второй разряд 0 – 1. Не хватает единицы. Занимаем её в старшем разряде. Единица из старшего разряда переходит в младший, как две единицы, потому что старший разряд представляется двойкой большей степени: 2 – 1 = 1. Записываем 1.
Третий разряд. Единицу этого разряда мы занимали, поэтому сейчас в разряде 0 и есть необходимость занять единицу старшего разряда. 2 – 1 = 1. Записываем 1.
Проверим результат в десятичной системе
1101 – 110 = 13 – 6 = 7 (111) Верное равенство.
Еще один интересный способ выполнения вычитания связан с понятием дополнительного кода, который позволяет свести вычитание к сложению. Получается число в дополнительном коде исключительно просто, берём число, заменяем нули на единицы, единицы наоборот заменяем на нули и к младшему разряду добавляем единицу. Например, 10010, в дополнительном коде будет 011011.
Правило вычитания через дополнительный код утверждает, что вычитание можно заменить на сложение если вычитаемое заменить на число в дополнительном коде.