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

 
 
> ARM начинающим
=NIK=
сообщение Oct 12 2005, 23:09
Сообщение #1





Группа: Новичок
Сообщений: 2
Регистрация: 19-06-05
Пользователь №: 6 134



Мужики. Подскажите плз куда можно почитать по ARM новичку. Я AVR худо-бедно освоил. А вот что такое ARM слабо представляю. Проги писал на асме. Сишник не знаю.

Заранее благодарен.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
aaarrr
сообщение Oct 19 2005, 12:46
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Andy Mozzhevilov @ Oct 19 2005, 15:33)
Точно также, как и вашу асмовскую функцию. Только memcpy это точно все корректно отыграет, пусть даже создав менее оптимальный код, копирующий байтами, а не словами. А использование вашей функции с невыровненными адресами приведет к непредсказуемым эффектам.


А кто ее будет так использовать? Ежели это моя функция, то вызывать её буду только я и правильно.

Цитата
Например, в IAR memcpy написана нак inline функция в string.h
Код
   #pragma inline
   void *memcpy(void *s1, const void *s2, size_t n)
     /* Copied from memcpy.c */
   {       /* copy char s2[n] to s1[n] in any order */
     char *su1 = (char *)s1;
     const char *su2 = (const char *)s2;
 
     for (; 0 < n; ++su1, ++su2, --n)
       *su1 = *su2;
     return (s1);
   }


Ужасно! Всегда считал IAR кривым компилером.

Цитата
Вы серьезно полагаете, что квалификация программиста тем выше, чем более низкоуровненый язык он использует?
*


Нет, я считаю, что квалификация программиста тем ниже, чем более низкоуровневый язык он не способен понять.
Go to the top of the page
 
+Quote Post
Andy Mozzhevilov
сообщение Oct 20 2005, 03:39
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206



Цитата(aaarrr @ Oct 19 2005, 17:46)
Цитата(Andy Mozzhevilov @ Oct 19 2005, 15:33)
Точно также, как и вашу асмовскую функцию. Только memcpy это точно все корректно отыграет, пусть даже создав менее оптимальный код, копирующий байтами, а не словами. А использование вашей функции с невыровненными адресами приведет к непредсказуемым эффектам.


А кто ее будет так использовать? Ежели это моя функция, то вызывать её буду только я и правильно.

Почему вы тогда считаете, что вы вправе помнить о том, что свою асмовскую функцию можете вызывать только с определенным выравниванием, а я не вправе помнить, что при отсутствии выравнивания код для сишной функции будет менее оптимальным?

Цитата
Цитата
Цитата
Например, в IAR memcpy написана нак inline функция в string.h


Ужасно! Всегда считал IAR кривым компилером.

IAR очень приличный компилятор. Если специально не пытаться залезть в бутылочное горло, пытаясь доказать неэффективность.

Цитата
Вы серьезно полагаете, что квалификация программиста тем выше, чем более низкоуровненый язык он использует?
*


Нет, я считаю, что квалификация программиста тем ниже, чем более низкоуровневый язык он не способен понять.
*



Понимать язык и уметь свободно на нем общаться - 2 большие разницы.
Вы изначально высказали мнение, что проекты для мелких микроконтроллеров должны писаться на асм:
Цитата(aaarrr)
Интересно, а на LPC2101 тоже на C будем писать?

Цитата(aaarrr)
Может быть и прекрасно, да только уж на мелких восьмибитниках ASM сам доктор прописал использовать

C чем я совершенно не согласен, настаивая на том, что целесообразно на асм писать только действительно критические места. Знание асма необходимо, это я не отрицаю, но я утверждаю, что в большинстве случаев достаточно понимать асм, а не свободно общаться на нем.
На данный момент мой опыт насчитывает работу как минимум с 7 различными семействами процессоров, не считая писишного x86. С 4 из них я работал довольно плотно. В том числе много проектов приходится сопровождать. Все написано на Ц, за исключением критических мест, которых очень не много.
Как вы считаете, насколько хорошо можно сопровождать проект, написанный на асм, если на данный момент этот процессор активно не используется?
Например, x51 мы не закладываем в новые разработки уже лет 5, а проекты сопровождать нужно. Каждый раз вспоминать асм и копаться в неструктурированном коде? Ради чего, мифического увеличения производительности и уменьшения объема кода на 30%-50%?


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
AlexeyAS
сообщение Oct 20 2005, 04:02
Сообщение #4





Группа: Новичок
Сообщений: 9
Регистрация: 10-02-05
Пользователь №: 2 543



Цитата(Andy Mozzhevilov @ Oct 20 2005, 09:39)
Например, x51 мы не закладываем в новые разработки уже лет 5, а проекты сопровождать нужно. Каждый раз вспоминать асм и копаться в неструктурированном коде? Ради чего, мифического увеличения производительности и  уменьшения объема кода на 30%-50%?
*


А что такие проекты уже не структуируются средствами АСМ и не документируются по процедурно? Сейчас такие средства появляются как графические ассемблеры - это вообще лучший выход из ситуации.

