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

 
 
26 страниц V  « < 14 15 16 17 18 > »   
Reply to this topicStart new topic
> Просто мнение, АВР -> АРМ
Xenia
сообщение Jun 18 2009, 11:18
Сообщение #226


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(_Pasha @ Jun 18 2009, 09:42) *
С чего Вы взяли? Просто пример _Bool наглядно показывает несуразности в представлении данных

Несуразности возникают только в сознании smile.gif, когда путают переменную типа bool и операцию с битами. ЛЮБАЯ ПЕРЕМЕННАЯ - это одна или несколько ячеек памяти, а потому быть тождественной с битом она принципиально не может. А если нужны операции с битами, то это делается не с помощью bool-типа, а с помощью побитово расписанной структуры. Например:
Код
struct mystruct
  bool       a : 1;
  bool       b : 1;
  bool       c : 1;
  bool       d : 1;
  bool       e : 1;
  bool       f : 1;
  bool       g : 1;
  bool       h : 1;
) flag;

Вот тут уже все становится ясно и компилятору, и процессору, и программисту - видно, что в памяти ассигнован блок в один байт (8 бит), из которого велено таскать биты.

Цитата(_Pasha @ Jun 18 2009, 09:42) *
В этом виноват компилятор. В том, что процессор один бит из памяти достать-таки может, а компиляторописатели не могут обеспечить автоматическое размещение однобитовых переменных ...

Ни у одного процессора в мире нет в памяти однобитных переменных. И это уже потому, что память побитно не адресуется. Однако компиляторы обычно предоставляют пользователям удобные способы работы как с битами, так и с битовыми полями (см. мою предыдущую реплику). Однако надо понимать, что делается это "через ухо", т.е. компилятор достает слово памяти целиком, а потом вырезает из него нужные биты. Модификация бита стоит еще дороже - сначала процессор прочитывает целиком слово памяти, к которому этот бит относится, при помощи операций or и and модифицирует в нем нужный бит или группу битов, а затем записывает модифицированное слово обратно в память.
Инструкции ряда микропроцессоров (и AVR в том числе) позволяют модифицировать отдельные биты в собственных регистрах и портах, только в этом случае битовые операции над ними реализуются эффективно. Поэтому битовые флаги лучше всего держать в регистрах, а не в памяти. Во всех же остальных случаях, выгоднее не экономить на спичках, а заводить переменную bool типа. Такая кодировка действительно оказывается избыточной, зато ее применение компенсируется максимально высокой скоростью использования.
Можно с полным основанием считать, что тип bool является атрибутом оптимизации как по скорости, так и по объему кода, когда как его недостаток состоит лишь лишнем расходе памяти.

Сообщение отредактировал Xenia - Jun 18 2009, 11:23
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 18 2009, 11:24
Сообщение #227


Гуру
******

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



Цитата(Xenia @ Jun 18 2009, 15:18) *
Ни у одного процессора в мире нет в памяти однобитных переменных.

Ну, вообще-то у 51-го ядра есть Bit Addressable Area и набор команд для работы с ней.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jun 18 2009, 11:40
Сообщение #228


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(BORIV @ Jun 18 2009, 12:14) *
Благодаря удобству программирования

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

Как и у всех.
Цитата
схемотехнике,

Оооооо! А что это?



Цитата(Xenia @ Jun 18 2009, 14:18) *
удобные способы работы как с битами, так и с битовыми полями (см. мою предыдущую реплику). Однако надо понимать, что делается это "через ухо", т.е. компилятор достает слово памяти целиком, а потом вырезает из него нужные биты. Модификация бита стоит еще дороже - сначала процессор прочитывает целиком слово памяти, к которому этот бит относится, при помощи операций or и and модифицирует в нем нужный бит или группу битов, а затем записывает модифицированное слово обратно в память.

Лениво было отвечать на предыдущее творение, но понятия организации доступа к памяти у Вас осталить на уровне восьмибитовиков, как минимум доступ к единицам менее ширины шины RAM и имеет место быть в обязательном порядке и для сборки из узкой шины памяти процессор не использует никаких специальных команд - это проблема контроллера памяти.
Цитата
Можно с полным основанием считать, что тип bool является атрибутом оптимизации как по скорости, так и по объему кода, когда как его недостаток состоит лишь лишнем расходе памяти.

А хоть немного почитать топик и подумать?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Xenia
сообщение Jun 18 2009, 12:05
Сообщение #229


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(zltigo @ Jun 18 2009, 15:40) *
А хоть немного почитать топик и подумать?


А что, разве АРМы превосходят АВРы в том, что биты поштучно из памяти таскают? smile.gif
Go to the top of the page
 
+Quote Post
mikki
сообщение Jun 18 2009, 12:10
Сообщение #230


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 28-03-07
Пользователь №: 26 559



Разговор как всегда уходит в сторону, о чем не забывают напоминать некоторые участники, особенно хорошо это получилось у Ксении, душевно так и логично.
И так по-порядку.
Самый первый пост от IGK навеян просто грустью по поводу прошедшей юности!!! Старые лохматые джинсы, в которых было так удобно тогда, а что сейчас...? - штанишки просто стали просто малы! Метания в рядах АВР-пользователей понятны, грустно прощаться с полюбившейся платформой.
Да мы вырасли на AVR-ках и сейчас на фоне новых требований к продукции разные там интерфейсы, GUI и т.д мощности процессора, надо это признать не хватает. Конечно есть устройства в которых ничего этого не требуется и естественно AVR будет жить, хотя бы как AtX _Mega (думаю по новому техпроцессу устройства получаются конкурентнее классики, поэтому такой соотношение цен на старые и новые модели) и нас просто плавно пытаются перевести на новую микруху. Эх раньше бы все это и не было бы такого разговора сейчас переходить на что то или нет. Например в рядах ПИК-поклонников такого метания нет, там все спокойно, вовремя появился PIC24, dsPIC30, dsPIC33, а теперь и PIC32.

