Зміст
Введення
Аналіз
Блок-схема основної програми.
Лінійна схема основної програми.
Верифікація
. Без розгалужень
. З розгалуженням
. Циклу
Мережі Петрі.
Операційна семантика
Висновок.
Додаток. Лістинг програми
Введення
Підпрограма перетворення 128-розрядного СЧ в УЧ.
Аналіз
В остаточній версії програми реалізовано введення з клавіатури числа, довжиною не більше 128 символів, перевірка його на коректність введення, перетворення з символьного подання до УЧ, розміщення отриманого числа у виділеній оперативної пам'яті.
Tabl db '0123456789 ' - таблиця для перевірки коректності введення даних
flag db 0 - штучний прапор
dlina_1 db 0 - зберігає довжину числа dw 0 - буфер_SEG1 dw 0 - зберігає адресу блоку виділеної ОП для числа
Блок-схема основної програми
В
Лінійна схема основної програми
. СТАРТ (x)
// x - число, введене з клавіатури
. ЯКЩО P (x), то на 2, інакше на 4
2. x1 = f1 (x)
3. x2 = f2 (x1)
. СТОП (x2)
Розшифровка символів, що використовуються в даній схемі:
Змінні:
x, x1, x2.
Функціональні символи:
- операція переведення числа у внутрішнє представлення
- операція переказу в УЧ
предикатні символи:
P - Якщо числа введені коректно
Спеціальні символи:
старт, стоп, якщо.
Аксіоматична семантика
Множини
Z-безліч цілих чисел
- безліч регістрів
В
безліч міток
В
Операції
+ скласти
відняти
нерівно
= дорівнює
: = привласнити
виконати дії за стрілкою, якщо виконуються умови до стрілки
@ звернутися за адресою
() в...