Файл: Основы теории алгоритмов учеб. пособие.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 24.10.2024

Просмотров: 86

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

144 -

Actjt*- Aa^ct-o + КA .

В этом олучаe

логическая схема (5.28) предпочтительнее: (5 .27),

г .к .

здесь отсутствует операция формирования модуля.

 

Выше рассматривался вопрос построения логической схемы

для

аргумента

X

, представленного в прямом коде.

 

Еоли для

изображения чисел в машине применяется обрат­

ный код или дополнительный, то логическая схема дополняется ойёрацией выделения тех разрядов, по которым определяется но­

мер подштервал.

 

 

 

 

 

 

Пусть

-

аргумент,

представленный в одном из кодов»

Тогда,в (5,28) выделив

t +

I разряд,

получим

 

A a , i ! - { В

М

Л

[ f м м 1 < ^ Ц < 5 . з о >

где

 

И

(«-<)

с - г

-(и-Ю

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-О -Ю

 

 

 

(WA =

 

 

 

 

 

 

 

 

 

г а -[н~(е*<)]

 

 

 

 

f, + I

 

( 7

 

“ т

J -

константа

выделения

разряда.

 

Определим размещение системы констак г в

памяти машины.

Обозначим

6

[ Л ]

=*

Г Х ]

. Тогда можно записать, что

[X] -

S x + CX3a

»

где [ Х ] ц - цифровые р.зряды tX J .

Отокда

 

 

 

 

 

 

 

 

A

 

 

 

 

+

 

 

(5.31)

- ( rx j,

Л c

+

*j+ ( m ) \ -


- 145 -

 

+ s ,

+ с т \

Для

* > 0

в н е *

S .-О, М ч * х - & | * | > DoM, ooquTM

деления получим

 

 

 

 

 

 

A c i j i - - Ы « | ^ &" , + ( N A ) i ,

что соответствует

(5.27). Отсюда номер зоны

 

 

Мзоны ( * > 0 >

=

( WA ) j . .

 

Для

ЗС<0 имеем S * =

I .

Номер подинтервала, оцененный

по

разрядам, будет цредотавлен в

обратном коде.

Поэтому пронумеруем подинтервалы в отрицательной облаоти в об­

ратном направлении. Из (5.21)

видно, что N зоны ( 16 < 0)

омещен на величину

в сторону увеличения адресов ва

счет сдвига знака чиола, т .е .

 

Nзоны (эс-«?) = ( WA)j +

Если функция аппроксимируется и в положительной, и в отрицатель­ ной области, то число подинтервалов равно 2К и

Acfji* * А а ^ с - о + 2 К А .

Если функция аппроксимируется только в положительной об­ лаоти, то следует применить логическую схему (5 .28); если толь­ ко в отрицательной области, то - (5 .30). Цри это*

A etjt»*= А О |(;-0 + КА .

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

( f , <3 ^1 , . . . , Gfj(pn>) данного | -го полинома в памяти ма-


-146 -

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

 

Пусть так кв', как и ранее,

по к

разрядам аргумента

будем определять номер подинтервала своей подзоны коэффициен­

тов.

Ячейки каждой подзоны условно пронумеруем, начиная с нуля, _

В нулевых ячейках разместим коэффициенты Qj)

. В следующих

старших номерах -

Ojz ,

 

. . . .

 

 

 

 

Так как номер подзоны соответствует номеру номеру под-

интервала д .определяется по

К

разрядам,

то для изображения

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

|

разрядов, следую­

щих после К -го разряда.

Ори этом число разрядов |

должно вы-

бжратьоя из условия

_

 

 

я

 

 

 

 

 

 

< p * 0 * V -

 

 

разрядов

 

СДвигая аргумент

&

вправо на Си-(К4 J )3

и обнуляя разряды

\

,

получим относительный адрес коэффициен»

та

d j u

 

 

 

 

 

 

 

 

 

Для прямого кода представления чисел,

если функция аппрок­

симируется и в положительной, и в отрицательной области в интер-"”

вале Ъ £ } X I < С

, можно запиоать, что абсолютный адрес

А а 1, . Ч ^ Г"

<' д а Ь { ч С,М,,!м% - ^ ] ч 4 . з 2,

где

 

f ^ (" 11j - ховстаята вядевеяяя ( 1 + 1 ) разряда

(выделяется также знаковый разряд).

Здесь N jcmmC ^X )) = ( # Л )| . .

Для отрицательного области выделения знаковый разряд даст поло­

жительное смещение.

Тогда

N

а о н ы (з б < о )= N A f +

Адреса коэффициентов с порядковыми номером ( I f I) мож­

но найтж из последовательности


- 147-

A ci*=• AQj(i-<) +■{ а

( 4 * 2 , 3 , . . . , р+<). (5.33) ;

Логическая схема, реализующая (5,32), может быть приме­ нена при аппроксимировании функции в положительной или отрица­ тельной области.

Выражение (5.32) и размещение констант полиномов в па­ мяти маиинП справедливо также и для машин, в которых *шсла Представляются в обратных или дополнительных кодах. Однако ну­ мерация подинтервалав в отрицательной области вдет в обратном направлении.

В логических охш ах, реализующих выражения (5.28), (5 .29), (5 .32), длинную операцию умножения иногда можно исклю­

чить, если величина Е> может быть представлена как ф* , Тогда число одвиговуменьшится на V. разрядов.

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

подинтервалы в

равномерные. При атом для прямого кода представ­

ления чисел

е ^ Ь, Рг ( =§ ^ ) Я (Н C ) + a )Oj ;

А

для обратного и дополнительного кодов

+ ( М ) , ■

При реализации повышенной точности вычислений полиномо­ выборочными алгоритмами показатели аффективнооти логической охеш (объем и быстродействие) остаются прежними, т .к . . Однако объем долговременной памяти, отводимый под конотаяты, увеличится в Q. раз для Q- -аначвой точности, т .е .

эв -ак(р*0.

Распределим одновначные олова по отдельным вонам в па-

*

 

 

 

 

 

 

-

148 -

 

идти машины,

а

I -в коэффициенты разместим согласно логичес­

кой охам (5,32)

а последовательности (5 .33). Тогда номера

вон

f

-X

олов будут;

 

 

 

 

 

для

ЗС > 0

 

 

 

 

 

 

 

 

 

NaOHbi(»P) =

 

 

+ ( ^ _1>

>

ЕЛЯ

ОС <0

 

 

 

 

 

 

 

 

и м

т о о - с м

) , + < f': , -<e*l>3+ o f-rti:(K < » « )A ]'>

 

(

*f

=

1,2 .........

 

&

) .

 

 

 

Логическая охема, согласно (5.32), реализует выражение

A a j M ‘ - f вЯЯ' -1* 4 ^

-

}

л

 

4 ( NA) i .

Старшие олова

 

L -х коэффициентов найдутоя из

 

 

 

А о ^ и »

A c i j < H i + <А.

 

Для младших слов

L -го

коэффициента имеем

/

 

 

 

A Oj ц , ; =

 

A

jUva -D + ( К о ,1) А .

 

 

5 .3 .

Выбор оптимального числа додинтервалов и

 

 

 

степени аппроксимирующего полинома

 

Для выбора оптимального числа подынтервалов оледует уста­

новить зависимость между числом подынтервалов

К , отепенью

аппроксимирующего полинома

Р

и абсолютной ошибкой аппрок­

симации

S

. Для этого данную функцию на каждом подинтер­

вале будем аппроксимировать интерполяционным полиномом Лаг­

ранжа. Выбор узлов интерполирования для получения наименьшей

ошибки произведем по методу Чебышева. Согласно

[б2] , ошибка

такой аппроксимации, не превышает значения

 

 

 

Sг

 

( 6 - о ) Р4<

(р+о

 

 

 

 

'(p+0!2aptl

Иl-Jntax D U ]

(5.34)


- 149 -

где D - верхняя граница подинтервала;

- нижняя граница подинтервала;

Р- степень полинома;

 

 

-

максимальная по модулю (

р + I) производ­

ная функции на

интервале аппроксимации

[a, 6] .

 

Бели интервал

[ А в ] , где

А

- верхняя граница

ин­

тервала, а

&

-

нижняя граница

интервала,

разбить на

К

подинтервалов,

то

 

 

 

 

 

 

&-А

 

 

Ь - а

к

 

 

(5.35)

 

 

 

 

 

 

Подотавив (5,35)

в

(5 .34), получим

 

 

 

8*оп »

■ i i S ~A ) (>_______ Г д .эд

'

(б*36)

 

3

(p+Oi г*** К * 4 Н^так1,

Отовда

 

 

 

_____________

 

 

 

 

 

&-Д

ы Гм\тях СА»6)

 

 

 

^

ЯВ

4

V 2 “*5|ол (р+1)!

 

 

Так как

число подинтерваяов не может бить не целим,

то екругля~

ем до большего целого. Тогда

 

 

 

 

 

 

 

 

f & B . B l

1

 

 

 

 

 

 

2'’5^*(p*i)'

J .

(5 .3 6 -а )

 

Значения

 

 

Г А, В]

для некоторых функций при-

ведены в

таблице 5.1.