Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Informatika_-_posobie_dlya_studentov_grupp_AUZ.....docx
Скачиваний:
22
Добавлен:
15.11.2018
Размер:
232.81 Кб
Скачать

Задание 6: «Представление целых чисел в эвм. Арифметические операции над целыми числами. Умножение и деление»

Что нужно знать:

  • перевод чисел из десятичной в двоичную систему счисления

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

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

Если учесть, что все вычитания в ЭВМ заменяются сложением в ОК или ДК, то действительно, операция деления приводится к операциям сложения и сдвигам вправо разрядов делителя относительно разрядов делимого. Делимое перед операцией деления должно быть приведено к 2n- разрядной сетке. Только в этом случае при делении на n- разрядный делитель получается 2n- разрядное число. Знак частного формируется также путем сложения знаковых разрядов делимого и делителя, как это делалось при умножении

Пример №1

Дано: А10=8 и В10=10. Вычислить произведение чисел А и В, результат представить в прямом коде.

Общий подход:

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

  2. Выполнить необходимые вычисления.

Решение:

  1. Переводим исходные данные в двоичную систему счисления:

А10=8 А2=10002

В10=10 В2=10102

  1. Запишем исходные данные в прямом коде - 0 в знаковом разряде, далее двоичный код числа (при переводе не забываем про разрядность чисел – они занимают в памяти 1 байт, т.е. под число отводится 8 разрядов):

АПК=0:0001000

ВПК=0:0001010

  1. Для наглядности вычислений будет перемножать двоичные аналоги прямого кода, т.е. числа 1000 и 1010.

1 0 0 0 - множимое

1 0 1 0 – множитель

_ сдвиг на один разряд влево

1 0 0 0 - множимое

_ - сдвиг на один разряд влево

1 0 0 0 - множимое

_____________________________________

1 0 1 0 0 0 0 - произведение

  1. Теперь запишем результат в прямом коде. Полученное произведение – это двухбайтовое число, поэтому под число отводится 16 разрядов.

Рпк=0:000000001010000

Пример №2

Дано: А10=84 и В10=14. Разделить А на В, результат представить в прямом коде.

Общий подход:

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

  2. Выполнить необходимые вычисления.

Решение:

  1. Переводим исходные данные в двоичную систему счисления:

А10=84 А2=1010100

В10=14 В2=1110

  1. Запишем исходные данные в прямом коде - 0 в знаковом разряде, далее двоичный код числа (при переводе не забываем про разрядность чисел – частное занимает в памяти 2 байта, делитель – 1 байт):

АПК=0:000000001010100

ВПК=0:0001110

  1. Для наглядности вычислений будет делить двоичные аналоги прямого кода, т.е. числа 1010100 и 1110.

1 0 1 0 1 0 0 1110

1 1 1 0 110

1 1 1 0

1 1 1 0

00

0

0

  1. Теперь запишем результат в прямом коде. Полученное частное – это однобайтовое число, поэтому под число отводится 8 разрядов.

Спк=0:0000110

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]