Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Комилятору бывает довольно сложно объяснить. Простейший пример. Для ДСП.

Отправлено пароль_потерял_ (95.79.44.119) 28 февраля 2010, г. 21:29
В ответ на: Ламеров везде хватает. А если ламер пишет на асме, так то вааще песец. (ничего личного) отправлено Vit 28 февраля 2010, г. 21:04

В ДСП аккумулятор довольно часто содержит разряды расширения. Например 32-х разрядный аккумулятор содержит еще 8 разрядов расширения. Это удобно. Например при накоплении поизведений. С 16-ти разрядными сомножителями. 256 произведений копятся без проблем, без перепрятывания в память, анализа переполнений и т.п.
И на ассемблере, как правило, накопление произведений занимает 1 команду. Одна сплошная красота. Но заставить компилятор по максимуму использовать возможности процессора бывает очень сложно.
И препоном, в частности, будут стандартизованные типы данных - 16 разрядный short(int), 32-разрядный int(long). При 40-ка разрядном интересующем результате:-). Поэтому сплошь и рядом библиотечные ф-ии обработки пишутся на ассемблере даже самими фирмами-разработчиками дээспэ и дээспэшных сред программмирования:-)) При том, что о достоинствах языка Си и прочих ЯВУ они, эти фирмы, осведомлены очень хорошо и компиляторы у них работают очень неплохо. Однако...


Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 93:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru