From 6c933934adaae3145e0b0367e73a5db4399211a8 Mon Sep 17 00:00:00 2001 From: Andrey <32461227+Druchik@users.noreply.github.com> Date: Sun, 16 Sep 2018 19:43:24 +0300 Subject: [PATCH] Create README.md --- README.md | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..4f7f707 --- /dev/null +++ b/README.md @@ -0,0 +1,36 @@ +## LR-1 +Программная реализация LR(1) - разбора + +### Первоначальная грамматика языка +``` + - аксиома +::= ad|ac +::= b|b +::= f|f +``` + +### Преобразованная грамматика под LR(1) + +1. S::=1a2X3 +2. X::= 2A4d5 +3. X::= 2B6c7 +4. A::= 2,8b8A9 +5. A::= 2,8Λ2,8 +6. B::= 2,9f9B10 +7. B::= 2,9Λ 2,9 + +> Λ - означает пустую строку + +### Таблица + № | S | X | A | B | a | b | c | d | f | $ | +---|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:| +1 |***ДОПУСК***|ошибка|ошибка|ошибка|**Shift 2**|ошибка|ошибка|ошибка|ошибка|ошибка| +2 |ошибка|**Shift 3**|**Shift 4**|**Shift 6**|ошибка|**Shift 8**|ошибка|ошибка|**Shift 9**|ошибка| +3 |ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|**Reduction 1**| +4 |ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|**Shift 5**|ошибка|ошибка| +5 |ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|**Reduction 2**| +6 |ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|**Shift 7**|ошибка|ошибка|ошибка| +7 |ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|**Reduction 3**| +8 |ошибка|ошибка|**Shift 9**|ошибка|ошибка|**Shift 8**|ошибка|**Reduction 5**|ошибка|**Reduction 5**| +9 |ошибка|ошибка|ошибка|**Shift 10**| ошибка|ошибка|**Reduction 7**|**Reduction 4**|**Shift 9**|**Reduction 4**| +10 |ошибка|ошибка|ошибка|ошибка|ошибка|ошибка|**Reduction 6**|ошибка|ошибка|**Reduction 6**|