А ради чего, вопрос риторический.
Следую вашей логике можно как и в мире CPU платить огромные деньги за 30% прибавку производительности, что бы писать на ЯВУ всем и как угодно, затем еще на 10% что бы писать было быстро и каждый год по 5% что бы еще быстрее. С некоторой стороны этот принцип оправдывается получением сверхприбыли, но сущесвтует момент времени до которого потребитель согласен терепеть постоянный отъем заработанных средств wink.gif.
Что говорить что подобный путь развития ЭКСТЕНСИВЕН. ;(
Go to the top of the page
 
+Quote Post
Andy Mozzhevilov
сообщение Oct 20 2005, 05:22
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206



Цитата(AlexeyAS @ Oct 20 2005, 09:02)
Цитата(Andy Mozzhevilov @ Oct 20 2005, 09:39)
Например, x51 мы не закладываем в новые разработки уже лет 5, а проекты сопровождать нужно. Каждый раз вспоминать асм и копаться в неструктурированном коде? Ради чего, мифического увеличения производительности и  уменьшения объема кода на 30%-50%?
*


А что такие проекты уже не структуируются средствами АСМ и не документируются по процедурно?

Это можно сделать, но фактически нужно будет работать компилятором с ЯВУ в уме. Это не интересно.
При большом проекте все равно придется выработать определенные правила, как то - способы передачи аргументов функциям и способы возврата результатов, соглашения по использованию регистров в вызывающей и вызываемой функциях. Для мелких архитектур, типа х51 размещение локальных переменных функций в памяти - вообще задача не тривиальная, если ее делать руками. Ну и т.п. А потом ради чего? Ради мифических 30% размера кода/производительности? Так оно и на Ц с некоторым запасом.

Цитата
Сейчас такие средства появляются как графические ассемблеры - это вообще лучший выход из ситуации.

Это сейчас, а я говорю про 5 лет назад. Да и мое имхо, все эти вижал-средства для embedded больше игрушки. Попытка ввести в embedded то, что сейчас есть на ПК. Программирование контроллеров при помощи мыши. Фигня - не верю.

Цитата
  А ради чего, вопрос риторический.
  Следую вашей логике можно как и в мире CPU платить огромные деньги за 30% прибавку производительности, что бы писать на ЯВУ всем и как угодно, затем еще на 10% что бы писать было быстро и каждый год по 5% что бы еще быстрее.

Вопрос очень даже практический. Если программа занимает 1К на асме, и 1.5К на Ц при доступной памяти 2К, то 0.5К оверхеда Ц бесплатно.
Только не надо мне петь про тот граничный случай, когда на асме влазит в 1 кристалл, а на Ц нужно брать более старший и платить на с50 больше. Если это даже так, то в наших, российских условиях, где преобладает мелкотиражное производтство, это мало кого волнует. Гораздо больше волнует выскочить на рынок быстрее, а там других расходов немерянно. Те же испытания на ЭМС сделать, метрологию, в коммандировки слетать по 3000р за номер/сутки - и c50 за контроллер покажутся вам каплей в морe, если до этого действительно дойдет.


Цитата
С некоторой стороны этот принцип оправдывается получением сверхприбыли, но сущесвтует момент времени до которого потребитель согласен терепеть постоянный отъем заработанных средств wink.gif
  Что говорить что подобный путь развития ЭКСТЕНСИВЕН. ;(
*

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


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
AlexeyAS
сообщение Oct 20 2005, 08:34
Сообщение #6





Группа: Новичок
Сообщений: 9
Регистрация: 10-02-05
Пользователь №: 2 543



Цитата
А что такие проекты уже не структуируются средствами АСМ и не документируются по процедурно?


Цитата
Это можно сделать, но фактически нужно будет работать компилятором с ЯВУ в уме. Это не интересно.


Ну это как посмотреть незачем делать работу препроцессора руками wink.gif есть макросредства где более хлипкие, где наоборот настолько расширенные, что пользоваться ими только удобно.

Цитата
При большом проекте все равно придется выработать определенные правила, как то - способы передачи аргументов функциям и способы возврата результатов, соглашения по использованию регистров в вызывающей и вызываемой функциях.


А что Вас stdcall не устраивает уже wink.gif Если не способны отследить кроссы между регистрами и на регистровую передачу не тянете - пользуйтесь и stdcall и фреймами в процедурах. Честно говоря особой проблемы не вижу.

Цитата
Для мелких архитектур, типа х51 размещение локальных переменных функций в памяти - вообще задача не тривиальная, если ее делать руками. Ну и т.п. А потом ради чего? Ради мифических 30% размера кода/производительности? Так оно и на Ц с некоторым запасом.


аргумерты оптимизации и сверхоптимизации (asm) по порядку wink.gif

a) при определенной экономии кода остается место на бесполезненную модернизацию путем soft upgrade в масштабах того же устройства как понимаете.
б) при определенной экономии ресурса (производительности) опять таки остается возможность функциональной модернизации путем того же soft upgrade.
в) остается гипотетическая возможность заказного чипа на порядок дешевле но без излиществ в ASIC - это сейчас широко практикуется.

Возразить можно что а) и б) можно успеть сделать после, но вопрос что дешевле сразу или несколько погодя?

Цитата
Сейчас такие средства появляются как графические ассемблеры - это вообще лучший выход из ситуации.

