Главная -> Книги

(0) (1) (2) (3) (4) (5) (6) ( 7 ) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (21) (22) (23) (24) (25) (26) (27) (28) (29) (30) (31) (32) (33) (34) (35) (36) (37) (38) (39) (40) (41) (42) (43) (44) (45) (46) (47) (48) (49) (50) (51) (52) (53) (54) (55) (56) (57) (58) (59) (60) (61) (62) (63) (64) (65) (66) (67) (68) (69) (70) (71) (72) (73) (74) (75) (76) (77) (78) (79) (80) (81) (82) (83) (84) (85) (86) (87) (88) (89) (90) (91) (92) (93) (94) (95) (96) (97) (98) (99) (100) (7)

нормирования частоты, если нормировать исходный многочлен делением всех его коэффициентов иа коэффициент а„, вычислить многочлен Ао {р)=А(р) - -ао с нулевым коэффициентом при нулевой степени р, а затем дополнительно вычислить А(р) =Ао{р) +ао.

Программа 6. Вычисление нормированного (а„=1) многочлена Ао (р) = ==Л(р)-flo степени п14(«<16 для ЯМК52) вещественного аргумента р = а

t t t КИПО + X ИПО 1 - х=0 03 4- С/П

Инструкция, (ai = Р1, aj = Р2, . .., а„ , = Р(« - 1)) « РО, о = = РХ В/О С/П РХ = Ао{а)\ / « 3(п - 2)с.

Пример. Для многочлена Л(2) = р" + 13р" + 12pi2 i ipu ЮрЮ + gs + 8р8 7р7 бр* + 5р*+4р* + Зр* + 2р2-f-р + 0,5, вычислив многочлен Д,(2) =. 212994, иаходйм Л(2) = Л„(2) -f 0,5 = 212994,5.

Максимальную степень многочлена можно увеличить, если вводить коэффициенты при старших степенях р перед каждым пуском программы.

Программа 7. Вычисление многочлена А{р) степени «<13 {«<14 для ЯМК52) вещественного аргумента р - а

X Вх КИПД + ИПД 1 - ПД X КИПД + ИПД х=0 06 + С/П

Инструкция. (ао = РО. ai = Pl, ..., а„ , = Р(га - 1)) « - 1 = РД, a„ = PY, а = РХ В/О С/П РХ = /1(а); t3{n~l)c. Для ЯМК52 заменить в программе обращения к регистру Д соответствующими обращениями к регистру Е.

. Пример. А{2) = 13р" + 12р«2 + 11р" + Юр" + 8р8 + 7р + 6р«+5р* + Р*+ + Зр» 4- 2р2 4- р + 0,5 = 196610,5(/ 34 с).

Программа 8. Вычисление многочлена А{р) степени «<:14 («<15 для ЯМК52) вещественного аргумента р = а

t X 4- X КИПД + ИПД 1 -ПД X КИПД -f ИПД х=0 08 С/П

Инструкция. (а„ = РО, 01 = Р1, .... а„ 2 = 2)) « - 2 = РД, а„ 1 = PZ, а„ = PY, а = РХ В/О С/П РХ = А(а)\ t « 3(«-2)с. Для ЯМК52 при п<\Ъ заменить в программе обращения к регистру Д соответствующими обращениями к регистру Е.

Пример. А{2) = 14р" + 13р>з + 12р«2 + ПрИ ЮрЮ + 9р» + 8р8 4- 7р 4-4- 6р« 4- 5рб 4- 4р*4-3рз 4- гр!! 4- р 4- 0,5 = 425986,5 (t » 33 с).

Программа 9. Вычисление нормированного (Оп = 1) многочлена Л(р) степени «<15 (о<16 для ЯМК52) вещественного аргумента р = а

t 4- Вх X 4- X КИПД + ИПД

1 - ПД X КИПД 4- ИПД х=0 10

С/П

Инструкция. (00 = РО. 01 = Р1..... о„ з = Р(«-3)) п - 3 = РД,

а„ 2 = PZ, а„ , = PY, а = РХ В/О С/П РХ = Л(а); i«3(n-2) с. Для ЯМК52 при п<16 заменить в программе обращения к регистру Д соответствующими обращениями к регистру Е.



Пример. Л(2) = р" + 14р" + 13р" + 12р" + Ир» + Юр" + 9р* + 8р8 + -f 7р + 6р« + 5р* + 4р* + Зрз + 2р2 4- р + 0,5 = 458754,5 (г;35 с).

Программа 10. Вычисление нормированного (а„ = ао=1) многочлена Ао{р) степени «<16 (га<:17 для ЯМК52) вещественного аргумента р=а t + BxX + XT КИПО + X ИПО 1 - х=0 08 - 1 + С/П

Инструкция. (fli = Р1, Р2, .... а„ з = Р(«-3)) п - 2=Р0, а„ 2 = PZ, а„ , = PY, а = РХ В/О С/П РХ = /1„(а); s; 3{«-2)c.

Пример. А{2) = р" + 15р» + 14р* + 13р" + 12р" + lip" + Юр" + 9р» + + 8р8 7р7 бр« -f- 5р5 + 4р< + Зрз + гр" + Р + 1 = 983043 (t 33 с).

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

