Доставка цветов в Севастополе: SevCvety.ru
Главная -> Появление первого микропроцессора

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 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116

Окончание табл. 4.2

10==0.1000- \(f

10==-0,1000-10

10"=0,1000.10"

51С350 1

D13CB0

629504

0,5°лг0,9766-10 378000 (0,1248)«0,4715-10- 2BFD2A (0,9731)" да 0,7209-10° 40В894

4.4. полином

Полином y=Sa,-х определен на множестве всех

действительных чисел х, а,- и изображается на графике кривой без особых точек и без асимптот, причем кривая имеет не более п точек пересечения с осью абсцисс, не более п- 1 экстремумов и не более п - 2 точек перегиба. Конкретный вид кривой существенно зависит от значений п, ai и X. Например, если а,= 1 для всех i, то графики полиномов любой степени подобны графикам степенной функции, но с иным размещением относительно начала координат и с дополнительной деформацией ординат.

Программа ПОЛИН вычисляет значение полинома по схеме Горнера [см. формулу (3.2) ]:

18Е0 ORG 18Е0И

1220 УДПЗЗ БЕТ 1220Н

1000 СДПЗЗ set ЮООН

ООАЗ ОБНЗ set ОАЗН

0ОБ8 ПМЗ set 0В8Н

ПОЛИН:

гПОДПРОГРАММА ВЫЧИСЛЕНИЯ ПОЛИНОМА СТЕПЕНИ N (N<256): ;Р(X)=А(N)»X»*<N)+А(N-1)*X*»(N-1)+...+A(1)»X+A(0). гВХОДНЫЕ ПАРАМЕТРЫ:(ВтЕ)-НАЧАЛЬНЫЙ АДРЕС МАССИВА КОЭФФИ-г«ИЕНТОЕ ПОЛИНОМА А(0),А(1)г...»А(М)гПРЕДСТАВЛЕННЫХ в гВИДЕ ДВОИЧНЫХ 3-БАЙГНЫХ ЧИСЕЛ в ДОПОЛНИТЕЛЬНОМ КОДЕ С гПЛАВАЮШЕИ ЗАПЯТОЙ»(H»L)-АДРЕС АРГУМЕНТА X »ПРЕДСТАВЛЕН-гНОГО в АНАЛОГИЧНОМ ВИДЕ,(А)-ПОКАЗАТЕЛЬ СТЕПЕНИ N ПОЛИ-гНОМА в ФОРМАТЕ «ЕЛОЧИСЛЕННОГО БЕЗЗНАКОВОГО ДВОИЧНОГО гЧИСЛА.РЕЗУЛЬТАТ в ВИДЕ 3-БАЙТНОГО ДВОИЧНОГО ЧИСЛА С гПЛАВАЮШЕЙ ЗАПЯТОЙ ПОМЕШАЕТСЯ Б ОБЛАСТЬ ПАМЯТИ "БУФЕР". гВНХОДНОЙ ПАРАМЕТР!СУ=1-ПРИЗНАК ПЕРЕПОЛНЕНИЯ ИЛИ АНТИ-гПЕРЕПОЛНЕНИЯ ПОРЯДКА РЕЗУЛЬТАТА.ИСПОЛЬЗУЕТСЯ ДОПОЛНИ-гТЕЛЬНО 3-БАйТНАЯ РАБОЧАЯ ОБЛАСТЬ ПАМЯТИ "БУФД".

