Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методический материал по ЭВМ.doc
Скачиваний:
80
Добавлен:
22.09.2019
Размер:
2.38 Mб
Скачать

3 Этап.

Это этап коррекции результата. Для этого на РА надо поставить нули, либо в счётчик заносить не (n-1), а n.

( *) результат

0 0 1 1 0 0 1 0з сдвинуть вправо на 1 разряд

РС Р21

0 0 0 1 1 0 0 1

РС Р21

Блок-схема алгоритма микропрограммы

Р1:=Швх

Р2:=Швх

РВ:=0

СчЦ:=n (n-1)

Тзн:=Р1(n-1)+P2(n-1)

Р1(n-1):=0

Р2(n-1):=0

CM:=PA+PB

P21:=n(P2)

P21(n-2):=CM(0)

P2:=P21

PC:=n(CM)

PB:=PC

CчЦ:=СчЦ-1

Швых:=Тзн+РС если в СчЦ не n, а n-1, то тут

этап коррекции результата

4.2.3 Деление чисел с фиксированной точкой

x/y = z x - делимое (2n разрядная сетка)

y - делитель (n разрядная сетка)

z - частное (n разрядная сетка)

Надо проверить, поместится ли частное в разрядную сетку:

z < 2n-1

x/y < 2n-1

x - 2n-1*y < 0

Пример:

n = 4 разряда

0

1

1

1

знак

8=23=2n-1→z< 2n-1

x/y< 2n-1

x-2n-1∙y<0

20

1

0001

21

2

0010

22

3

0100

23

4

1000


Какова степень, на столько разрядов и сдвигается

Если любое двоичное число умножить на 2m, то это значит, что двоичное число сдвигается на m разрядов влево.

Чтобы частное уместилось в n разрядную сетку необходимо из делимого вычесть делитель, сдвинутый влево на n-1 разряд. Если результат < 0, то деление возможно, в противном случае невозможно.

Этапы деления

1 Этап.

Определение знака результата. Ниже рассматривается случай деления в прямом коде. Знак результата определяется путём сложения по модулю 2 знаковых разрядов операндов. (См. Умножение путём сложения по модулю 2). После этого знаковые разряды операндов обнуляются.

2 Этап.

Проверка деления. На первом этапе деления проверяется возможность проведения операции деления: из делимого x вычитается делитель y, сдвинутый на (n-1) разряд влево. Если результат вычитания оказывается меньше 0, то деление возможно, т.к. результат z уместится в разрядную сетку n. В противном случае, z будет требовать больше, чем n разрядов, для своего представления, и, следовательно, деление невозможно

3 Этап.

Определение очередной цифры частного. Зависит от метода выполнения деления.

Существуют два базовых метода деления:

  1. Деление с восстановлением остатка,

  2. Деление без восстановления остатка.

  1. Деление с восстановлением остатка

Пример:

Число 25 (0.0011001) разделить на 5 (0.101).

n=4

x-2n-1∙y<0

0.0011 0 0 1 0. 1 0 1

0101 0. 1 0 1

рез<0

0011

_0110

0101

рез>0 0001

0010

0101

рез<0

0010

_0101

0101

0000

Деление с восстановлением остатка над числами с фиксированной точкой представляется в прямом коде.

Сдвигаем делимое по отношению к делителю на три разряда и проводим пробное вычитание.

На очередном этапе частичный остаток сдвигается влево на один разряд. В освободившийся разряд заносим очередную цифру делимого. Из сдвинутого частичного остатка вычитаем делитель (в ЭВМ производится сложение с дополнительным или обратным кодом). Получаем новый частичный остаток. Если результат получился отрицательный, то в очередную цифру частного заносим 0 и восстанавливаем частичный остаток. В противном случае (если результат положительный, либо равен 0), заносим 1.