Помощь в написании студенческих работ
Антистрессовый сервис

ТЕМА: Позиционные системы счисления

Реферат Купить готовую Узнать стоимостьмоей работы

Особенность использования этих кодов — при сложении знаковые разряды рассматриваются наравне с цифровыми разрядами двоичного числа и складываются друг с другом и с единицей переноса из предыдущего разряда числа по обычным правилам арифметики. Различаются же обратный и дополнительный коды действиями с единицей переноса из старшего разряда: в обратном коде она добавляется к младшему разряду… Читать ещё >

ТЕМА: Позиционные системы счисления (реферат, курсовая, диплом, контрольная)

Содержание

  • Введение
  • Представление чисел в ЭВМ
  • Прямой код
  • Обратный код
  • Дополнительный код
  • Алгоритм выполнения арифметической операции сложения
  • Сложение в прямом коде
  • Сложение в обратном коде
  • Сложение и вычитание в дополнительном коде
  • Заключение
  • Список использованной литературы

Кроме того, значение разряда знака влияет на алгоритм выполнения операции (сложение может заменться вычитанием и наоборот).

В итоге в ЭВМ для выполнения операции алгебраического сложения прямой код не используется, однако применяется для выполнения умножения и деления.

Сложение в обратном коде В обратном коде операция вычитания заменяется операцией сложения, поэтому рассматривается алгебраическое сложение. Рассмотрим правила алгебраического сложения в обратном коде.

Сложение в обратном коде выполняется в два этапа:

сложение кодов, включая знаковый разряд;

прибавление единицы к младшему разряду суммы в случае возникновения переноса из цифровой части в старший знаковый разряд.

Возникновение циклического переноса из знакового разряда в младший разряд цифровой части является характерной особенностью сложения в обратном коде, благодаря этому осуществляется коррекция суммы на 2-n.

Рассмотрим вычисление выражения 43(10) — 29(10) в обратном коде.

43(10) = 10 1011(2) — 29(10) = -11101(2).

Первый этап:

0 0 1 0 1 0 1 1 + 1 1 1 0 0 0 1 0 0 0 0 0 1 1 0 1 Второй этап:

0 0 1 0 1 0 1 1 + 1 0 0 0 0 1 1 1 0 Проверим полученный результат:

43(10) — 29(10) = 14(10).

1110(2)= 23+22+21 = 8 + 4 + 2 = 14(10).

Результат вычисления верен.

Вычислим 111(2) — 010(2).

Представим числа 111(2) и -010(2) в обратном коде.

Дополним числа до размерности байт. Обратный код для положительного числа совпадает с прямым кодом, поэтому первое число принимает вид:

111(2) = 0−111(2).

Для отрицательного числа при переводе в обратный код все цифры числа заменяются на противоположные, а в знаковый разряд заносится единица.

Прямой код: -010(2) =1−10(2).

Обратный код: -010(2) = 1−111 1101(2).

Сложим числа 1−10(2) и 1−111 1101(2).

0 0 0 0 0 1 1 1 + 1 1 1 1 1 1 0 1 1 0 0 0 0 0 1 0 0 Так как возникло переполнение в старшем разряде, то по правилам добавляем единицу к младшему разряду цифровой части:

0 0 0 0 0 1 1 1 + 1 1 1 1 1 1 0 1 0 0 0 0 0 1 0 1 Получили результат в обратном коде: 101.

Проверим результат вычисления. Поскольку в знаковом разряде 0, то число является положительным, значит, в данном случае прямой и обратный коды совпадают.

Преобразуем полученный результат в десятичное представление:

101(2) = 22+ 20 = 4 + 1 = 5(10).

111(2) = 22+ 21 + 20 = 4 + 2 + 1 = 7(10).

