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

(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) (7)

записи результатов. Первая задача решается использованием опера< тора организации цикла, например в регистре О - FLO. Вторая - использованием косвенной адресации. Один нз вариантов такой программы следующий (п = РО):

НПО ПД Fe" 1 + ИПД 1 -f Fin КПД FLO 00 С/П

В начале программы содержимое регистра счетчика О (при первом пуске п) переппсывается в регистр адресации РД - операторы ИПО ПД. Затем (операторы с адресами 01-09) вычисляется f{x). Оператор КПД обеспечивает запись f(x) в тот регистр, номер которого указан содержимым регистра Д. Оператор FLO обеспечивает возврат к началу программы (адрес 00) и уменьшение на 1 содержимого регистра 1. Циклы продолжаются, пока содержимое рег-ист-ра О не станет равным 0. Введя, например, п = 10, спустя минуту

счета получим /(1) =0,6201145. Извлекая из~регистров 2, 3.....9, А

другие значения f{x), получим: /(2) = 1,0283157, f(3) = 1,6622929, /(10) =7,6021501.

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

Следует обратить внимание на то, что в некоторых микрокалькуляторах первых выпусков нельзя но программе производить смену знака вычислений и заканчивать подпрограммы следующими операторами: Fsin, Fcos, Ftg, Farcsin, Farccos, Farctg, Fe, Fig, Fin, Fx\ F\/x, PV~, Рл, FIO и Fx". Если no условию задачи надо провести смену знака результата, то при умножении и делении это можно сделать, присвоив знак минус одному из сомножителей, либо делимому, либо делителю. Например, если надо вычислить число -а6 (а = РА, b - РЗ), то фрагмент программы должен быть ИПА /-/ ИПВ X или ИПА ИПВ /-/ Х- а не ИПА ИПВ X /-/. Отмеченные выше операции допустимо проводить перед засылкой результата в какой-либо неиспользованный регистр памяти (в том числе в регистр Y командой f).

Описанные в книге программы составлены с учетом этого ограничения с тем, чтобы они были пригодны для любых микрокалькуляторов дан.чого типа. В выпускаемых в дальнейшем микрокалькуляторах эти ограничения отсутствуют, что несколько упрощает составление программ. .

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



вычисляющие члены уравнений, которые не меняются от цикла к циклу. Полезно также нормирование уравнений и приведение их к возможно более простому виду.

1.5. Погрешности вычислений на микрокалькуляторах

Получаемый в результате вычислений результат у отличается от точного г/о. Абсолютная погрешность вычисления

А* = Д = \Уо - у\.

а относительная

6у = Ау1\уо\.

Поскольку значения уо не всегда заранее известны, иногда задают Ау независимо. Например, если Ау = ±2, то при = 5 имеем 5 -t 2 = 3 -г 7, а при уо = Ш у = 100 ± 2 = 98 102. Часто задают у числом верных знаков результата. Верными называют знаки, если представленный ими результат имеет абсолютную погрешность не более 1/2 младшего разряда. Например, если результат у = 50,0124 задан тремя верными знаками, то можно принять, что 49,95 <у < 50,05.

Поскольку результат вычислений микро-ЭВМ выдает с конечным числом знаков, ему всгда присуща погрешность округления. Обычно ео считают равной ±1 последнего разряда.

При вычислении элементарных и специальных функций наблюдается методическая погрешность. Она связана с тем, что такие вычисления проводятся разложением функций в ряд или непрерывную дробь с конечным числом членов. Отбрасываемые члены создают погрешность результата, оцениваемую остаточным членом R. Эта погрешность обычно зависит от аргумента х (см. табл. 1.4 для микрокалькуляторов Электроника БЗ-34).

При вычислении функций нескольких переменных у = ,= f(xi, Xi, Хз, х„) относительная погрешность вычисления

где Si - коэффициент чувствительности к относительному изменению б, 1-го параметра.

Погрешность, получаемая в результате проведения операций над приближенными числами, называется операционной погрешностью. Операционная погрешность арифметических операций равна сумме погрешностей чисел, над которыми проводятся эти операции. Существуют определенные правила уменьшения этой погрешности. Так, суммировать числа рекомендуется с меньших значений. При умножении следует умножать меньшее число на большее. Если промеху-точный результат при этом у< > 1, его надо умножить на меньшее



Таблица 1.4

Функция

Допустимые значения x

Максимальная относительная погрешность

sin я

ЫО-«</л/<1091г1>«Я)

3.10

cos X

I.I0-<9</;e/<I09 Г,ад)

3.10-7

1.10-99< X 1<109 (град)

3.10-7

arcsin X

(х<1

3-10-7

агссоад:

х<1

310-7

arctg X

1.10-9 < U1 < 9,9999999.109Э

3-10-7

х>0

1.10-6

UKlOOln 10

4.10-7

UKioJH

1.10-7

1 X 1 <9Э,999999

4-10-7

I/JC

X=fbO

1.10-7

х>0

1.10-*

In X

х>0

3.10-7

х>й

3.10-7

ИЗ оставшихся чисел, если yi < \, то надо умножить на большее. Операции умножения и деления целесообразно чередовать друг с другом, избегая переполнения операционного регистра X. Следует избегать вычитания близких чисел, так как результат может попасть в область машинного нуля, что может привести к большим погрешностям, например, нри последующем умножении даже на большое число.

Для уменьшения операционной погрешности полезно проводить преобразования функций с учетом отмеченных выше правил, Например, 1/= (а-f 6)2 -- а2 при 6<а следует представить в виде у = 2аЬ + 6, что позволит избежать вычитания близких чисел (а+ 6)2 и 6. К таким преобразованиям относится также нормирование уравнений, степенных полиномов и других функций, проводимое так, чтобы вычисления велись с числами, далекими от машинного нуля илн бесконечности.

1.6. Инструкция по вводу и пуску программ для микрокалькуляторов

1. Перед использованием программ следует внимательно ознакомиться с алгоритмом вычислений и правилами работы с программой.

2. Включив микрокалькулятор, переводим его в режим программирования, нажав клавиши F и ПРГ, затем вводим программу, нажимая указанные в нейклавиши.



(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)