Цитата
Это сейчас, а я говорю про 5 лет назад. Да и мое имхо, все эти вижал-средства для embedded больше игрушки. Попытка ввести в embedded то, что сейчас есть на ПК. Программирование контроллеров при помощи мыши. Фигня - не верю.



Что за ерунда!!! Какие еще визуал средства?! Какие мышевозения?! Что Вы, господь с вами! Или вот это:

r1 <- r2 + r3

считается визуал средствами визуйльной разработки? Я говорю про такие вещи как AVR AlghoritmBuilder помогающий структуировать низкоуровневый код настолько понятно и куда наглядней ЯВУ. Таже модульность только в низкоуровневом исполнении.


Цитата
А ради чего, вопрос риторический.
Следую вашей логике можно как и в мире CPU платить огромные деньги за 30% прибавку производительности, что бы писать на ЯВУ всем и как угодно, затем еще на 10% что бы писать было быстро и каждый год по 5% что бы еще быстрее.


Цитата
Вопрос очень даже практический. Если программа занимает 1К на асме, и 1.5К на Ц при доступной памяти 2К, то 0.5К оверхеда Ц бесплатно.


Как правило оверхед все таки выше, ведь мы рассматриваем проект а не несколько функций из него, к тому же еще и оптимизированных по асм подстрочнику. В среде embedded нет мощных оптимизирующих компиляторов допрыгивающих например до Watcom. Для того что бы достигнуть подобного уровня нужно "разжевывать" иначе компилер еще и ляпы даст, такие что выйдет дабловерхедом. Например процедура сортировки пузыркем в классическом виде будет иметь 30% оверхед и размера и производительности. Иногда компилеру просто невозможно разжевать и сдвиг то через C есть намболее качесвтенный пример wink.gif

Цитата
Только не надо мне петь про тот граничный случай, когда на асме влазит в 1 кристалл, а на Ц нужно брать более старший и платить на с50 больше. Если это даже так, то в наших, российских условиях, где преобладает мелкотиражное производтство, это мало кого волнует.


А я Вам и не пою про размеры кристаллов, как Вы уже могли заметить, я назвал причины а),б),в) должные побудить писать на средствах низкого уровня (заметье я не говорю именно ассемблер). Только попробуйте скажите wink.gif что средства низкого уровня не позволяют структуировать и заставляют делать дурную работу wink.gif

Цитата
Гораздо больше волнует выскочить на рынок быстрее, а там других расходов немерянно. Те же испытания на ЭМС сделать, метрологию, в коммандировки слетать по 3000р за номер/сутки - и c50 за контроллер покажутся вам каплей в морe, если до этого действительно дойдет.


Дык за номер с нас будут брать 3000 такие же оглоеды, простите wink.gif, которые тоже хотят выйти на рынок быстрее wink.gif и потому в качестве половой доски используют полноразммерную плиту стоимость вай-вай.

Цитата
Их еще надо начать заработывать на этом проекте, а потом, если уж это будет настолько критично, можно и вылизать программу хоть на асм и снизить производтственные затраты. Но это будет оправдываться действительно при очешь больших тиражах, что для россии все же редкость.


Насчет "вылизать" я не буду верить в это с самого начала коммерческого проекта. Самое интересное то что так говорят абсолютно все! В итоге, проект бросается и заказчику говорят, да бросьте вы свой пылесосо, КПК или телефон (к примеру) мы выпустили новый, а старый там же нет того и того, а оно вам так надо! Не ощущаете схожесть ситуаций?!
Go to the top of the page
 
+Quote Post
Andy Mozzhevilov
сообщение Oct 20 2005, 09:30
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206



Цитата(AlexeyAS @ Oct 20 2005, 13:34)
Цитата

Это можно сделать, но фактически нужно будет работать компилятором с ЯВУ в уме. Это не интересно.

Ну это как посмотреть незачем делать работу препроцессора руками wink.gif есть макросредства где более хлипкие, где наоборот настолько расширенные, что пользоваться ими только удобно.

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

Цитата
Цитата

При большом проекте все равно придется выработать определенные правила, как то - способы передачи аргументов функциям и способы возврата результатов, соглашения по использованию регистров в вызывающей и вызываемой функциях.

А что Вас stdcall не устраивает уже Если не способны отследить кроссы между регистрами и на регистровую передачу не тянете - пользуйтесь и stdcall и фреймами в процедурах. Честно говоря особой проблемы не вижу.

Так пользуйтесь, я же не агитирую. Я лишь не вижу смысла прописывать ручками то, что может сделать вычислительная машина.

Цитата
Цитата

Для мелких архитектур, типа х51 размещение локальных переменных функций в памяти - вообще задача не тривиальная, если ее делать руками. Ну и т.п. А потом ради чего? Ради мифических 30% размера кода/производительности? Так оно и на Ц с некоторым запасом.


аргумерты оптимизации и сверхоптимизации (asm) по порядку

a) при определенной экономии кода остается место на бесполезненную модернизацию путем soft upgrade в масштабах того же устройства как понимаете.
б) при определенной экономии ресурса (производительности) опять таки остается возможность функциональной модернизации путем того же soft upgrade.
в) остается гипотетическая возможность заказного чипа на порядок дешевле но без излиществ в ASIC - это сейчас широко практикуется.
Возразить можно что а) и б) можно успеть сделать после, но вопрос что дешевле сразу или несколько погодя?

