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

 
 
> Прибавить константу к регистру!
777777
сообщение Mar 6 2008, 08:11
Сообщение #1


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

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Есль команды subi, sbci, где же addi, adci?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
zhevak
сообщение Mar 6 2008, 20:52
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 723
Регистрация: 29-08-05
Из: Березовский
Пользователь №: 8 065



Цитата(starter48 @ Mar 6 2008, 14:07) *
Этот процессор задумывался для работы с компиляторами языков высого уровня.
Когда пишешь на Си, о таких мелочах и не задумываешься smile.gif
На асме в наше время пишут только критичные участки кода.


Абсолютно верно!

Иногда все-таки нет-нет, да появляются люди, которым приходится объяснять с самого начала, от Адама и Евы. Ну что ж, терпите.

Ядро AVR уникальное. Разрабатывалось оно не в одиночку "железячниками", а в тесном контакте с программистами, которые пишут компиляторы. И не просто компиляторы, а Си-компиляторы. Это было сделано преднамеренно. ATMEL (и не только она одна) проанализировала стоимость конечного изделий, и пришла к выводу, что подавляюще большую долю при создании девайса занимает стоимость разработки программного обеспечениия. Итенденция эта год от года только увеличивается.

Если б АТМЕЛ заботилась только о своих проблемах, она бы родила что-то другое. Но АТМЕЛ играет в многоходовые игры, и она озаботилась уменьшением себестоимости изделий своих клиентов в целом. А поскольку наибольшая стоимость в разработке изделий падает на ПО, то было бы не плохо это как-то уменьшить. Как?

Еще один анализ, теперь уже касающийся разработки ПО. Программисты сейчас пишут ПО в основном на Си. Почему? -- Да, опять же исходя из экономических сооображений! Программа написанная на Си будет стоить дешевле, проги написанной на ассемблере. (Я сейчас не хочу вдваться в дискуссию по поводу отвязанных от типа ядра программистов Си-шников, и жестко привязанных к типу ядра программистов-ассеблеристов, и количества их на рынке труда.) Важно понять то, что если удастся сделять ядро такое, что при написании программ на Си будет генерироваться объем кода незначительно худший, чем при написании программ на ассемблере, то это будет весьма востребованное на рынке ядро. АТМЕЛу удалось сделать такое ядро.

Резюме будет следущее.

Господа-товарищи, АВР -- уникальное ядро. Оно "заточено" под Си-шное программирование. А то обстоятельство, что для АВР можно писать на ассемблере, так это факультативно, хотите -- пишите!

Если "полистать" и-нет, то можно заметить, что для АВР программы в основном люди пишут на Си. Как сказал starter48, только критические участки кода пишутся на асме. И такой подход выбран это не ради религиозных войн программистов, а ради снижения себестоимости изделия. Но жизнь -- богатая штука, и порой встречаются люди (кустари, волки-одиночки), которые неповязаны на экономический фактор, не озабочены вопросами прибыли и себестоимости. В основном это люди -- любители или студенты, т.е. люди не связанные с производством. Конечно, им сложно понять специфику АВР-ядра.


// Извините, если это было очень долго и нудно.

Что касается высказывания "условные пропуски оказались какими-то странными", то опять-таки надо смотреть несколько глубже.

Вместо подробного описания здесь, я очень рекомендую прочитать серию статей И.Каршенбойма http://www.compitech.ru/html.cgi/rubrikator/micros.htm

Хотя читать их несколько сложно... (мне, как минимум, несколько раз по ходу чтения приходила мысль задвинуть на них, но я упорно вгрызался в проблему. Сейчас я нисколько не жалею об этом. И более того, я даже рекомендую их к прочтению.)

Итак, хотя читать эту серию статей сложно, и специфика там не совсем наша, но автор четко расписываеет почему именно в таком направлении идет развитие ядер. Чем хороши файловые регистровы, почему сейчас использубтся два стека (отдельный стек для адресов возвратов и отдельный стек для аргументов функций), чем выгодны "странные условные пропуски", почему Гарвардская архитектура работает быстрее Фон-Неймановской, и т.д.

Читайте, и не смотрите на то, что многое покажется вам не понятным. Со временем вы поймете.

Удачи!

Сообщение отредактировал zhevak - Mar 6 2008, 20:52