гйспользуютсл все гпчстисш-тттся (в,е) . (h.d г (а) ,

гГЛУБИНА СТЕКА-26.ИСП0ЛЬЗУЮТСЯ ПОДПРОГРАММЫ:«УДПЗЗ*» г»К0МЗ* » »0БНЗ*,»УДФ17*»*НМАН2*,»СДПЗЗ»1*0БМЗ*,*ДМАН2» » г *ПМАН2»,*ПМЗ*.«ДОПВ»,*Д0ПД* » «У32Б» » »У24А». гОЦЕНКА!ДЛИНА-81 БАЙТ (+475 БАЙТ ПОДПРОГРАММ) »ВРЕМЯ~НЕ гБОЛЕЕ (2P34+4P47»N) ТАКТОВ (С УЧЕТОМ ПОДПРОГРАММ).

г»***»»*»*»»»»»»»»»»»***»****»*»*»»»»***»*»****»»**»*»*»

гСОХРАНЕНИЕ РЕГИСТРОВ 18Е0 D5 push II гСОХРАНЕНИЕ АДРЕСА КОЭФФИЦИЕНТОВ

18Е1 Е5 PUSH Н гСОХРАНЕНИЕ АДРЕСА АРГУМЕНТА



18Е2 F5

PUSH

гСОХРАНЕНИЕ СТЕПЕНИ ПОЛИНОМА

18ЕЗ F5

PUSH

гСОХРАНЕНИЕ СЧЕТЧИКА ЦИКЛОВ

ГОБНУЛЕНИЕ ОБЛАСТИ РЕЗУЛЬТАТА (ЧАСТИЧНОЙ СУММЫ)

18Е4 Е5

PUSH

18Е5 213119

HtБУФЕР

18Е8 СГРАЗОО

CALL

ОБНЗ

18ЕВ El

! ПРОВЕРКА КОНЦА ЦИКЛА

18ЕС Fl

ЦИКЛ: POP

гВОССТАНОВЛЕНИЕ СЧЕТЧИКА ЩЖЛОВ

18EC В7

гПРОЯВЛЕНИЕ СОСТОЯНИЯ СЧЕТЧИКА

18EE CA1E19

ПЕР1

гЕСЛИ СЧЕТЧИКО

18F1 3D

18F2 F5

PUSH

гСОХРАНЕНИЕ СЧЁТЧИКА ЦИКЛОВ

?АДРЕСАЦИЯ ОЧЕРЕДНОГО КОЭФФИЦИЕНТА В МАССИВЕ

18F3 D5

PUSH

гСОХРАНЕНИЕ АДРЕСА МАССИВА

18F4 e5

PUSH

гСОХРАНЕНИЕ АДРЕСА АРГУМЕНТА

18F5 ЗС

18F6 0600

B>0

18F8 4F

C»A

г(ВгС)-ИНДЕКС МАССИВА

18F9 ЕВ

XCHG

г(Н»Е)-АДРЕС МАССИВА

18FA 09

18FB 09

18FC 09

г(Н»Е)-АДРЕС КОЭФФИЦИЕНТА

гСЛОЖЕНИЕ КОЭФФИЦИЕНТА

С ЧАСТИЧНОЙ СУММОЙ В "БУФЕРЕ"

leFD 113419

В.БУФД

г(D.E)-АДРЕС "ЕУФД"

1900 CDB800

CALL

гПЕРЕМЕЩЕНИЕ СЛАГАЕМОГО В "БУФД"

1903 ЕВ

XCHG

г(Н.Е)-АДРЕС "ЕУФД"

1904 013119

В» БУФЕР

г(Б.С)-АДРЕС ЧАСТИЧНОЙ СУММЫ

1907 CD0010

CALL

СДПЗЗ

гРЕЗУЛЬТАТ В "БУФЕРЕ"

190А DA1819

ПЕР2

гЕСЛИ ОШИБКА ПОРЯДКА

SУМНОЖЕНИЕ ЧАСТИЧНОЙ СУММЫ НА АРГУМЕНТ

190D El

г(Н.Е)-АДРЕС АРГУМЕНТА

190Е CD2012

CALL

УДПЗЗ

гРЕЗУЛЬТАТ в "БУФЕРЕ"

1911 ГРА1919

ПЕРЗ

гЕСЛИ ОШИБКА ПОРЯДКА

1914 Dl

гВОССТАНОВЛЕНИЕ АДРЕСА МАССИВА

1915 СЗЕС18

ЦИКЛ

гЗАЦИКЛИВАНИЕ

гОКОНЧАНИЕ ПОДПРОГРАММЫ ПРИ ОШИБКЕ ПОРЯДКА

1918 El

ПЕР2! POP

г БАЛАНС СТЕКА

1919 Dl

ПЕРЗ: POP

г БАЛАНС СТЕКА

191A Dl

г БАЛАНС СТЕКА

191B C32C19

ПЕР4

гСЛОЖЕНИЕ КОЭФФИЦИЕНТА

А(0) С ЧАСТИЧНОЙ СУММОЙ

191E 013119

ПЕР1: LXI

ВтБУФЕР

г(В.С)-АДРЕС ЧАСТИЧНОЙ СУММЫ

1921 EB

XCHG

г(Н»Е)-АДРЕС МАССИВА

1922 113419

В.БУФД

г(D.E)-АДРЕС "БУФД"

1925 aPB800

CALL

гПЕРЕМЕШЕНИЕ КОЭФФИЦИЕНТА В "BYi„

1928 EB

XCHG

г(H.L)-АДРЕС "БУФД"

1929 CDOOlO

CALL

СДПЗЗ

гРЕЗУЛЬТАТ В "БУФЕРЕ"

гВОССТАНОВЛЕНИЕ РЕГИСТРОВ

192C CI

ПЕР4: POP

гВОССТАНОВЛЕНИЕ ПОКАЗАТЕЛЯ

192D 78

г(А)-ПОКАЗАТЕЛЬ СТЕПЕНИ ПОЛИНОМА

192E El

гВОССТАНОВЛЕНИЕ АДРЕСА АРГУМЕНТА

192F Dl

гВОССТАНОВЛЕНИЕ АДРЕСА МАССИВА

1930 C9

гС¥=1.ЕСЛИ ОШИБКА ПОРЯДКА



1931 1934 0000

jOBJIACTb РЕЗУЛЬТАТА (ЧАСТИЧНОЙ СУММЫ) БУФЕР: DS 3 !3 БАЙТА

БУФД: DS 3 ?3 ЕАИТА

Показатель степени полинома п перед работой программы записывают в аккумулятор, коэффициенты полинома ао, а\, Un в виде трехбайтных чисел с плавающей запятой размещают последовательно в области памяти, начальный адрес которой задается в регистровой паре (D, Е), а значение аргумента-в область памяти по адресу, указываемому в регистровой паре (И, L). В процессе работы программы дополнительно используются две трехбайтные области памяти БУФЕР и БУФД: первая используется для временного хранения вычисляемой частичной суммы полинома, вторая - для временного хранения очередной цифры. При переполнении или антипереполнении порядка результата в программе устанавливается признак переноса CY= 1. В этом случае результат ошибочен. Максимальное время работы программы рассчитано для наихудшего случая, когда все а, Ф 0.

В качестве тестового примера выполним вычисление полинома Р{х) = ах-\-а2Х-\-а\х-\-ао = х + Зд: - - 2х-\-\. В табл. 4.3 приведены соответствующие тестовые данные, а на рис. 4.4 - график полинома.

-0,6 ф -OA -0.J -0.2 -0.1 0

0,1 0,2 0.3 0,4 0.3 0.6 X

Рис. 4.4. График полинома



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 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116



0.0194
Яндекс.Метрика