Заказной чип на порядок дешевле - не смешите. Сейчас контроллер ARM стоит от $2, куда дешевле? Знаете сколько стоит подготовка производства заказных чипов? Знаете, при каких тиражах это все начинает окупаться? Сколько раз в своей практике вы делали заказ заказных чипов?

Цитата
Что за ерунда!!! Какие еще визуал средства?! Какие мышевозения?! Что Вы, господь с вами! Или вот это:

r1 <- r2 + r3

Как это выражение относится к словосочетанию графический ассемблер?
Наличием стрелочки в пересылке? Что такое здесь r1 r2 и r3, какие сущности они выражают? В чем кайф?

Цитата
Как правило оверхед все таки выше, ведь мы рассматриваем проект а не несколько функций из него, к тому же еще и оптимизированных по асм подстрочнику.

Да ну вас.

Цитата
классическом виде будет иметь 30% оверхед и размера и производительности. Иногда компилеру просто невозможно разжевать и сдвиг то через C есть намболее качесвтенный пример

Как я и писал выше, любимый пример, сдвиг через перенос.

Цитата
Насчет "вылизать" я не буду верить в это с самого начала коммерческого проекта. Самое интересное то что так говорят абсолютно все! В итоге, проект бросается и заказчику говорят, да бросьте вы свой пылесосо, КПК или телефон (к примеру) мы выпустили новый, а старый там же нет того и того, а оно вам так надо! Не ощущаете схожесть ситуаций?!

нет, не ощущаю, устал от непробиваемости, больше на разводы руками и вопросы из теории вероятности в стиле "а вот бывает" отвечать не намерян. Жду стандартного в этих случаях "оппонент слил, слив защитан".

PS: Впрочем, предлагаю пари любому ассемблерщику. Формулируем ТЗ на какой-нибудь проект средней сложности, в который не закладывается необходимотсь знаний в специфических областях и который может быть реализован в пределах простой evalboard на uC с периферией типа UART, светодиоды, кнопки и т.п., то есть в конфигурации, которую может сделать быстро любой. Я выполняю требования ТЗ на Ц, кто-либо на асм. Результаты сравниваем. Я утверждаю, что оверхед по объему быстродействию будет в пределах 30-50%, и скорее менее, чем более. Делать буду на LPC213x


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
AlexeyAS
сообщение Oct 20 2005, 10:45
Сообщение #8





Группа: Новичок
Сообщений: 9
Регистрация: 10-02-05
Пользователь №: 2 543



Цитата(Andy Mozzhevilov @ Oct 20 2005, 15:30)
Ну это как посмотреть незачем делать работу препроцессора руками wink.gif есть макросредства где более хлипкие, где наоборот настолько расширенные, что пользоваться ими только удобно.


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


э...э.... Нет ну Вы, извините, даете. Знаете я тоже люблю Си, очень люблю С++, но отрицать очевидное....... Его препроцессор те же макросы. Далеко вы уедите без препроцессора на Си? при компиляции ключ -E поставте.

По поводу макросов на ассемблере я же говорю есть разные реализации и реинкарнации препроцессора для ассемблера, может вы не все видели?

Цитата
А что Вас stdcall не устраивает уже Если не способны отследить кроссы между регистрами и на регистровую передачу не тянете - пользуйтесь и stdcall и фреймами в процедурах. Честно говоря особой проблемы не вижу.
Цитата
Так пользуйтесь, я же не агитирую. Я лишь не вижу смысла прописывать ручками то, что может сделать вычислительная машина.


Не понимаю, только что говорили о макросах и stdcall завернуть в макрос это не долго.
Собственно я о чем толкую я видел на wasm.ru как пользуются успешно очень успешно примитивным стандартным препроцессором, честно скажу так как я умею им пользоваться мне завидно, поэтому то что я пишу на Си, они пишут на ассемблере не напрягаясь. Нужно уметь пользоваться инструментом - это факт.

Цитата
аргумерты оптимизации и сверхоптимизации (asm) по порядку

a) при определенной экономии кода остается место на бесполезненную модернизацию путем soft upgrade в масштабах того же устройства как понимаете.
б) при определенной экономии ресурса (производительности) опять таки остается возможность функциональной модернизации путем того же soft upgrade.
в) остается гипотетическая возможность заказного чипа на порядок дешевле но без излиществ в ASIC - это сейчас широко практикуется.
Возразить можно что а) и б) можно успеть сделать после, но вопрос что дешевле сразу или несколько погодя?

Цитата
Заказной чип на порядок дешевле - не смешите. Сейчас контроллер ARM стоит от $2, куда дешевле?


Ну-ну. Вы все таки норовите не дочитать wink.gif

Цитата
в) остается гипотетическая возможность заказного чипа


Цитата
Знаете сколько стоит подготовка производства заказных чипов? Знаете, при каких тиражах это все начинает окупаться?


Знаю.

Цитата
Сколько раз в своей практике вы делали заказ заказных чипов?


Ноль.

Значит будем считать что с а) и б) Вы согласны wink.gif

Цитата
Что за ерунда!!! Какие еще визуал средства?! Какие мышевозения?! Что Вы, господь с вами! Или вот это:

