16+
Среда
18 июля
Вход |Карта сайта | |Upload |codebook | PARTS

 О смысле всего сущего 0xFF

 Средства и методы разработки

 Мобильная и беспроводная связь

 Блошиный рынок Объявления

caxapa

Микроконтроллеры ARM 

AVR PIC MSP PLD,FPGA,DSP 

Кибернетика Технологии 

Схемы, платы, компоненты 

Микроконтроллеры

 
   Новая тема Правила Регистрация Поиск »» Архив
Вернуться в конференциюТопик полностью
Nikolay_Po  (05.07.2018 22:11) , в ответ на не нужно ничего выдумывать. Логика стандарта проста. Если объект никому не доступен, его можно удалять для оптимизации, т.к. это никак не повлияет на поведение системы. volatile действует только на данные, которые могут быть кому-то потенциально автор: sladkoejka
Интересное вышло обсуждение. Ранее не задумывался, но мне близка позиция Сладкоежки. Эффект от исполнения кода наступает лишь в двух случаях: 
а) когда результат выполнения используется другим кодом; б) когда результат выполнения чем-то управляет аппаратно, периферией или самим процессором. Лишь в этих случаях есть смысл сохранять значения переменных и соблюдать порядок обращений к регистрам и памяти. В случае "а" переменная должна быть доступна другому коду. То есть, она уже не может быть локальной по отношению к исполняемому блоку. В случае "б" есть побочный эффект. И выкинуть этот эффект компилятор не может, так как есть обращение к железу (в данном примере инструкция для CPU). Обратите внимание, что в заголовочных файлах регистры периферии, процессора, специальные адреса памяти всегда объявляются глобальными. Поэтому могу согласиться, что волатильность влияет лишь на возможность кэширования значения компилятором, но не должна исключать оптимизацию вплоть до удаления. Наоборот, объявляя по необходимости то там, то там, переменные как volatile, я переживаю: "А не лишаю ли я компилятор возможностей оптимизации?". С этой точки зрения мне нравится подход, когда не переменная объявляется volatile, а обеспечивается практически значимый побочный эффект.
 [x][x][x][x][x][x] [x][x][x][x][x][x][x][x]

Тема выделяется по переводу строки или автоматом

 

Имя


Регистрация позволит вам редактировать и перемещать ваши сообщения и прикреплять к ним файлы.
 
Символы: á é ó ú ý « »
Главная | Карта сайта | О проекте | Проекты | Файлообменник | Регистрация | Вебмастер | RSS
Лето 7526 от сотворения мира. При использовании материалов сайта ссылка на caxapу обязательна.
MMI © MMXVIII