---
# System prepended metadata

title: AVR ассемблер

---

# AVR ассемблер
* [Занятие 1 - Архитектура AVR. Устройство АЛУ](https://hackmd.io/@assasinfil/SyNKnAywY) 
* Занятие 2 - Введение в AVR ассемблер
## Занятие 1
### Введение
В данном курсе мы будем рассматривать отладочную плату arduino nano с чипом atmega328p.
Данная плата представляет из себя кусок текстолита с 30 выводами, 6 выводами для программирование при помощи программатор ISP, USB порт через который можно загружать прошивку, если установлен загрузчик. Также на плате имеется 4 светодиода, два для UART (TX/RX), индикатор питания и пользовательский светодиод. 
![](https://i.imgur.com/4jqmZhX.jpg)


### Архитектура AVR
![](https://i.imgur.com/4BkOFFB.png)

Микроконтроллер состоит из нескольких вычислительных блоков:

* **Арифметико-логическое устройство** (АЛУ) (англ. arithmetic logic unit, ALU) — блок процессора, который под управлением устройства управления служит для выполнения арифметических и логических преобразований над данными.

* **Блок управления процессором** (УУ) (control unit, CU) — блок, устройство, компонент аппаратного обеспечения компьютеров. Представляет собой конечный дискретный автомат. Структурно устройство управления состоит из: дешифратора команд (операций), регистра команд, узла формирования (вычисления) текущего исполнительного адреса, счётчика команд. УУ современных процессоров обычно реализуются в виде микропрограммного автомата и в этом случае УУ включает в себя ПЗУ микрокоманд. УУ предназначено для формирования сигналов управления для всех блоков машины.

* **Сумматорами** называют логические устройства, выполняющие арифметические суммирование кодов двоичного числа Основной из них - это ALU (Арифметико логическое устройство).

![](https://i.imgur.com/yjNn9DG.png)

Ниже можно увидеть блок схему устройства микроконтроллера:

![Блок схема архитектуры AVR](https://i.imgur.com/amccZGr.jpg)
#### Структура микроконтроллера
Микроконтроллер состоит из различных компонентов. Главным из них является транзистор. Это основной элемент из которого строятся логические схемы. 
![](https://i.imgur.com/5fGb0z6.jpg)
Ток в транзисторе течет от коллектора к эммитеру. Управление транзистором происходит путем подачи тока на базу транзистора.

Каждый блок в процессоре состоит из таких транзисторов.

#### Логические элементы
![NAND](https://i.imgur.com/YGhxYrI.gif)

Из NAND можно собрать остальные логические элементы.

 Разновидности элементов, составленные из NAND
![](https://i.imgur.com/AHZdFYf.gif)

Полусумматор
![](https://i.imgur.com/fHREkqo.png)


Полусумматор суммирует 2 бита. На выходе бит результат и бит переполнения.

Из полусумматора можно собрать сумматор любой битности. Необходимо подключать выход бита переполнения через логический элемент ИЛИ.

Полный сумматор
![](https://i.imgur.com/oUqj0sz.png)

## Домашнее задание
Пройти блок Arithmetics полностью на сайте: https://nandgame.com/
![](https://i.imgur.com/MCs9DtO.png)
