Skip to content

Commit d48b3f2

Browse files
committed
docs: 📚 add my task
1 parent 31cae6f commit d48b3f2

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

README.md

+21
Original file line numberDiff line numberDiff line change
@@ -1 +1,22 @@
11
# CSA Lab 3
2+
3+
### Вариант:
4+
5+
`alg -> asm | stack | harv | hw | tick -> instr | struct | stream | port | pstr | prob2 | cache`
6+
7+
Я делаю:
8+
9+
`alg | stack | harv | hw | tick | struct | stream | port | pstr | prob2`
10+
11+
| Задание | Вариант | Описание |
12+
| --- | --- | --- |
13+
| **Язык программирования. Синтаксис** | `alg` | **Синтаксис языка должен напоминать java/javascript/lua**. Должен поддерживать математические выражения. В тестах необходимо осуществить проверку AST (абстрактного синтаксического дерева, полученного в процессе трансляции). |
14+
| **Архитектура** | `stack` | Система команд должна быть **стековой**: вместо регистров используется стек; это не исключает и не заменяет наличие памяти команд и памяти данных. |
15+
| **Архитектура организации памяти** | `harv` | **Гарвардская архитектура**: в тестах необходимо привести/проверить как память команд, так и память данных. |
16+
| **Control Unit** | `hw` | **Hardwired**. Реализуется как часть модели. |
17+
| **Точность модели** | `tick` | Процессор необходимо моделировать **с точностью до такта**, процесс моделирования может быть приостановлен на любом такте. |
18+
| **Представление машинного кода** | `struct` | В виде **высокоуровневой структуры данных**. Считается, что одна инструкция укладывается в одно машинное слово, за исключением CISC архитектур. |
19+
| **Ввод-вывод** | `stream` | Ввод-вывод осуществляется как **поток токенов**. |
20+
| **Ввод-вывод ISA** | `port` | **Port-mapped** (специальные инструкции для ввода-вывода): адресация портов ввода-вывода должна присутствовать. |
21+
| **Поддержка строк** | `pstr` | **Length-prefixed** (Pascal string) |
22+
| **Алгоритм** | `prob2` | **Even Fibonacci numbers**. [Project Euler. Problem 2](https://projecteuler.net/problem=2) |

0 commit comments

Comments
 (0)