Программа П. Вычисление многочлена А{р) степени «<13 {«<14 для ЯМК52) вещественного аргумента р = а с минимальным временем счета

t t ИПД X ипс + X ипв + X

ИПА -f X ИП9 + X ИП8 -f X ИП7

+ X ИП6 + X ИП5 -h X ИП4 +

X ИПЗ -f X ИП2 -f X ИП1 + X ИПО + С/П БП 00

Инструкция. Для ЯМК52 при «=14 заменить в программе операторы ИПД X фрагментом ИПЕ X ИПД -Ь X; в остальных случаях для уменьшения времени счета устранить обращения к регистрам памяти, предназначенным для хранения отсутствующих при «<13 коэффициентов, и следующие за ними операторы -4- X (в противном случае ввести нули вместо отсутствующих коэффициентов) ;

(flo = РО, fli = Р1, ..., а„ = Р«) а = РХ (В/О) С/П РХ = /1(а); t {2 + п)с.

Пример. А{2) = 13р1з + 12р" + Ир» + Юр» + 9р» + 8р» + 7р + 6р« + + 5р5+4р* +3p3 + 2p2-f р + 0,5 = 196610,5 {t 14 с).

Программа 12. Вычисление нормированного (а„ = 1) многочлена А{р) степени п<14 (п<15 для ЯМК52) вещественного аргумента р = а

t t ИПД -f X ипс + X ипв +

X ИПА + X ИП9 + X ИП8 + Х

ИП7 + X ИП6 + X ИП5 + X ИП4

+ X ИПЗ + X ИП2 + X ИП1 +

X ИПО + С/П БП 00

Инструкция. Для ЯМК52 при «=15 заменить в программе ИПД фрагментом ИПЕ 4- X ИПД; при «<14 для уменьшения времени счета устранить фрагменты вида HYIN + X, соответствующие старшим отсутствующим коэффициентам (в противном случае в регистры N занести нули); (а" = РО, fli =Р1, • , = Р(п-1)) а = РХ (В/О) С/П РХ = /1(0); as (2 + п)с



Пример. Л(2) = р"+ 13р1з . 12р+ 11р"+ 12р" + llpii+ lOpi" + 9р»+ + 8р8 + 7р + 6р» + 5рб + 4р* + Зрз 4- 2р2 + р 4- 0,5 = 212994,5 (t 13 с).

Предельную степень вычисляемых многочленов можно увеличить еще иа Одну или две единицы с помощью приемов, используемых в программах 6-10. Достаточно общий способ вычисления многочленов высокой степени заключается в их представлении формулой

А(р)= (...4-а„ + , р4-ап)р4- а„ 1 р"~ + . .4-aiP4-ao (1-8)

с вычислением выражения в скобках, принимаемого в качестве коэффициента йп при вычислении оставшейся части многочлена.

1.5. Операции над комплексными числами и векторами

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

Комплексное число А представляют в алгебраической, тригонометрической или показательной форме

Л = КеЛ + 1тЛ=Ие=е"1+-\ где ЯеА и 1тА - вещественная и мнимая составляющие комплексного числа; Л и q)A = argy4 - его модуль и аргумент.

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

КеЛ= /lcosq)A, 1п1Л= /lsin(pA, легко реализуемые на ПМК.

Преобразование алгебраической формы комплексного числа в тригонометрическую несколько сложнее: ПМК вычисляют обратные тригонометрические функции в интервале (-я/2, я/2), а аргумент комплексного числа определен в интервале (О, 2я) или (-я, я). Поэтому если модуль комплексного числа вычислен по формуле

\А\ = ККеМ + ImM, то для вычисления (рл могут быть использованы различные выражения, среди которых наиболее удобно отношение

Ф.4 =

arccos (Re А/А\) при Im А>0, -arccos (Re Л/[Л) при Im Л<0.

В соответствии с этим отношением для определения аргумента в интервалах (0,2я) и (-л, я) приходится использовать различные программы.

Программа 13. Преобразование комплексного числа А из алгебраической формы в тригонометрическую с определением в интервале [ О, 360° [, [О, 400 град [ или [О, 2я рад [

П7 П6 х" 4- / П8 ИП6

C0S-1 П9 ИП7 х<0 23 1 sin-i 4 X

ИП9 - П9 ИП9 ИП8 С/П



(0) (1) (2) (3) (4) (5) (6) ( 7 ) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (21) (22) (23) (24) (25) (26) (27) (28) (29) (30) (31) (32) (33) (34) (35) (36) (37) (38) (39) (40) (41) (42) (43) (44) (45) (46) (47) (48) (49) (50) (51) (52) (53) (54) (55) (56) (57) (58) (59) (60) (61) (62) (63) (64) (65) (66) (67) (68) (69) (70) (71) (72) (73) (74) (75) (76) (77) (78) (79) (80) (81) (82) (83) (84) (85) (86) (87) (88) (89) (90) (91) (92) (93) (94) (95) (96) (97) (98) (99) (100)