Может быть нам (АВР-пользователям ) повезло меньше чем ПИК-пользователям?

Попробую дать ответ в следующем посте. И так, куда движется мир?
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Jun 18 2009, 12:21
Сообщение #231


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

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



Цитата(mikki @ Jun 18 2009, 16:10) *
Может быть нам (АВР-пользователям ) повезло меньше чем ПИК-пользователям?

Точно. Между AVR и AVR32 не хватает AVR16.
После изучаемого в стандартном курсе 8080 (и нашего 580) я от AVR просто тащился.
Пока не потрогал MSP.
Теперь любое упоминание об изделиях атмела вызывает кислую гримасу на лице.


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
sonycman
сообщение Jun 18 2009, 12:23
Сообщение #232


Любитель
*****

Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695



Цитата(Xenia @ Jun 18 2009, 16:05) *
А что, разве АРМы превосходят АВРы в том, что биты поштучно из памяти таскают? smile.gif

Например, кортексы могут адресовать единственный бит в памяти laughing.gif
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 18 2009, 12:23
Сообщение #233


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

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



Цитата
Да мы вырасли на AVR-ках


Вы выросли. Вот и мечетесь smile.gif Я, например, к моменту первого ознакомления с AVR (в районе 2000ного года) очень плотно работал с PowerPC (не в микроконтроллерном варианте). Так что плотное пересаживание на восьмибитные камни для меня было серьезным даунгрейдом smile.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Сибирь
сообщение Jun 18 2009, 12:25
Сообщение #234


Участник
*

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



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


время загрузки у авр микросекунды, а ваше арм такое разве может?
Go to the top of the page
 
+Quote Post
blackfin
сообщение Jun 18 2009, 12:26
Сообщение #235


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(mikki @ Jun 18 2009, 16:10) *
Да мы вырасли на AVR-ках и сейчас на фоне новых требований...

Кто это "мы"? biggrin.gif

Или, куда делись те, кто вырос на К580, Z80 и AT89S.. (или i4004)?
Go to the top of the page
 
+Quote Post
sonycman
сообщение Jun 18 2009, 12:29
Сообщение #236


Любитель
*****

Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695



Цитата(Rst7 @ Jun 18 2009, 16:23) *
Я, например, к моменту первого ознакомления с AVR (в районе 2000ного года) очень плотно работал с PowerPC (не в микроконтроллерном варианте). Так что плотное пересаживание на восьмибитные камни для меня было серьезным даунгрейдом smile.gif

А до этого были и Z80 (восьмибитовик?), и MC680х0?
Вам было не привыкать. laughing.gif
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Jun 18 2009, 12:31
Сообщение #237


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

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



Цитата(blackfin @ Jun 18 2009, 16:26) *
Или, куда делись те, кто вырос на К580, Z80 и AT89S.. (или i4004)?

Никуда не делись.
Выросли...


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 18 2009, 12:39
Сообщение #238


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

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



Цитата
А до этого были и Z80 (восьмибитовик?), и MC680х0?


А еще был K580 (факультативно, но результативно - кличку я еще в те времена заработал) и PDP-11 (до Z80). Так что и там даунгрейд biggrin.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jun 18 2009, 13:03
Сообщение #239


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Сибирь @ Jun 18 2009, 15:25) *
но вот время реакции на событие у авр несколько сотен наносекунд, а ваше арм такое разве может?
время загрузки у авр микросекунды, а ваше арм такое разве может?

smile.gif
Цитата(Xenia @ Jun 18 2009, 15:05) *
А что, разве АРМы превосходят АВРы в том, что биты поштучно из памяти таскают? smile.gif

Любые 16/32 бит контроллеры "таскают" не так, как вы живописали по ширине шины, а в том числе и побайтно.
А подумать это относилось конкретно к тому, в ответ на что было написано, а не по поводу Ваших шинных размышлизмов.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Jun 18 2009, 13:44
Сообщение #240


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(MrYuran @ Jun 18 2009, 15:21) *
Пока не потрогал MSP.
Теперь любое упоминание об изделиях атмела вызывает кислую гримасу на лице.

А я вот видел людей, которые с MSP пересели на AVR и дико плевались от MSP. Кстати, в том числе и от их хлипкости. Так что всётаки это сугубо субъективно всё. Я, от MSP, никакого экстаза не получил что-то.
Ни система команд, ни переферия, ни наладка чёто впечатления не произвела. Прорывов в производительности тоже не ощутил. Короче те же грабли - вид сбоку. Тот же M16 круче на порядок. Сейчас ещё пикоманы подтянутся. со своими DS и 32-ыми.

Конечно, каждый камень свою нишу занимает, и есть неочевидные применения. Так например тот же сименс SC186 до сих пор широко применяется. Хот тоже как то мало смысла в этом видится. То есть просматриваются шкурные, корпоративные и прочие интересы. Думаю что TI принадлежит к компаниям, которые "продавят" на рынок любой камень. А столь малая ниша MSP как раз указывает на слабость решения.
Go to the top of the page
 
+Quote Post

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

 


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


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