КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Типы памяти. Транслятор Cx51 явно поддерживает архитектуру контроллеров с ядром МК51 и обеспечивает доступ ко всем областям памяти
Транслятор Cx51 явно поддерживает архитектуру контроллеров с ядром МК51 и обеспечивает доступ ко всем областям памяти. Любая переменная может быть явно определена в своей области памяти. Доступ к внутренней памяти быстрее доступа к внешней памяти. Поэтому часто используемые переменные выгоднее размещать во внутренней памяти, а редко используемые – во внешней. Явно декларируемые типы памяти
Если спецификатор типа памяти включен в ее декларацию, вы задаете явно, где хранится данная переменная. В табл. 1 представлены все спецификаторы памяти. Таблица 1
Спецификатор типа памяти включается в описание переменной также, как и атрибуты signedи unsigned. Пример
Для совместимости с предыдущими версиями транслятора тип памяти можно записывать перед типом переменной. Data char xэквивалентно char data x. Неявные типы памяти
Если спецификатор типа памяти не включен в декларирование переменной, автоматически включается неявный тип памяти или тип памяти по умолчанию. Аргументы функций и автоматически назначаемые переменные, которые не могут быть размещены в регистрах, сохраняются в назначенной по умолчанию памяти. Память по умолчанию при этом определяется директивами транслятора SMALL, COMPACTиLARGE. Типы данных
Транслятор языка C обеспечивает работу с целым рядом базовых типов данных. Они включают в себя как стандартные типы языка C, так и типы, специфические для контроллеров серии МК51. В табл. 2 содержатся все доступные в C51 типы данных. Таблица 2
* Типы bit, sbit, sfr и sfr16не предусмотрены в стандарте ANSI C и являются особенностью Cx51.
|