Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Поддерживаемые типы данных

Пример проблемного кода при организации цикла по арифметическому условию | Регистры управления DMA-пересылками через линк-порты | Цепочечные DMA-пересылки в ADSP-2106x | Организация взаимодействия между процессорным ядром и портами при вводе/выводе данных. | Структура и принципы функционирования последовательных портов в ADSP-2106x. Форматы данных, передаваемых через последовательные порты ADSP-2106x. | Статус буфера чтения и записи. | Регистры управления работой линк-портов ADSP-2106x | Регистр LSRQ и его назначение | Механизм арбитража общей внешней шины | Приоритетный доступ процессорного ядра |


Читайте также:
  1. BITMAPFILEHEADER – эта структура содержит информацию о типе, размере и представлении данных в файле. Размер 14 байт.
  2. C 4 redo группами по 2 файла, 2 control-файлами, табличным пространством system, имеющим 2 файла данных по 50 мб
  3. Cтуденческий банк данных
  4. II. Сбор и обработка персональных данных субъектов персональных данных
  5. III. Хранение и защита персональных данных субъектов персональных данных
  6. IV. Передача персональных данных субъектов ПД
  7. Present Simple используется, когда речь идет о проверенных фактах и научных данных, либо о том, что говорящий таковыми считает.

Компилятор поддерживает обычные для С/С++ простые типы данных (табл.1), однако их реализация в объектном коде выполняется с учетом архитектуры процессоры, т.е. 32-разрядных регистров. Компилятор не поддерживает типы данных меньшие, чем адресуемая ячейка памяти процессора. Хотя это приводит к необычной эквивалентности размерности переменных типа short int, int, long int и char (все по 32 бита), но не противоречит стандарту ISO/IEC.

Таблица 1

Тип Размер в битах Результат, возвращаемый оператором sizeof
int 32 (ФЗ знаковый)  
unsigned int 32 (ФЗ беззнаковый)  
long 32 (ФЗ знаковый)  
unsigned long 32 (ФЗ беззнаковый)  
char 32 (ФЗ знаковый)  
unsigned char 32 (ФЗ беззнаковый)  
short 32 (ФЗ знаковый)  
unsigned short 32 (ФЗ беззнаковый)  
pointer    
float 32 (ПЗ)  
double 32 или 64 (ПЗ) 1 или 2 (по умолчанию 1)
long double 64 (ПЗ)  
fract 32 (в С++ - ФЗ дробный знаковый, в С – эмуляция через ПЗ)  

Несколько слов следует сказать особо о представлении дробных операндов и операндов в формате с плавающей запятой (ПЗ). Тип данных float представляет собой 32-битовое значение в формате IEEE-1985. Тип double может быть либо 32-х, либо 64-битовым. Обработка 64-битовых ПЗ-данных выполняется с использованием программной эмуляции ПЗ-арифметики, что приводит к существенному снижению производительности вычислений. Поэтому более предпочтительным является использование данных в формате float или 32-битовых double, поскольку в этом случае обработка ведется в "родном" для ADSP формате.

Для обработки дробных данных в поддерживаемом компиляторе языка С++ типе fract (32-битовые ФЗ-числа в диапазоне [-1…1) должен быть подключен соответствующий класс путем использования заголовочного файла <fract>. Чтобы компилятор мог отличить константу в дробном ФЗ-формате от ПЗ-константы, она должна иметь суффикс "r", например 0.5r. При этом поддерживаются операции преобразования типов между дробным и целыми типами и между дробным и ПЗ-типами, а также стандартный набор арифметических операций: сложение, вычитание, умножение, сдвиги, сравнения.

34. Расширения языка С. Ассемблерные вставки – использование регистров. Поддержка пространств памяти данных памяти команд. Доступ к круговым буферам.

2.3. Расширения языка С/С++

Компилятор cc21k поддерживает ряд расширений стандарта ANSI C++ и языка С. Эти расширения введены как с учетом архитектуры DSP-процессоров, так и для того, чтобы позволить программисту использовать некоторые возможности С++ при программировании на С.


Дата добавления: 2015-11-16; просмотров: 48 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Общие сведения| Ассемблерные вставки

mybiblioteka.su - 2015-2024 год. (0.006 сек.)