реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Хочу писать грамотный и красивый код (IAR C AVR), Где можно поучиться?
IV_K
сообщение Aug 10 2005, 07:04
Сообщение #16


Частый гость
**

Группа: Свой
Сообщений: 121
Регистрация: 17-06-05
Пользователь №: 6 087



if (src.b0) dst.b0 = 1; это выражение занимает 2 команды

dst.b0 = src.b0; это больше

как по другому соптимизировать не знаю

Компилятор кажется на таких процедурах очень тупит.. (если бы переменные были volatile, тогда понятно)
а кто мешает объявить register в процедуре.. вроде бы компилер регистры в стек засунуть должен (не проверял)
Go to the top of the page
 
+Quote Post
bialix
сообщение Aug 10 2005, 10:29
Сообщение #17


Частый гость
**

Группа: Свой
Сообщений: 174
Регистрация: 4-11-04
Из: zp.ua
Пользователь №: 1 046



Кроме правил эстетического оформления программ, имеет смысл сразу знакомиться с правилами логического оформления программ. Рекомендую:

http://joelonsoftware.com/articles/Wrong.html


--------------------
Имей мужество пользоваться своим собственным разумом! (с) И.Кант
Go to the top of the page
 
+Quote Post
impatt
сообщение Aug 16 2005, 05:57
Сообщение #18


Частый гость
**

Группа: Validating
Сообщений: 169
Регистрация: 10-11-04
Из: Челябинск
Пользователь №: 1 088



Если разговор про оформление, то практически из любого фарша приводит в нормальный вид исходники прога indent. Все параметры настраиваются.
Go to the top of the page
 
+Quote Post
prottoss
сообщение Aug 17 2005, 17:50
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(nml @ Aug 9 2005, 21:19)
Цитата(IV_K @ Aug 9 2005, 15:09)
а так еще круче!! =))))
register union спасет отца русской демократии
*


Не, не круче. Команд конечно меньше, но работает с памятью, а это еще по 4 такта на действие... Не то. Объявлять же в регистрах - и занять ради этого 4 регистра - как-то тоже не хочется.

Таки лучше всего спасает ассемблерная процедура. Хотя, согласен - не лучший выход.

Или я просто от компилятора слишком многого хочу?
*



Может просто применить в корне другой алгоритм для задачи в целом (я имею ввиду вообще отказаться от процедуры перестановки бит)? Ведь у любой задачи есть бесчисленное множество решений. И не факт, что Ваше верное...


--------------------
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 08:20
Рейтинг@Mail.ru


Страница сгенерированна за 0.01348 секунд с 7
ELECTRONIX ©2004-2016