2.Практична частина
Під час складання програми обчислення для заданих значень , щоби не виконувати операцію ділення, значення приймемо, як константу.
Тоді програма повинна реалізувати дві арифметичні дії – множення і додавання .
Рекомендується програму перемноження двох однобайтових додатних чисел оформити підпрограмою (ПП), як і програму часової затримки. Підпрограми множення, часової затримки приведені в таблиці 1, 2 відповідно. Результати обчислення значень представляти цілими однобайтовими числами з врахуванням знака, тобто, не більшими, ніж . Від’ємні числа представляти доповняльним двійковим кодом, який утворюється додаванням одиниці до наймолодшого розряду оберненого двійкового коду. Оскільки згідно з завданням значення можуть бути від’ємні, то в програмі необхідно передбачити утворення доповняльного коду від’ємних чисел.
Тривалість часової затримки обчислювати як , де - тривалість обчислення значень . Затримку організувати програмно.
У програмі передбачити також індикацію значень та обмеження його значень до .
2.1. Програма роботи та завдання.
2.1.1. Для заданого згідно з варіантом завдання (табл. 35) скласти алгоритм та програму роботи цифрового інтегратора в реальному маcштабі часу при поданні на його вхід послідовно значень і через проміжки часу і і реалізувати її. Чергові значення видавати на індикацію .
2.1.2. У звіті нанести завдання, вихідні дані, блок-схему алгоритму та пояснення до нього, програму, таблицю результатів обчислень та графіки .
Таблиця завдань 1.
Парам |
|
|
|
|
|
|
|
|
|
|
Варіант |
||||||||||
1 |
0 |
100 |
10 |
20 |
-20 |
20 |
50 |
40 |
2 |
10 |
2 |
5 |
110 |
20 |
10 |
-5 |
24 |
42 |
21 |
3 |
5 |
3 |
7 |
90 |
30 |
15 |
-30 |
40 |
60 |
32 |
4 |
15 |
4 |
1 |
95 |
20 |
10 |
-10 |
42 |
20 |
80 |
2 |
10 |
5 |
-10 |
87 |
16 |
24 |
-8 |
20 |
30 |
100 |
5 |
8 |
6 |
6 |
105 |
12 |
24 |
-12 |
12 |
18 |
120 |
3 |
12 |
7 |
-7 |
70 |
12 |
18 |
-24 |
36 |
80 |
64 |
4 |
6 |
8 |
0 |
115 |
20 |
30 |
-10 |
20 |
120 |
18 |
2 |
10 |
9 |
2 |
120 |
24 |
12 |
-12 |
40 |
80 |
60 |
5 |
12 |
10 |
-12 |
91 |
24 |
16 |
-8 |
44 |
72 |
120 |
4 |
8 |
11 |
10 |
93 |
14 |
28 |
-7 |
21 |
24 |
30 |
3 |
7 |
12 |
4 |
105 |
24 |
0 |
-36 |
10 |
20 |
22 |
2 |
4 |
13 |
3 |
97 |
18 |
42 |
0 |
12 |
12 |
16 |
4 |
3 |
14 |
0 |
89 |
36 |
54 |
-12 |
9 |
12 |
8 |
3 |
6 |
15 |
2 |
99 |
18 |
40 |
-16 |
5 |
4 |
10 |
1 |
2 |
16 |
5 |
120 |
30 |
0 |
-25 |
15 |
9 |
12 |
3 |
5 |
17 |
-3 |
119 |
12 |
24 |
0 |
20 |
5 |
4 |
1 |
3 |
18 |
-6 |
96 |
10 |
10 |
-10 |
60 |
90 |
60 |
3 |
10 |
19 |
0 |
89 |
32 |
0 |
-8 |
10 |
4 |
20 |
2 |
4 |
20 |
1 |
100 |
21 |
48 |
-14 |
20 |
15 |
20 |
5 |
7 |
21 |
40 |
105 |
20 |
40 |
-60 |
40 |
36 |
44 |
4 |
20 |
22 |
50 |
92 |
30 |
33 |
-18 |
6 |
8 |
20 |
2 |
3 |
23 |
31 |
80 |
50 |
0 |
-10 |
20 |
4 |
10 |
2 |
5 |
24 |
-20 |
60 |
60 |
72 |
-18 |
9 |
9 |
10 |
1 |
12 |
25 |
-10 |
120 |
70 |
77 |
-21 |
9 |
12 |
33 |
3 |
4 |
26 |
96 |
121 |
95 |
76 |
-38 |
10 |
15 |
20 |
5 |
19 |
27 |
-7 |
103 |
42 |
60 |
-36 |
10 |
5 |
20 |
1 |
6 |
28 |
12 |
90 |
36 |
60 |
0 |
8 |
12 |
10 |
2 |
4 |
1
2
3
4
5
Вивід
R0
6
де Ro- регістр для зберігання , R1- регістр для зберігання обчисленого значення , R2 , R3 - регістри для зберігання К1 і К2 , R4 – регістр для зберігання проміжного результату.
,
.
.
Додавання багатобайтових чисел.
Однобайтове число – це сім війкових розрядів числа і один знаковий розряд, тому максимальне однобайтове число це ±127D. Більші числа представляються як багатобайтові і додаються побайтно, починаючи з наймолодшого байта, командою, наприклад, ADD R – додавання без перенесення, а всі наступні байти – ADC R, як це показано на прикладі, що наведений нижче.