Смекни!
smekni.com

Методические указания Пенза 1997 удк 681 06 (стр. 3 из 8)

№ п/п Наименование МО, условия ее выполнения и представле­ние в операторах присваи­вания Признаки, вырабатываемые в результате выполнения МО и комментарии
8 Вычитание из счетчика тактов единицы СчТ:=СчТ-1 Вычитание единицы из счет-чика тактов выполняется после каждого такта умно-жения Признаки вырабатываемые в результате выполнения МО и комментарии
9 Коррекция произведения для чисел в дополнительном коде производится для отрицательного множителя после n-го сдвига путем вычитания из суммы частич­ных произведений величины [x]2 2n
Такая коррекция возникает в связи с представлением отрицательного множителя в дополнительном коде

Таблица 4

Умножение чисел с плавающей точкой

№п/п Наименование МО, условия ее выполнения и представле­ние в операторах присваи­вания Признаки, вырабатываемые в результате выполнения МО и комментарии
1 Запись исходных чисел в регистры: - числа в прямом коде Р1м:=|Mx| Р2м:=|My|; РСМp:=|Px|2 Р1n:=|Py|2 ; - числа в дополнительном коде Р1м:=[Mx]2 Р2м:=[My]2; РСМp:=[Px]2; Р1p:= [Py]2 Для чисел в прямом коде в знаковые разряды регистров устанавливаются нули

Продолжение табл. 4

№п/п Наименование МО, условия ее выполнения и представле­ние в операторах присваи­вания Признаки, вырабатываемые в результате выполнения МО и комментарии
2 Проверка исходных чисел на нуль Осуществляется так же как и для чисел с фиксированной точкой
3 Установка регистров РСм и РСМм в нуль РСм:=0; РСМм:=0
4 Другие микрооперации, связанные с умножением мантисс сомножителей, выполняются так же как и для чисел с фиксированной точкой для p=0 Мантисса произведения Mz может быть получена с нарушением нормализации вправо. Сигнал нарушения нормализации вправо HR=1 вырабатывается при z0=z1
5 Определение порядка результата умножения Pz=Px+Py РСМp:=РСМp+Р1p Возможны особые случаи: - при Pz>Pmax.доп. вырабатывается сигнал пере­полнения порядка OV=1; - при Pz<Pmin.доп. вырабатывается сигнал анти­переполнения, Uп=1
6 Нормализация результата умножения влево при HR=1: Mz:=ALS (Mz,1); Pz:=Pz-1; РСМм:=ALS(РСМм,1); Р2м:=LS(Р2м,1); РСМp:=РСМp+(2n-1) Возможны особые случаи, как в п.5

Таблица 5

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

№ п/п Наименование МО, условия ее выполнения и представле­ние в операторах присваи­вания Признаки, вырабатываемые в результате выполнения МО и комментарии
1 Запись исходных чисел в регистры ОА: - числа в прямом коде (модули чисел) РСМ(0/n):=|x(0/n)|; Р2(0/n-1):=|x(n+1/2n)|; Р1:=|y|; - числа в дополнительном коде РСМ(0/n):=[x(0/n)]2; Р2(0/n-1):=[x(n+1/2n)]2; Р1:=[y]2 Для целых чисел делимое располагается так, чтобы младший разряд делимого был в (n-1)-м разряде Р2. Для простых дробей делимое располагается так, чтобы старший разряд делимого располагался в старшем разряде РСМ после кода знака делимого. Для чисел в прямом коде в знаковом разряде регистров устанавливаются нули
2 Проверка исходных чисел на нуль В результате проверки исходных чисел на нуль вырабатываются сигналы: - сигнал нулевого результата при x=0, y
0; - сигнал деления на нуль при x
0, y=0; - сигнал вещественной неопределенности при x=y=0
3 Запись в счетчик тактов числа тактов деления СчТ:=n

Продолжение табл. 5