r1 <- r2 + r3

Как это выражение относится к словосочетанию графический ассемблер?

да очень просто http://home.tula.net/algrom/russian.html

Ему такое название дали потому что он не текстовое а графическое средство.

Кстати существуют такие же средства для Си, думаете излишество?

Наличием стрелочки в пересылке? Что такое здесь r1 r2 и r3, какие сущности они выражают? В чем кайф?

ну хорошо не нравятся регистры там и подругому можно, так лучше

family <- roma + masha

wink.gif Теперь хотя бы очевидны сушности wink.gif

Вы попоробуйте - кайф он сам приходит во время работы и от хорошо сделанной работы wink.gif

Цитата
Цитата
классическом виде будет иметь 30% оверхед и размера и производительности. Иногда компилеру просто невозможно разжевать и сдвиг то через C есть намболее качесвтенный пример

Как я и писал выше, любимый пример, сдвиг через перенос.


Т.е. я так понимаю в МК это излишество да? Пользоваться им не нужно и реализация этого в кристалле бесплатный довесок?

Ну вот вам из x86 - bswap, да и вообще любые свапы, что замечено разработчиками c-- и очень простенько пределано в синтаксис Си:

i >< j


Цитата
Цитата
Насчет "вылизать" я не буду верить в это с самого начала коммерческого проекта. Самое интересное то что так говорят абсолютно все! В итоге, проект бросается и заказчику говорят, да бросьте вы свой пылесосо, КПК или телефон (к примеру) мы выпустили новый, а старый там же нет того и того, а оно вам так надо! Не ощущаете схожесть ситуаций?!

нет, не ощущаю, устал от непробиваемости, больше на разводы руками и вопросы из теории вероятности в стиле "а вот бывает" отвечать не намерян. Жду стандартного в этих случаях "оппонент слил, слив защитан".


Собственно не ожидал ничего другого.

Цитата
PS: Впрочем, предлагаю пари любому ассемблерщику.

Я не ассемблерщик. Я тот кто в чем то защищает опонентов ратающих за полное использование ресурсов.

Цитата
Формулируем ТЗ на какой-нибудь проект средней сложности, в который не закладывается необходимотсь знаний в специфических областях и который может быть реализован в пределах простой evalboard на uC с периферией типа UART, светодиоды, кнопки и т.п., то есть в конфигурации, которую может сделать быстро любой. Я выполняю требования ТЗ на Ц, кто-либо на асм. Результаты сравниваем. Я утверждаю, что оверхед по объему быстродействию будет в пределах 30-50%, и скорее менее, чем более. Делать буду на LPC213x


Я с цифрами 30-50% соглашусь заранее зачем терять время. Только не пойму что это доказывает. В рамках светодиодов спорить не очем, а от более крупного проекта вроде ОС+сотовый телефона - при том же процентном оверхеде, абсолютные цифры будут другие и они как раз таки скажутся на его цене. Или несогласны.
Go to the top of the page
 
+Quote Post
Andy Mozzhevilov
сообщение Oct 20 2005, 11:09
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206



Цитата(AlexeyAS @ Oct 20 2005, 15:45)
Цитата
Макросы - зло, которое скрывает сущность происходящих процессов.
Кроме того, нужно вызывать макросы явно, что есть ручной монотонный труд.
Нужно сосредотачиваться на реализации алгоритма, а не намелких технических подробностях, не имеющих отношения к реализации.


э...э.... Нет ну Вы, извините, даете. Знаете я тоже люблю Си, очень люблю С++, но отрицать очевидное....... Его препроцессор те же макросы. Далеко вы уедите без препроцессора на Си? при компиляции ключ -E поставте.

И в Ц макросы - зло, если их использовать вместо функций. Я думаю о чем тут речь, понятно, если вы действительно хорошо владеете Ц.

Цитата
Цитата

нет, не ощущаю, устал от непробиваемости, больше на разводы руками и вопросы из теории вероятности в стиле "а вот бывает" отвечать не намерян. Жду стандартного в этих случаях "оппонент слил, слив защитан".

Собственно не ожидал ничего другого.

жаль, что вы именно так думаете


Цитата
Цитата
PS: Впрочем, предлагаю пари любому ассемблерщику.

Я не ассемблерщик. Я тот кто в чем то защищает опонентов ратающих за полное использование ресурсов.

Я правильно понял, что если в проекте не была использована ни разу, скажем команда сдвига через перенос, то ресурсы считаются не использованными на 100% и это вас напрягает?

Цитата
Я с цифрами 30-50% соглашусь заранее зачем терять время. Только не пойму что это доказывает. В рамках светодиодов спорить не очем, а от более крупного проекта вроде ОС+сотовый телефона - при том же процентном оверхеде, абсолютные цифры будут другие и они как раз таки скажутся на его цене. Или несогласны.

Считаю, что проекты под вытесняющей ОС начинают требовать меньше вычислительных ресурсов процессора при проходе некоторой критической точки сложности проекта.


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
AlexeyAS
сообщение Oct 21 2005, 02:37
Сообщение #10





Группа: Новичок
Сообщений: 9
Регистрация: 10-02-05
Пользователь №: 2 543



Цитата
И в Ц макросы - зло, если их использовать вместо функций.


