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

 
 
12 страниц V  < 1 2 3 4 5 > »   
Reply to this topicStart new topic
> Как ПРАВИЛЬНО программировать на С++, Вопросы по программированию на С++ для микроконтроллеров.
Mahagam
сообщение Aug 3 2010, 14:51
Сообщение #31


Местный
***

Группа: Свой
Сообщений: 322
Регистрация: 2-07-04
Из: Minsk
Пользователь №: 240



QUOTE (sergeeff @ Aug 3 2010, 15:59) *
Учите матчасть!

смотрю, плюсисты никак не выучат. вечно проблемы с языком возникают biggrin.gif
Go to the top of the page
 
+Quote Post
ReAl
сообщение Aug 3 2010, 14:54
Сообщение #32


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(Mahagam @ Aug 3 2010, 15:50) *
ещё раз. чисто наблюдения показывают, что вопросы касаемые конструкций и возможностей языка у программистов Си практически не обсуждаются. зато активно муссируются у плюсистов. выводы какие?
Ещё раз. Чисто наблюдения показывают, точнее, показали лет 12-16 назад, что вопросы, касаемые конструкций языка, у программистов на асм практически не обсуждаются, зато активно муссируются у С-шников. Помнятся по SU.CROSSTOOLS да RU.EMBEDDED имено такие "болезни роста" и точно так же многие тогда говорили, что фигня это всё и ассемблерщики борятся с железом и задачей, а С-шники с языком и компилятором. И много приходилось спорить и доказывать, что борьба с компилятором - просто от незнания основ языка в духе правил приведения типов.
Но по мере увеличения числа знающих С эти вопросы отпали, место С во встроенных системах никто не оспаривает. Сейчас слово "асм" заменилось на "С", "С" на "С++" и наблюдаем второй виток. От тех, кто не видел первого?


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
Mahagam
сообщение Aug 3 2010, 16:13
Сообщение #33


Местный
***

Группа: Свой
Сообщений: 322
Регистрация: 2-07-04
Из: Minsk
Пользователь №: 240



стандартов на языки понаделали давно. с появлением стандартов на си - все болезни роста пропали.
на плюсы вроде как уже 12 лет первому стандарту, а проблемы языка - остались.
похоже этот "виток" превратился в вечное кольцо.
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Aug 3 2010, 17:05
Сообщение #34


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(Mahagam @ Aug 3 2010, 20:13) *
на плюсы вроде как уже 12 лет первому стандарту, а проблемы языка - остались.

Поэтому пора уже думать об С#


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
ReAl
сообщение Aug 3 2010, 17:10
Сообщение #35


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(Mahagam @ Aug 3 2010, 19:13) *
стандартов на языки понаделали давно. с появлением стандартов на си - все болезни роста пропали.
на плюсы вроде как уже 12 лет первому стандарту, а проблемы языка - остались. похоже этот "виток" превратился в вечное кольцо.
В упомянутые времена разговоров про "С-шники воюют с компилятором" языку С тоже много лет было, стандарту C89 было много лет, С99 был на подходе.
Но в нише мелкоконтроллеров он был многим в новинку, болезни роста не от возраста языа зависят, а от времени его применения в нише, так как это болезни роста не языка как такового.
Многие из тех, кто много лет просидел в этой нише на ассемблере - просто не воспринимали С. Вопросы "рискнувших" (в смысле применения С) укрепляли их в вере в то, что "С-шники борятся ..." дале по тексту. Но "рискнувшие" прошли свою фазу освоения языка и все те вопросы остались, но они теперь ассоциируются не со всеми, применяющими С, а только с новичками. А "тогда" практически все новичками и были, С был уделом программистов на "достаточно больших машинах", а "в эмбеддед ему не место" (хотя я удивлялся — почему на "ДВК-2" с 56К озу на всё про всё вместе с ОС ему за десять лет до этого было место, а на 8051 с 16-20-32К ПЗУ для автономной программы — так не место).


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
sergeeff
сообщение Aug 3 2010, 17:44
Сообщение #36


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Цитата(MrYuran @ Aug 3 2010, 20:05) *
Поэтому пора уже думать об С#


С его то идеологией уборки мусора?
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Aug 3 2010, 18:12
Сообщение #37


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(sergeeff @ Aug 3 2010, 21:44) *
С его то идеологией уборки мусора?

А что там с идеологией не так?
Стековый язык, с уборкой проблем быть не должно


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
sergeeff
сообщение Aug 3 2010, 18:32
Сообщение #38


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Цитата(MrYuran @ Aug 3 2010, 21:12) *
А что там с идеологией не так?
Стековый язык, с уборкой проблем быть не должно