№ п/п Наименование МО, условия ее выполнения и представле­ние в операторах присваи­вания Признаки, вырабатываемые в результате выполнения МО и комментарии
4 Пробное вычитание (сложе­ние) для анализа на пере­полнение: - для чисел в прямом коде анализ на переполнение вы­полняется вычитанием дели­теля из делимого
; - для чисел в дополни­тельном коде для этой цели выполняется вычитание при x0=y0
, а при x0
y0 сложение в сумматоре РСМ:=РСМ+Р1
Сигнал переполнения вы­рабатывается: - для чисел в прямом коде при С=1 (остаток поло­жительный); - для чисел в допол­нительном коде при РСМ(0)1=x0. При наличии переполнения операция деления прек­ращается. При отсутствии перепол­нения осуществляется сдвиг влево в РСМ и Р2 после чего начинаются такты деления, для чисел в дополнительном коде формируется код знака частного z0 (см. п.5)

Продолжение табл. 5

№ п/п Наименование МО, условия ее выполнения и представле­ние в операторах присваи­вания Признаки, вырабатываемые в результате выполнения МО и комментарии
5 Определение кода знака частного и его запись в регистр частного: - для чисел в прямом коде код знака частного определяется по формуле z0=x0Åy0. Р2(n):=z0; - для чисел в допол­нительном коде код знака частного определяется по результату пробного вычита­ния (сложения) таким образом: для y0=1
; для y0=0 z0=C0; - код знака частного зано­сится в младший разряд регистра Р2 перед выпол­нением тактов деления
Для чисел в прямом коде код знака частного формируется комбинацион­ной схемой, реализующей сложение по модулю 2 кодов знаков делимого и делителя. Для чисел в дополни­тельном коде код знака частного формируется авто­матически в результате ана­лиза на переполнение
6 Сдвиг влево в регистрах РСМ и Р2 выполняется: - после пробного вычитания (сложения) в сумматоре; - после вычитания или сложения в сумматоре в каждом такте деления РСМ:=ALS(РСМ,1); Р2:=ALS(Р2,1)

Продолжение табл. 5

№ п/п Наименование МО, условия ее выполнения и представле­ние в операторах присваи­вания Признаки, вырабатываемые в результате выполнения МО и комментарии
7 Сложение или вычитание в сумматоре после анализа на переполнение для чисел в прямом коде: - при С=0 выполняется сложение РСМ:=РСМ+Р1; - при С=1 выполняется вычитание
После каждого сложения или вычитания вырабаты­вается сигнал С, по которому определяется значение оче­редной цифры частного: zi=Ci
8 Сложение или вычитание в сумматоре после анализа на переполнение для чисел в дополнительном коде: - при РСМ(0)=y0 вы­полняется вычитание
; - при РСМ(0)
y0 вы­полняется сложение РСМ:=РСМ+Р1
После каждого сложения или вычитания вырабатывается сигнал С, по которому определяется в зависимости от знака делителя очередная цифра частного: zi=Ci при y0 =0;
при y0=1
9 Вычитание из счетчика тактов единицы СчТ:=СчТ-1 Вычитание единицы из счетчика тактов выполняется после каждого такта деления. При СчТ=0 вырабатывается сигнал окончания тактов деления

Продолжение табл. 5

№ п/п Наименование МО, условия ее выполнения и представле­ние в операторах присваи­вания Признаки, вырабатываемые в результате выполнения МО и комментарии
10 Коррекция частного при делении чисел в допол­нительном коде производится после окончания тактов деления путем прибавления единицы к содержимому реги­стра частного в следующих случаях: - при делении ненацело для z0=1; - при делении нацело для y0 = 1 P2 := P2 + 1 Коррекция частного при делении чисел в прямом коде не требуется


Продолжение табл. 5

№ п/п Наименование МО, условия ее выполнения и представле­ние в операторах присваи­вания Признаки, вырабатываемые в результате выполнения МО и комментарии
11 Восстановление последнего остатка делимого для чисел в дополнительном коде произво­дится, если знаки остатка и делимого не совпадают. Для этой цели: - при РСМ(0)
y0 вы­полняется сложение в сум­маторе РСМ:=РСМ+Р1; - при РСМ(0)=y0 вы­полняется вычитание в сум­маторе
. Для чисел в прямом коде восстановление последнего остатка производится, если он отрицательный, выполнением операции сложения в сумматоре РСМ:=РСМ+Р1
Признаком отрицательного остатка делимого для прямого кода является появление нуля в регистре C

Таблица 6

Деление чисел c плавающей точкой