Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kharvd/nand2tetris
Курс Nand2Tetris в школе "Интеллектуал"
https://github.com/kharvd/nand2tetris
Last synced: 16 days ago
JSON representation
Курс Nand2Tetris в школе "Интеллектуал"
- Host: GitHub
- URL: https://github.com/kharvd/nand2tetris
- Owner: kharvd
- Created: 2017-01-16T19:43:00.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2017-05-11T14:03:50.000Z (over 7 years ago)
- Last Synced: 2024-12-03T05:23:01.530Z (22 days ago)
- Language: Python
- Size: 323 KB
- Stars: 16
- Watchers: 6
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Через NAND к тетрису
**Преподаватели:** [Виталий Павленко](https://vk.com/vitalypavlenko), [Валерий Харитонов](https://vk.com/kharvd)
Кружок в школе "Интеллектуал" по архитектуре компьютера проходит зимой-весной 2017 года по четвергам с 17:00 до 19:15, **ауд. 311**. **Первое занятие 26 января 2017, приносите свои ноутбуки**. Учащиеся СУНЦ МГУ также могут посещать занятия. Для этого нужно оповестить преподавателей заранее, чтобы у охраны были списки, кого пускать в "Интеллектуал".
Цель курса - познакомить слушателей с основами построения компьютера: от логических схем до операционных систем и компиляторов. Курс построен на основе http://nand2tetris.org/
Курс практико-ориентированный: каждое занятие состоит как из лекционного материала, так и из практических заданий. Задания посвящены как построению аппаратного обеспечения компьютера (процессор, память) при помощи специального языка ("игрушечного" [языка описания аппаратуры](https://ru.wikipedia.org/wiki/%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B0%D0%BF%D0%BF%D0%B0%D1%80%D0%B0%D1%82%D1%83%D1%80%D1%8B)), так и программному (ассемблер, операционная система, компиляторы), которое будет запускаться на созданном аппаратном обеспечении.
От слушателей предполагается минимальное умение программировать на каком-либо языке (например, Python или Java), а также читать техническую литературу на английском.
[Симуляторы для выполнения заданий](http://www.nand2tetris.org/software.php)
[Книжка по курсу](https://bit.ly/nandbook)
## Примерный план занятий
1. **(26 января)** [Вводное занятие. Булева логика. Транзисторы и реле.](lectures/01_boolean_logic.md)
2. **(2 февраля)** [Булева арифметика.](lectures/02_boolean_arithmetic.md)
3. **(9 февраля)** [Секвенциальная логика.](lectures/03_sequential_logic.md)
4. **(16 февраля)** [Машинный код.](lectures/04_machine_language.md)
5. **(2-16 марта)** [Архитектура компьютера.](lectures/05_computer_architecture.md)
6. **(23 марта - 13 апреля)** [Ассемблер.](lectures/06_assembler.md)
7. **(27 апреля - 11 мая)** [Виртуальная машина, часть 1. Стековая арифметика.](lectures/07_vm_1.md)
8. Виртуальная машина, часть 2. Управляющие инструкции.
9. Язык высокого уровня.
10. Компилятор, часть 1. Синтаксический анализ.
11. Компилятор, часть 2. Генерирование кода.
12. Операционная система.## Нестандартная литература
Помимо основного курса мы хотим познакомить участников с интересными книжками, которые обычно ускользают из поля зрения технических специалистов даже после окончания вуза. Для этого каждую неделю мы рекомендуем прочитать маленький отрывок на 30 страниц из очередной интересной книги.
- [Все отрывки на Дропбоксе](https://www.dropbox.com/sh/xlmgorqu5ia329v/AABvv2fa1ChZowI-2v_4l6wda?dl=0)
- [Полные версии всех книг на Дропбоксе](https://www.dropbox.com/sh/zmq1aanr4f6lk3k/AACs2-E9ta_FzAIgDVgYuV2fa?dl=0)