http://msdn.microsoft.com/en-us/library/ms...28VS.90%29.aspx :

Цитата
In C#, garbage collection is handled by the common language runtime (CLR) with similar functionality to that of the JVM. The CLR garbage collector periodically checks the memory heap for any unreferenced objects, and releases the resources held by these objects.
Go to the top of the page
 
+Quote Post
Savrik
сообщение Aug 3 2010, 19:09
Сообщение #39


наблюдаю..
***

Группа: Свой
Сообщений: 291
Регистрация: 11-12-06
Из: Украина
Пользователь №: 23 369



Управляеймый код, конечно, хорошо в своей области, но, как правило, во встраваимых системах программист привык быть уверенным в том, что и как делает программа. А если забывать за собой убирать - наверное, стоит сменить профильsmile.gif
Оффтоп. Почему C# не такой популярный? потому, что его разрабатывал мужик без бороды.
Go to the top of the page
 
+Quote Post
Mahagam
сообщение Aug 4 2010, 07:49
Сообщение #40


Местный
***

Группа: Свой
Сообщений: 322
Регистрация: 2-07-04
Из: Minsk
Пользователь №: 240



ReAl
при чём тут ниша и контроллеры? если обсуждаются проблемы именно языковых конструкций. зайдите на любой форум программеров - война с языком идёт вечно. причём чуть ли не с базовыми конструкциями.
Go to the top of the page
 
+Quote Post
sergeeff
сообщение Aug 4 2010, 08:06
Сообщение #41


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Цитата(Mahagam @ Aug 4 2010, 10:49) *
ReAl
при чём тут ниша и контроллеры? если обсуждаются проблемы именно языковых конструкций. зайдите на любой форум программеров - война с языком идёт вечно. причём чуть ли не с базовыми конструкциями.


"С войной покончили мы счеты —
Бери шинель, пошли домой!"
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 4 2010, 08:15
Сообщение #42


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



QUOTE
(хотя я удивлялся — почему на "ДВК-2" с 56К озу на всё про всё вместе с ОС ему за десять лет до этого было место, а на 8051 с 16-20-32К ПЗУ для автономной программы — так не место).


Потому что на архитектуру PDP-11 ложится идеально. А на 51 - увольте wink.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Serega Doc
сообщение Aug 5 2010, 04:10
Сообщение #43


Местный
***

Группа: Свой
Сообщений: 267
Регистрация: 11-11-04
Из: Одесса
Пользователь №: 1 103



Добрый день.
Неожиданно был удивлен что здесь из-за такого вопроса получился холивар.
Считаю что разработчик сам должен для себя решить на каком языке и с какой эффективностью он будет реализовывать проект.
Так что считаю вообще спор бессмысленным. И прошу его прекратить.

И если можно ответить еще на один вопрос.
Можно ли каким либо образом сделать переход из одного метода класса в другой не вызовом его через Call а переходом через Jmp.
Вернее что бы компилировалось так. А то сейчас у меня два метода которые возвращают один и тот же тип WatcherState
Но при этом один просто выполняет проверки и возвращает значение
Второй же более длинный по времени выполнения выполняет расчет и так же возвращает WatcherState
Вот как я это пока написал
Код
if (Tvalue == TimerValue)
    {
        return Next();
    }
    else
    {
        return WAIT;
    }

Что можете посоветовать?
Go to the top of the page
 
+Quote Post
Ink
сообщение Aug 5 2010, 06:34
Сообщение #44


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 14-08-07
Пользователь №: 29 776



Цитата(Serega Doc @ Aug 5 2010, 08:10) *
Можно ли каким либо образом сделать переход из одного метода класса в другой не вызовом его через Call а переходом через Jmp.

Может я ошибаюсь, но сдается мне, что никак так не сделать. Либо как-то в отдельно взятом компиляторе, но все равно сомневаюсь. Очень.
А инлайн не подходит?
Go to the top of the page
 
+Quote Post
neiver
сообщение Aug 5 2010, 07:21
Сообщение #45


Местный
***

Группа: Участник
Сообщений: 214
Регистрация: 22-03-10
Из: Саратов
Пользователь №: 56 123



А чем собственно call не угодил? Хотите пару тактов и пару байт в стеке съэкономить? Если это действительно важно - можно сделать эти функции члены (в С++ нет методов) inline? Например написать их реализацию в объявлении класса. Если функции маленькие, то возможно удастся съэкономить и побольше, за счет отсутствия вызовов и передачи аргументов.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 19th July 2025 - 00:02
Рейтинг@Mail.ru


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