- •Позиционная система счисления
- •Основные понятия, используемые в двоичной системе счисления
- •Перевод чисел из произвольной системы счисления в десятичную
- •Обозначение цифр в шестнадцатеричной системе счисления
- •Перевод десятичного числа в произвольную систему счисления
- •Связь двоичной, восьмеричной и шестнадцатеричной систем счисления
- •Прямая кодировка знаковых двоичных чисел
- •Дополнительная кодировка знаковых двоичных чисел
- •Микропроцессор, его основные функции и структура
- •Микропроцессорная система, ее функции и структура
- •Память (пзу, озу)
- •Основные функции и структура арифметико-логического устройства (алу)
- •Состав регистрового файла на примере avr-контроллера
- •Структура стековой памяти
- •Основные биты регистра признаков
- •Назначение регистра программного счетчика
- •Устройство управления микропроцессора
- •Сигналы управления, используемые при обращении микропроцессора к памяти и к устройству ввода, вывода (увв)
- •Типы памяти микропроцессорных систем
- •Адресация пространства памяти avr-контроллера
- •Основные типы адресации операндов в ассемблерных командах avr-контроллера
- •Основные типы команд в группе команд передачи данных avr-контроллера
- •Основные арифметические команды avr-контроллера
- •Основные логические команды avr-контроллера
- •Безусловные команды передачи управления avr-контроллера
- •Условные команды передачи управления avr-контроллера
- •Основные битовые команды avr-контроллера
- •Правила программирования на языке Assembler
- •Директивы языка ассемблер
- •Выражения языка Assembler: операнды
- •Выражения языка Assembler: операторы
- •Выражения языка Assembler: функции
- •Структура программы на языке си
- •Директивы языка си
- •Команды языка си
Выражения языка Assembler: функции
В языке Assembler определены следующие функции:
LOW (выражение) эта функция возвращает младший байт выражения.
HIGH (выражение) эта функция возвращает второй байт выражения.
BYTE 2 (выражение) эта функция возвращает второй байт выражения.
BYTE 3 (выражение) эта функция возвращает третий байт выражения.
BYTE 4 (выражение) эта функция возвращает четвертый байт выражения.
LWRD (выражение) эта функция возвращает биты с 0 по 15.
HWRD (выражение) эта функция возвращает биты с 16 по 31.
PAGE (выражение) эта функция возвращает биты с 16 по 21 от выражения.
EXP 2 (выражение) возвращает 2 в степени выражения.
LOG 2 (выражение) возвращает целую часть логарифма с основанием 2 от выражения.
Структура программы на языке си
Программа на языке Си это текстовый файл с расширением. c
Текст программы имеет определенную структуру:
1. заголовок
2. включение необходимых внешних файлов
3. ваши определения для удобства работы
4. объявление глобальных переменных
Перед использованием переменной в Си её необходимо объявить! Т.е. указать компилятору какой тип данных она может хранить и как она называется.
Глобальные переменные объявляются, вне какой либо функции. Т.е. не после фигурной скобки {. Они доступны в любом месте программы, значит можно читать их значения и присваивать им значения там, где требуется.
5. описание функций - обработчиков прерываний
6. описание других функций используемых в программе
7. функция main - это единственный обязательный пункт !
Это не жесткий порядок, а ориентировочный!
Иногда п. 6 - это прототипы функций, а сами функции описываются полностью после п. 7.
Прототип функции - показывает образец того, как применять функцию в программе, какие значения в нее передаются и, если она возвращает какое-то значение, то прототип указывает тип возвращаемых данных. Прототип не имеет скобок { }, а после скобок ( ) ставится знак ;.
Функция - имеет { "тело" } в фигурных скобках. Тело - это код на Си определяющий то, что делает функция. Знак «;» после функции не ставится.
Программа на Си начинает работу с функции main(),
Директивы языка си
В языки программирования Си и C++ встроена поддержка препроцессора. Строки в исходном коде, которые должны быть обработаны препроцессором в виде #define и #include называются препроцессорными директивами.
Синтаксические конструкции, похожие на препроцессорные директивы языка Си, такие как #region в языке C#, также часто называются «директивами», хотя в указанных случаях стадии обработки препроцессором может и не быть.
# define имя константы значение константы.
Для того, чтобы использовать директиву define, которая вводит в нашу программу именованные константы, записанные через служебные слова, используют еще раньше этой директивы директиву .include:
# include < limits.h > стандартный файл с расширением H.
Файл с расширением h содержит именованные константы.
Директивы препроцессора представляют собой инструкции, записанные в тексте программы на СИ, и выполняемые до трансляции программы. Директивы препроцессора позволяют изменить текст программы, например, заменить некоторые лексемы в тексте, вставить текст из другого файла, запретить трансляцию части текста и т.п. Все директивы препроцессора начинаются со знака #. После директив препроцессора точка с запятой не ставятся.
#include "имя файла"
#define WIDTH 80
#define LENGTH (WIDTH+10)
#undef WIDTH