— 010(2) = 21(1 = 2(10).

Результат сложения (в десятичном представлении): 7 — 2 = 5.

Сложение и вычитание в дополнительном коде В дополнительном коде операция вычитания заменяется операцией алгебраического сложения. Так как знаковый разряд и цифровая часть числа в дополнительном коде являются единым целым, то сумматор дополнительного кода выполняет над ними одинаковые действия. В отличие от обратного кода, при выполнении операции в дополнительном коде не требуется добавлять единицу переноса к младшему разряду цифровой части: знак результата получается автоматически в процессе сложения.

Рассмотрим подробнее алгебраическое сложение для отрицательных чисел, представленных в дополнительном коде.

Если в дополнительном коде производится алгебраическое сложение чисел со знаком, то результатом также является число со знаком. Суммирование происходит по всем разрядам, включая знаковые, которые при этом рассматриваются как старшие. При возникновении переноса из старшего разряда единица переноса отбрасывается и возможны два варианта результата:

знаковый разряд равен нулю: результат — положительное число в прямом коде;

знаковый разряд равен единице: результат — отрицательное число в дополнительном коде.

Для определения абсолютного значения результата, его необходимо инвертировать, затем прибавить единицу.

Рассмотрим сложение чисел в дополнительном коде:

Сумма 43(10) + 29(10).

43(10) = 10 1011(2) 29(10) = 11101(2).

0 0 1 0 1 0 1 1 + 0 0 0 1 1 1 0 1 0 1 0 0 1 0 0 0 Проверим полученный результат:

43(10) + 29(10) = 72(10)(100 1000(2)= 26+23 = 64 + 8 = 72(10).

Результат вычисления верен.

Сумма 43(10) — 29(10).

43(10) = 10 1011(2) — 29(10) = -11101(2) в дополнительном коде: 1−1 100 011.

0 0 1 0 1 0 1 1 + 1 1 1 0 0 0 1 1 0 0 0 0 1 1 1 0 Проверим полученный результат:

43(10) — 29(10) = 14(10) (1110(2)= 23+22+21 = 8 + 4 + 2 = 14(10).

Результат вычисления верен.

Сумма 45(10) — 7(10).

45(10) = 10 1101(2) -7(10) = -111(2).

В прямом коде:

45(10) =0−101 101 -7(10) =1−111.

В дополнительном коде:

45(10) =0−101 101 -7(10) =1−111 001.

0 0 1 0 1 1 0 1 + 1 1 1 1 1 0 0 1 1* 0 0 1 0 0 1 1 0 (единица переноса 1* из знакового разряда суммы отбрасывается) Проверим полученный результат:

45(10) — 7(10) = 38(10) (10 0110(2)= 25+22+21 = 32 + 4 + 2 = 38(10).

Результат вычисления верен.

Заключение

.

В ЭВМ числа представляются в прямом, обратном и дополнительном кодах.

При выполнении арифметических операций в ЭВМ прямой код используется для представления положительных чисел и для выполнения операций умножения и деления. Для сложения (как алгебраической суммы) отрицательных чисел используется либо обратный, либо дополнительный коды.

Сложение чисел в прямом коде производится двумя способами: как обычная сумма чисел (для чисел с одним знаком) и как алгебраическое сложение (для чисел с разным знаком). Чтобы устранить эту проблему и вычислять сумму по одному алгоритму, используют обратный и дополнительные коды.

Сложение и вычитание чисел в обратном и дополнительном кодах выполняется по обычным правилам арифметического сложения многоразрядных чисел.

Особенность использования этих кодов — при сложении знаковые разряды рассматриваются наравне с цифровыми разрядами двоичного числа и складываются друг с другом и с единицей переноса из предыдущего разряда числа по обычным правилам арифметики. Различаются же обратный и дополнительный коды действиями с единицей переноса из старшего разряда: в обратном коде она добавляется к младшему разряду цифровой части, в дополнительном коде просто отбрасывается.

1. Макарова Н. В., Волков В. Б. Информатика: Учебник для вузов. — СПб.: Питер, 2011. — 576 с.

2. Соловьев Г. Н. Арифметические устройства ЭВМ. — М.: «Энергия», 1978.

3. Савельев А. Я. Прикладная теория цифровых автоматов — М. «Высшая школа». 1987.

4. Каган Б. М. Электронные вычислительные машины и системы. — М. Энергоатомиздат. 1985.

5. Вашкевич Н. П. Основы арифметики цифровых процессоров: учеб. пособие/Н.П. Вашкевич, Е. И. Калинченко. — Пенза: Изд-во ПГУ, 2010. — 160 с.

б).

а).

знаковые разряды.

цифровые разряды.

-28(10)=1 001 1100(2).

+28(10)=1 1100(2).

=+0.

=-0.

+28(10)=1 1100(2).

-28(10)=1 110 0011(2).

цифровые разряды.

знаковые разряды.

а).

б).

Показать весь текст

Список литературы

  1. Н.В., Волков В. Б. Информатика: Учебник для вузов. — СПб.: Питер, 2011. — 576 с.
  2. Г. Н. Арифметические устройства ЭВМ. — М.: «Энергия», 1978.
  3. А.Я. Прикладная теория цифровых автоматов — М. «Высшая школа». 1987.
  4. .М. Электронные вычислительные машины и системы. — М. Энергоатомиздат. 1985.
  5. Н.П. Основы арифметики цифровых процессоров: учеб. пособие/Н.П. Вашкевич, Е. И. Калинченко. — Пенза: Изд-во ПГУ, 2010. — 160 с.
Заполнить форму текущей работой
Купить готовую работу

ИЛИ