Главная -> Книги (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) |
|