Содержание
- 2. 1. SPL-процесор
- 3. SPL-процесор має: пам‘ять SPL-програми, що моделюється глобальними даними: масив TCD (таблиця команд); adrnm- адреса головної програми,
- 4. Запис активації містить значення фактичних параметрів р1, р2,..., рn; кількість параметрів n; адреса повернення в TCD
- 5. Стек ST sp t Нехай викликаються функції main, р0, р1 Тоді стек st має вигляд: 1)
- 6. Звертанння до глобальних змінних: st[k], k=0,1,…,cgv-1; Доступні також локальні дані, які знаходяться в верхньому запису активації:
- 7. Файл protot.h має опис кодів команд та структури команди SPL–процесора: enum {OPR=1,LIT,LDE, LDI, STE, STI, CAL,
- 8. Коди операцій: OPR — виконати операцію а над вершиною стеку; LIT — завантажити в стек константу
- 9. У команді з кодом OPR допустимі операції: а = 1 – ввести в стек число з
- 10. 2. Виконання SPL-програми interp() – починає та завершує виконання SPL-програми, а також здійснює загальне керування. comman()
- 11. // interp - початок: основний цикл //та завершення iтерпретацiї void interp(void) { int i; t=-1; puts("SPL:
- 12. // comman - виконання команди TCD[p] void comman(void) { int a=TCD[p].opd; switch(TCD[p].code) {case OPR: operat(a); break;
- 13. // operat -виконання операцiї а // над вершиною стека void operat( int a) { int j=t-1;
- 14. // push - занесення в стек значення a void push(int a) { if(t>=499) error1("переповнення стеку st
- 15. 3. Алгоритм створення SPL-програми Оператори мови SPL переводяться в проміжний код за таким принципом: f(p1, p2,…,pk)
- 16. Оператори мови SPL переводяться в проміжний код за таким принципом: Оператор присвоєння d=е, де d —
- 17. 4. Приклад проміжного коду для SPL програми main ( ) begin int x, у; read x;
- 18. main ( ) begin int x, у; read x; read y; print exp(x, y) end exp
- 19. main ( ) begin int x, у; read x; read y; print exp(x, y) end exp
- 20. 5. Розробка компілятора SPL для платформи . NET
- 21. Програмна модель
- 22. Запуск і виконання програми > SimpleCompiler.exe test.spl > %Windir %/microsoft.net/Framework/v4.0.30319/ilasm test.il
- 24. Скачать презентацию