diff options
| Commit | c901e9571bd128d6ffc1ba92d379fea01366a50f (patch) | |
|---|---|---|
| Author | 2024-03-25 19:03:24 +0200 | |
| Committer | 2024-03-25 19:03:24 +0200 | |
| Files | a08b7844eb207b24f4bf4de5b51403da2d38dde2 | |
| uni-projects-c901e9571bd128d6ffc1ba92d379fea01366a50f.tar uni-projects-c901e9571bd128d6ffc1ba92d379fea01366a50f.tar.gz uni-projects-c901e9571bd128d6ffc1ba92d379fea01366a50f.zip | ||
| Parent | d98103a75e7003b1c98a2de37a0bb5f99aa1bbc0 (diff) | |
[CI] Added old notes
2 files changed, 102 insertions, 0 deletions
| -rw-r--r-- | Year 3/Compilers, Introduction/Exam.txt | 76 | ||||
| -rw-r--r-- | Year 3/Compilers, Introduction/Homework07.txt | 26 |
diff --git a/Year 3/Compilers, Introduction/Exam.txt b/Year 3/Compilers, Introduction/Exam.txt new file mode 100644 index 0000000..1248364 --- /dev/null +++ b/Year 3/Compilers, Introduction/Exam.txt @@ -0,0 +1,76 @@ +# 1 + + +if 0 then + 1 if 1 = 0 then 0 else 1 fi +else { + 0 <- 1 + 1 +} +fi + +резултат +аргумент * 3 +контролна връзка +обратен адрес +временна * 1 + +4 * 7 = 28 + +if flag then { + if =0 then a + else b +} +else { + ... +} + +if a then b else c + +beq a +label-true: +label-false: +end-if: + + +# 2 + +d? + +# 5 + + + { y, z, i, j } + 1. k := i + j + { y, z, k } + 2. x := k * 10 + { y, z, x } + 3. if x > z goto line 7 + { y, z } + 4. x := z - y + { y, x, j } + 5. f := x * j + 6. goto line 10 + { x, y, f, j } + 7. x := y + 1 + { x, y, f, j } + 8. i := j + { x, y, f, j } + 9. j := j + 2 + { x, y, f } +10. y := f * 2 + { x, y } +11. a := x + y + { x, y } +12. if x = 0 goto line 7 + +# 6 + + +нека O е типовата среда: функция от имена на променливи към техните типове +M(T, f) = (T 1 , T 2 , …, T n , T n+1) означава, за обект от тип T може да се извика метод f с + + +● O: типизира обектите +● M: типизира методите +● C: класа в който се намира изразът diff --git a/Year 3/Compilers, Introduction/Homework07.txt b/Year 3/Compilers, Introduction/Homework07.txt new file mode 100644 index 0000000..181b3ad --- /dev/null +++ b/Year 3/Compilers, Introduction/Homework07.txt @@ -0,0 +1,26 @@ +# Задача 1 + +main +| \ +fib(4) out_int(fib(3)) +| +| \ \ +valcomp(4,2) fib(3) fib(2) +4<=2 | \ \ | \ + valcomp(3,2) fib(2) fib(1) valcomp(2,2) sing() + 3<=2 | \ | \ + valcomp(2,2) sing() valcomp(1,2) sing() + 2<=2 1<=2 + +наледници: 3 +дълбочина: 5 +отг. е) + +# Задача 2 + +15 +d. + +# Задача 3 + + |