--------------------
Хочешь рассмешить Бога -- расскажи ему о своих планах!
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- 777777   Прибавить константу к регистру!   Mar 6 2008, 08:11
- - starter48   Цитата(777777 @ Mar 6 2008, 14:11) Есль к...   Mar 6 2008, 08:26
|- - 777777   Цитата(starter48 @ Mar 6 2008, 11:26) Отн...   Mar 6 2008, 08:38
|- - SasaVitebsk   Цитата(777777 @ Mar 6 2008, 12:38) Мда, м...   Mar 6 2008, 08:50
||- - vet   Цитата(SasaVitebsk @ Mar 6 2008, 11:50) П...   Mar 6 2008, 09:08
||- - 777777   Цитата(SasaVitebsk @ Mar 6 2008, 11:50) А...   Mar 6 2008, 10:19
||- - defunct   Цитата(777777 @ Mar 6 2008, 12:19) Ага, н...   Mar 6 2008, 11:11
|||- - rx3apf   Цитата(defunct @ Mar 6 2008, 14:11) А зач...   Mar 6 2008, 11:46
|||- - ae_   Цитата(rx3apf @ Mar 6 2008, 20:46) IMHO, ...   Mar 6 2008, 15:37
|||- - Andrew O. Shadoura   Цитата(rx3apf @ Mar 6 2008, 13:46) Если б...   Mar 10 2008, 04:07
||- - SasaVitebsk   Цитата(777777 @ Mar 6 2008, 14:19) Условн...   Mar 6 2008, 22:03
||- - aesok   Цитата(SasaVitebsk @ Mar 7 2008, 01:03) 1...   Mar 6 2008, 22:56
||- - SasaVitebsk   Цитата(aesok @ Mar 7 2008, 02:56) В идеал...   Mar 6 2008, 23:55
||- - 777777   Цитата(SasaVitebsk @ Mar 7 2008, 02:55) К...   Mar 8 2008, 18:12
||- - SasaVitebsk   Цитата(777777 @ Mar 8 2008, 22:12) Думаю ...   Mar 9 2008, 15:22
||- - =GM=   Цитата(SasaVitebsk @ Mar 9 2008, 15:22) О...   Mar 9 2008, 16:47
||- - SasaVitebsk   Цитата(=GM= @ Mar 9 2008, 20:47) Это был ...   Mar 9 2008, 17:23
||- - =GM=   Цитата(SasaVitebsk @ Mar 9 2008, 17:23) К...   Mar 10 2008, 11:50
|- - KRS   Цитата(777777 @ Mar 6 2008, 11:38) Мда, м...   Mar 6 2008, 09:05
|- - starter48   Цитата(777777 @ Mar 6 2008, 14:38) Мда, м...   Mar 6 2008, 09:07
- - Rst7   Цитатаtst r0 skip if pl neg r0 А какая разница с ...   Mar 6 2008, 10:26
- - Brutaller   Цитата(ae_ @ Mar 6 2008, 18:37) tavrasm у...   Mar 6 2008, 18:41
|- - Nanobyte   Цитата(Brutaller @ Mar 6 2008, 21:41) Да ...   Mar 6 2008, 19:50
- - Lepeksiy   GNU assembler (в том числе "as.exe" из к...   Mar 6 2008, 19:31
- - Brutaller   Цитата(Lepeksiy @ Mar 6 2008, 22:31) GNU ...   Mar 6 2008, 19:43
|- - Lepeksiy   Цитата(Brutaller @ Mar 6 2008, 21:43) А ч...   Mar 6 2008, 20:21
- - Brutaller   Цитата(Nanobyte @ Mar 6 2008, 22:50) Прил...   Mar 6 2008, 19:59
|- - aesok   Цитата(zhevak @ Mar 6 2008, 23:30) ... Ра...   Mar 6 2008, 21:00
|- - zhevak   Цитата(aesok @ Mar 7 2008, 02:00) Это Вы ...   Mar 6 2008, 22:08
|- - singlskv   Цитата(zhevak @ Mar 7 2008, 01:08) 1. ...   Mar 6 2008, 22:44
|- - zhevak   ЦитатаЯ думаю, что приведенный Вами список будет п...   Mar 6 2008, 23:17
|- - aesok   Цитата(zhevak @ Mar 7 2008, 02:17) Считаю...   Mar 7 2008, 00:27
- - SasaVitebsk   PS: Ещё одно дополнение. Вот выдержка из последнег...   Mar 7 2008, 00:29
|- - aesok   ЦитатаОтветьте просто. Какой МК, по-вашему идеальн...   Mar 7 2008, 00:55
|- - vet   Цитата(aesok @ Mar 7 2008, 03:55) Разрабо...   Mar 7 2008, 08:22
- - Дон Амброзио   Цитата(777777 @ Mar 6 2008, 11:11) Есль к...   Mar 7 2008, 07:30
- - Rst7   ЦитатаА по-моему, у всего своя причина должна быть...   Mar 9 2008, 19:45
- - SasaVitebsk   Да. Вот ведь прикол. Неоднократно удивлялся. Хоро...   Mar 9 2008, 23:56
|- - rezident   Цитата(SasaVitebsk @ Mar 10 2008, 04:56) ...   Mar 10 2008, 00:11
- - Rst7   ЦитатаВ pdp-11 для любого обмена использовалась ОД...   Mar 10 2008, 12:05
|- - Дон Амброзио   Цитата(Rst7 @ Mar 10 2008, 15:05) никто н...   Mar 10 2008, 12:20
|- - =GM=   Цитата(Rst7 @ Mar 10 2008, 12:05) А в чем...   Mar 10 2008, 13:28
|- - Дон Амброзио   Цитата(=GM= @ Mar 10 2008, 16:28) Положим...   Mar 10 2008, 13:38
|- - =GM=   Цитата(Дон Амброзио @ Mar 10 2008, 13:38)...   Mar 10 2008, 14:01
|- - Дон Амброзио   Цитата(=GM= @ Mar 10 2008, 17:01) Не на ч...   Mar 10 2008, 19:18
|- - KRS   Цитата(Дон Амброзио @ Mar 10 2008, 22:18)...   Mar 10 2008, 20:43
- - Rst7   ЦитатаНикакого сравнения с ассемблером ибм370 Вы,...   Mar 10 2008, 18:46
|- - =GM=   Цитата(Rst7 @ Mar 10 2008, 18:46) Вы, вид...   Mar 10 2008, 23:29
|- - Baser   Цитата(=GM= @ Mar 11 2008, 01:29) И, пожа...   Mar 11 2008, 15:24
|- - =GM=   Цитата(Baser @ Mar 11 2008, 15:24) забав...   Mar 11 2008, 17:46
- - SasaVitebsk   2 =GM= Вот я и говорю, что при использовании комп...   Mar 10 2008, 20:41
- - Rst7   ЦитатаВот, например, команда JMP @20(R1) может быт...   Mar 11 2008, 06:36
|- - =GM=   Цитата(Rst7 @ Mar 11 2008, 06:36) Просто ...   Mar 11 2008, 13:26
- - Rst7   ЦитатаНемного вы недопоняли, и не так сделали. Зде...   Mar 11 2008, 14:19
|- - =GM=   Цитата(Rst7 @ Mar 11 2008, 14:19) Да, пар...   Mar 11 2008, 17:22
|- - singlskv   Цитата(=GM= @ Mar 11 2008, 20:22) Не отве...   Mar 11 2008, 18:18
|- - =GM=   Цитата(singlskv @ Mar 11 2008, 18:18) Неп...   Mar 11 2008, 21:35
- - Rst7   ЦитатаЯ читаю правильно слева-направо "игрек ...   Mar 11 2008, 17:30
- - IgorKossak   Складывается впечатление, господа, что =GM= и Rst7...   Mar 12 2008, 08:06
- - Rst7   Да сам вопрос то был Цитатагде же addi, adci? Во...   Mar 12 2008, 08:37
|- - 777777   А где же "исключающее ИЛИ" с константой?...   Mar 19 2008, 06:34
|- - IgorKossak   Цитата(777777 @ Mar 19 2008, 08:34) А где...   Mar 19 2008, 08:45
|- - 777777   Цитата(IgorKossak @ Mar 19 2008, 11:45) И...   Mar 19 2008, 09:57
- - Rst7   ЦитатаНу, в общем, да. Я надеялся, что в атмеле та...   Mar 19 2008, 10:13
|- - 777777   Цитата(Rst7 @ Mar 19 2008, 13:13) Именно ...   Mar 19 2008, 10:19
|- - Дон Амброзио   Цитата(777777 @ Mar 19 2008, 13:19) Не по...   Mar 19 2008, 10:26
- - Rst7   ЦитатаА вот то, что таким образом можно инвертнуть...   Mar 19 2008, 10:30
|- - Дон Амброзио   Цитата(Rst7 @ Mar 19 2008, 13:30) Так учи...   Mar 19 2008, 10:39
|- - KRS   Цитата(Rst7 @ Mar 19 2008, 13:30) Так учи...   Mar 19 2008, 10:47
- - IgorKossak   Цитата(Дон Амброзио @ Mar 19 2008, 12:39)...   Mar 19 2008, 12:38
- - Nanobyte   Эта фича ещё есть у Tiny2313. Найти модели, в кото...   Mar 20 2008, 18:13
- - =GM=   Цитата(Nanobyte @ Mar 20 2008, 18:13) В р...   Mar 20 2008, 21:59
- - IgorKossak   Цитата(Nanobyte @ Mar 20 2008, 20:13) Эта...   Mar 21 2008, 06:46


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

 


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


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