Абсолютное? Что же за категоричность то такая?!
Вы вообще то, хидеры то включаете в проекты? А я то считал что использование макросов как функций облегчает порт своего кода на чужую платформу, или вы считаете что делать тайпкастинг параметров нужно каждый раз при вызове, ну просто потому что макрос-функция абсолютное зло и религия его не позволяет использовать? А совершенно детский пример реализации Max(A,cool.gif и Min(A,cool.gif через макрос, зряшен, будем везде писать его чистую реализацию?! Бедный Ричи! wink.gif Тогда чего уж по инкапсуляции не пройтись в C++, она тоже некоторые моменты реализации скрывает, не будем использовать?

Цитата
Я думаю о чем тут речь, понятно, если вы действительно хорошо владеете Ц.


Да бросьте Вы такие вещи, я не зеленый пацан что бы меня разводить на подобном wink.gif)!
Я очень посредственно владею Си и гораздо хуже чем Си владею С++. Мне не стыдно придерживаться принципа «Чем шире круг познания, тем огромней граница с незнанием».

Цитата
Цитата

Я не ассемблерщик. Я тот кто в чем то защищает опонентов ратающих за полное использование ресурсов.


Я правильно понял, что если в проекте не была использована ни разу, скажем команда сдвига через перенос, то ресурсы считаются не использованными на 100% и это вас напрягает?


Вы знаете почему то нет, «нет» в смысле не правильно Вы меня поняли. Видимо Ваша предубежденность таки сказывается. Меня напрягает то что существует «эффективное» и «не эффективное» использование. А Вы вместо того что бы согласится, что мол да «не эффективно» мы используем ресурсы кристалла и нет в наших поделках особого изыска и красоты, воздвигаете такую ситуацию в ранг сверхнормальных «так должно быть!».
Если бы так должно быть и Си недолжна практически никогда использовать сдвиг через С (и еще кучу чего), то почему бы производителю чипов не согласится с Вами и не выпустить партию с еще более урезанной системой команд? Видимо осознает производитель что подобная способность кристалла будет востребована.
Вы же все время упираете на то что нет «кроме Си бога на земле и С++ пророк его», что с моей точки зрения совершенно необоснованно. Я вам привел пример развития как парадигмы Си (C--) так и парадигмы Асм (граф.ассемблер). Не станете же Вы отрицать что они используют ресурсы платформы в разы полнее, нет?

Цитата
Цитата
Я с цифрами 30-50% соглашусь заранее зачем терять время. Только не пойму что это доказывает. В рамках светодиодов спорить не очем, а от более крупного проекта вроде ОС+сотовый телефона - при том же процентном оверхеде, абсолютные цифры будут другие и они как раз таки скажутся на его цене. Или несогласны.


Считаю, что проекты под вытесняющей ОС начинают требовать меньше вычислительных ресурсов процессора при проходе некоторой критической точки сложности проекта.


Тьфу ты нуты…. Так оверхед то свое возьмет, плюс еще кретинизм не самых худших в мире разработчиков (например Samsung) и как пить дать придется и Вам и мне как потребителям на 1,5 тыс. лишнего переплачивать за бедную функциональность при весьма богатых возможностями потрохах. И через год дорабатывать его firmware будут пара тройка хакеров, так как о «на Си сгенерированном коде внутри» забудет даже сам самсунг. wink.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- =NIK=   ARM начинающим   Oct 12 2005, 23:09
- - iit   Цитата(=NIK= @ Oct 13 2005, 02:09)Мужики. Под...   Oct 13 2005, 02:35
- - vzyk   В ARM'е всё по проще. Там нет ни каких разделе...   Oct 13 2005, 18:52
|- - dch   Цитата(vzyk @ Oct 13 2005, 21:52)Только на С....   Oct 13 2005, 20:40
|- - iit   Цитата(vzyk @ Oct 13 2005, 21:52)Канечно, ник...   Oct 14 2005, 01:51
- - aaarrr   ЦитатаКанечно, никто в ASM зесь не програмирует...   Oct 13 2005, 21:15
|- - Andy Mozzhevilov   Цитата(aaarrr @ Oct 14 2005, 02:15)ЦитатаКане...   Oct 14 2005, 03:36
||- - Karl   Хочу написать проект на SAM7S64. До этого работал ...   Oct 14 2005, 05:59
||- - sergik_vrn   Цитата(Karl @ Oct 14 2005, 09:59)Хочу написат...   Oct 14 2005, 06:03
||- - vzn   Цитата(Karl @ Oct 14 2005, 08:59)Хочу написат...   Oct 14 2005, 07:24
|- - Stanislav   Цитата(aaarrr @ Oct 14 2005, 00:15)ЦитатаКане...   Oct 15 2005, 21:20
- - aaarrr   ЦитатаИ что, для этого есть необходимость, действи...   Oct 14 2005, 14:24
|- - sergeeff   Да прямо сам Atmel продает отладочную систему под ...   Oct 15 2005, 11:17
|- - Andy Mozzhevilov   Цитата(aaarrr @ Oct 14 2005, 19:24)ЦитатаИ чт...   Oct 17 2005, 03:29
- - Dot   Цитата(=NIK= @ Oct 13 2005, 02:09)А вот что т...   Oct 15 2005, 14:15
|- - =NIK=   Вот по делу разговор пошол Может есть какая-нибу...   Oct 15 2005, 20:50
|- - Dot   Цитата(=NIK= @ Oct 15 2005, 23:50)Ну чтобы на...   Oct 16 2005, 07:08
- - slabnoff   ЦитатаКстати, где-то тут выкладывали ее принтабель...   Oct 16 2005, 09:15
- - aaarrr   Цитата(Andy Mozzhevilov @ Oct 17 2005, 06:29)...   Oct 17 2005, 07:25
|- - Andy Mozzhevilov   Цитата(aaarrr @ Oct 17 2005, 12:25)Цитата(And...   Oct 17 2005, 07:32
- - aaarrr   Цитата(Andy Mozzhevilov @ Oct 17 2005, 10:32)...   Oct 17 2005, 08:38
|- - Andy Mozzhevilov   Цитата(aaarrr @ Oct 17 2005, 13:38)Цитата(And...   Oct 17 2005, 08:59
|- - NickS   Цитата(Andy Mozzhevilov @ Oct 17 2005, 11:59)...   Oct 17 2005, 11:02
|- - Andy Mozzhevilov   Цитата(NickS @ Oct 17 2005, 16:02)Цитата(Andy...   Oct 17 2005, 11:10
|- - NickS   Цитата(Andy Mozzhevilov @ Oct 17 2005, 14:10)...   Oct 17 2005, 23:49
|- - Andy Mozzhevilov   Цитата(NickS @ Oct 18 2005, 04:49)Судя по все...   Oct 18 2005, 05:39
|- - NickS   Я и не ожидал большого эфекта от функций вычислени...   Oct 18 2005, 07:26
|- - dxp   Цитата(NickS @ Oct 18 2005, 13:26)Я и не ожид...   Oct 18 2005, 09:15
|- - NickS   Цитата(dxp @ Oct 18 2005, 12:15)Цитата(NickS ...   Oct 18 2005, 11:25
|- - Andy Mozzhevilov   Цитата(NickS @ Oct 18 2005, 16:25)Эти функции...   Oct 18 2005, 12:00
- - jasper   Интересно, а про ARM-ы книжки на русском в природе...   Oct 17 2005, 09:06
- - aaarrr   Цитата(Andy Mozzhevilov @ Oct 17 2005, 11:59)...   Oct 17 2005, 09:16
|- - Andy Mozzhevilov   Цитата(aaarrr @ Oct 17 2005, 14:16)Цитата(And...   Oct 17 2005, 09:31
- - aaarrr   Цитата(Andy Mozzhevilov @ Oct 17 2005, 12:31)...   Oct 17 2005, 10:52
|- - Andy Mozzhevilov   Цитата(aaarrr @ Oct 17 2005, 15:52)Цитата(And...   Oct 17 2005, 11:07
- - aaarrr   Цитата(Andy Mozzhevilov @ Oct 17 2005, 14:07)...   Oct 17 2005, 11:19
|- - Andy Mozzhevilov   Цитата(aaarrr @ Oct 17 2005, 16:19)Цитата(And...   Oct 17 2005, 12:08
|- - Vic1   Цитата(Andy Mozzhevilov @ Oct 17 2005, 17:08)...   Oct 17 2005, 13:06
- - aaarrr   Цитата(Andy Mozzhevilov @ Oct 17 2005, 15:08)...   Oct 17 2005, 13:09
|- - Andy Mozzhevilov   Цитата(aaarrr @ Oct 17 2005, 18:09)Цитата(And...   Oct 17 2005, 14:52
- - aaarrr   Цитата(Vic1 @ Oct 17 2005, 16:06)Еще одна лож...   Oct 17 2005, 13:14
|- - Vic1   Цитата(aaarrr @ Oct 17 2005, 18:14)Цитата(Vic...   Oct 17 2005, 13:28
- - aaarrr   Цитата(Vic1 @ Oct 17 2005, 16:28)1) длина мас...   Oct 17 2005, 13:34
|- - Vic1   Цитата(aaarrr @ Oct 17 2005, 18:34)Так речь н...   Oct 17 2005, 13:50
- - aaarrr   Цитата(Vic1 @ Oct 17 2005, 16:50)Цитата(aaarr...   Oct 17 2005, 14:25
|- - Andy Mozzhevilov   Цитата(aaarrr @ Oct 17 2005, 19:25)Не понимаю...   Oct 17 2005, 14:39
- - Vic1   Тогда еще раз условия задачи: процессор - ?, разме...   Oct 17 2005, 14:38
- - aaarrr   Цитата(Andy Mozzhevilov @ Oct 17 2005, 17:39)...   Oct 17 2005, 14:48
|- - Vic1   Цитата(aaarrr @ Oct 17 2005, 19:48)Цитата(And...   Oct 17 2005, 15:28
- - aaarrr   Цитата(Vic1 @ Oct 17 2005, 17:38)Тогда еще ра...   Oct 17 2005, 15:27
|- - Andy Mozzhevilov   Цитата(aaarrr @ Oct 17 2005, 20:27)Цитата(Vic...   Oct 18 2005, 03:11
- - Vic1   Хм, издержки реального времени (почти одновременны...   Oct 17 2005, 15:31
- - aaarrr   Цитата(Vic1 @ Oct 17 2005, 18:28)Опять слишко...   Oct 17 2005, 15:40
- - Vic1   Прерываюсь на какое-то время. Пора домой   Oct 17 2005, 15:44
- - Dot   Ничего себе -- " ARM начинающим"! ...   Oct 17 2005, 16:55
|- - Andy Mozzhevilov   Цитата(Dot @ Oct 17 2005, 21:55)Ничего себе...   Oct 18 2005, 03:21
- - aaarrr   Цитата(Dot @ Oct 17 2005, 19:55)Поменяли комп...   Oct 17 2005, 23:40
- - sergeeff   Вроде как подобные споры - дела давно прошедших дн...   Oct 18 2005, 05:44
- - aaarrr   Цитата(Andy Mozzhevilov @ Oct 18 2005, 06:11)...   Oct 18 2005, 12:29
- - Vic1   To aaarrr Весь день I-neta не было (и IARa в то...   Oct 18 2005, 15:48
- - aaarrr   Круто, только write-back не учитывается и выход кр...   Oct 18 2005, 16:41
|- - Vic1   To aaarrr Больше сооптимизировать не удалось...   Oct 19 2005, 09:55
|- - iosifk   Цитата(Vic1 @ Oct 19 2005, 12:55)To aaarrr ...   Oct 19 2005, 10:32
- - VladislavS   То же от IAR. Оценивать хорошо это или плохо не бу...   Oct 18 2005, 17:32
|- - iit   А что, писание на асме это "западло"? Я ...   Oct 19 2005, 05:34
||- - Andy Mozzhevilov   Цитата(iit @ Oct 19 2005, 10:34)А что, писани...   Oct 19 2005, 10:37
||- - NickS   Цитата(Andy Mozzhevilov @ Oct 19 2005, 13:37)...   Oct 19 2005, 15:22
||- - Andy Mozzhevilov   Цитата(NickS @ Oct 19 2005, 20:22)Цитата(Andy...   Oct 20 2005, 04:59
||- - dxp   Цитата(NickS @ Oct 19 2005, 21:22)Как я замеч...   Oct 20 2005, 06:22
|- - Andy Mozzhevilov   Цитата(VladislavS @ Oct 18 2005, 22:32)То же ...   Oct 19 2005, 10:49
|- - VladislavS   Цитата(Andy Mozzhevilov @ Oct 19 2005, 13:49)...   Oct 20 2005, 04:14
|- - Andy Mozzhevilov   Цитата(VladislavS @ Oct 20 2005, 09:14)Цитата...   Oct 20 2005, 05:03
|- - VladislavS   Цитата(Andy Mozzhevilov @ Oct 20 2005, 08:03)...   Oct 20 2005, 05:47
- - Vic1   Quote - это лист содержания описания компилятора (...   Oct 19 2005, 10:39
- - aaarrr   Цитата(Vic1 @ Oct 19 2005, 12:55)To aaarrr Б...   Oct 19 2005, 12:08
|- - Andy Mozzhevilov   Цитата(aaarrr @ Oct 19 2005, 17:08)Цитата(Vic...   Oct 19 2005, 12:33
- - Vic1   To [/B]aaarrr[B] ЦитатаДа, memcpy умнее написана, ...   Oct 19 2005, 12:31
|- - Ken@t   Ваш креатив - образчик мысли, слога, До Вас такого...   Oct 19 2005, 13:41
|- - AlexeyAS   ЦитатаНи кто не сопротивляется по поводу иногда ма...   Oct 20 2005, 03:51
- - Vic1   Хм, а в обратную сторону (повышения уровня)? Разве...   Oct 19 2005, 12:52
- - Vic1   Добавление к квалификации и молодежного сленга ...   Oct 19 2005, 13:16
- - aaarrr   Цитата(Vic1 @ Oct 19 2005, 16:16)Добавление к...   Oct 19 2005, 14:28
- - Vic1   Добавление к теме о квалификации (и против молодеж...   Oct 19 2005, 14:37
- - aaarrr   Цитата(Vic1 @ Oct 19 2005, 17:37)Добавление к...   Oct 19 2005, 14:56
|- - Vic1   Цитата(aaarrr @ Oct 19 2005, 19:56)Цитата(Vic...   Oct 20 2005, 03:36
- - IgorKossak   Возвращаясь к теме, вот на мой взгляд неплохой сай...   Oct 20 2005, 07:18
- - slabnoff   2 dxp - Полностью поддерживаю! Немного о свое...   Oct 20 2005, 08:20
|- - AlexeyAS   ЦитатаГоду в 1998 начал применять в своих разработ...   Oct 20 2005, 09:48
|- - Andy Mozzhevilov   Сейчас я уже дома, сыт и доволен, поэтому могу нес...   Oct 20 2005, 15:12
- - Vic1   То AlexeyAS Ну уж про Algoritm Bilder - это совс...   Oct 20 2005, 11:47
- - AlexeyAS   ЦитатаТо AlexeyAS Ну уж про Algoritm Bilder - эт...   Oct 21 2005, 02:46
2 страниц V   1 2 >


Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


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


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