|
Переход с ASM на С, книги, советы |
|
|
|
May 22 2009, 03:39
|
Участник

Группа: Участник
Сообщений: 53
Регистрация: 5-01-09
Из: Красноярск
Пользователь №: 42 941

|
Уже год пишу на АСМе для AVR, для повышения квалификации, хочу освоить и С. какие могут быть рекомендации, если в данный момент уровень знаний о С никакой подскажите какие книги лучше читать, может есть какие нибудь экспресс методики по освоению языка.
|
|
|
|
|
May 22 2009, 05:43
|
Участник

Группа: Свой
Сообщений: 48
Регистрация: 27-09-06
Из: г. Москва
Пользователь №: 20 735

|
для начала Керниган и Ритчи. http://khpi-iip.mipk.kharkiv.edu/library/pgm/kr/а дальше уже сам, разбираясь в чужих кодах и примерах
|
|
|
|
|
May 22 2009, 06:11
|
Участник

Группа: Участник
Сообщений: 53
Регистрация: 5-01-09
Из: Красноярск
Пользователь №: 42 941

|
Спасибо, к сведению принял! в общем старанье и труд... ну и как завещал великий Ленин =)
а еще меня волнует очень-очень глупый вопрос - есть какая-нибудь разница м/у С, С+ и С++?
|
|
|
|
|
May 22 2009, 06:53
|
Участник

Группа: Участник
Сообщений: 53
Регистрация: 5-01-09
Из: Красноярск
Пользователь №: 42 941

|
душевное спокойствие востановлено )
|
|
|
|
|
May 22 2009, 07:08
|
Знающий
   
Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112

|
Цитата(sheld @ May 22 2009, 09:53)  душевное спокойствие востановлено ) Можно было и раньше, в http://electronix.ru/forum/index.php?showtopic=20372&hl=там есть ссылка на Название: Программирование на языке C для AVR и PIC микроконтроллеров Автор: Ю.А. Шпак Издательство: МК-Пресс Год: 2006 Страниц: 400 Формат: djvu Размер: 9.20 Мб
|
|
|
|
|
May 22 2009, 09:13
|

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

|
Цитата(HardJoker @ May 22 2009, 11:26)  Хм-м... написание софта на ассемблере будет по-сложнее сишных упражнений. Написание "моргалки светодиодом" на ASM, впрочем как и на Си, не есть ни исскуство ни упражнение для ума. Поскольку, к сожалению, очень часто писание на АСМ останаливается на уровне "очень продвинутая моргалка светодиодом", то.... Я бы совершенно не гнул пальцы по поводу "сишных упражнений"  . Оборотная сторона ASM писания - на любом языке можно писать и пишут  , как на ASM, только это ЖОПА, хотя очень многие остановившиеся в развитии на ASM этого не понимают. Для понимания, ну как минимум, надо все-же надо начать занисматься "сишными упражнениями", да и C++ тоже.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
May 22 2009, 18:19
|
Cундук
    
Группа: Участник
Сообщений: 1 478
Регистрация: 13-11-06
Из: Ростов-на-Дону
Пользователь №: 22 269

|
Цитата(zltigo @ May 22 2009, 13:13)  Написание "моргалки светодиодом" на ASM, впрочем как и на Си, не есть ни исскуство ни упражнение для ума. Поскольку, к сожалению, очень часто писание на АСМ останаливается на уровне "очень продвинутая моргалка светодиодом", то.... Я бы совершенно не гнул пальцы по поводу "сишных упражнений"  . Оборотная сторона ASM писания - на любом языке можно писать и пишут  , как на ASM, только это ЖОПА, хотя очень многие остановившиеся в развитии на ASM этого не понимают. Для понимания, ну как минимум, надо все-же надо начать занисматься "сишными упражнениями", да и C++ тоже. При написании программ на ASM много времени уходит на сам ASM. Тем не менее. Подобный софт при правильном расположении комментариев - вполне читаем и сопровождаем. Тому пример - мнемокод PLC, на котором ваяет свою нетленку достаточно большое количество разнообразного по уровню интеллекта и опыту народа во всем мире. Могли бы и там сделать нечто, похожее на С. Однако ж по сей день никто ничего в этом направлении не делал и не собирается. Так что есть люди, считающие, что ASM - вовсе не ЖОПА, а несколько иной орган. С при правильном к нему отношении - язык самодокументируемый, требующий минимума комментариев. Не говоря уже о С++, позволяющему пользоваться отработанными чужими решениями, не вникая особо в их "внутренности". Модифицировать их под собственные нужды. Ну и т. д. Так, что здесь, ПМСМ, все определяется только поставленной задачей.
Сообщение отредактировал Прохожий - May 22 2009, 18:21
|
|
|
|
|
May 22 2009, 19:48
|

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

|
Цитата(Прохожий @ May 22 2009, 21:19)  Подобный софт при правильном расположении комментариев - вполне читаем и сопровождаем. До тех пор, пока обширные комментарии соответствут текущей реальности а не предыдущей. Особенно хорошо смотрятся "правильные" комментарии к ошибочному коду. Комментарии не есть панацея, для ASM особенно. Цитата Так что есть люди, считающие, что ASM - вовсе не ЖОПА, а несколько иной орган. Перечитайте внимательно написанное мной. Там нет этого слова по отношению к ASM.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
May 22 2009, 21:23
|
Cундук
    
Группа: Участник
Сообщений: 1 478
Регистрация: 13-11-06
Из: Ростов-на-Дону
Пользователь №: 22 269

|
Цитата(zltigo @ May 22 2009, 23:48)  Перечитайте внимательно написанное мной. Там нет этого слова по отношению к ASM. Я и имел в виду не сам ASM, как таковой, а текст на ЯВУ в стиле ASM. Прошу прощения за нечеткость изложения. Цитата(zltigo @ May 22 2009, 23:48)  До тех пор, пока обширные комментарии соответствут текущей реальности а не предыдущей. Особенно хорошо смотрятся "правильные" комментарии к ошибочному коду. Комментарии не есть панацея, для ASM особенно. Посмотрите тексты программ на IL или LD для PLC от SIEMENS, к примеру. Все достаточно хорошо структурировано. Система сама предлагает расположить комментарии в нужных местах. А то, о чем Вы говорите, пресекается системой контроля версий. Более того, там есть средства, позволяющие закрепить отработанные решения в виде различных функциональных блоков. На мой взгляд, проблема все-таки лежит не в ASM или С, а в неком уровне абстрагирования самой программы от внешней среды. По ряду причин программист не хочет отходить от "железа" и пишет "в стиле ASM". В некотрых случаях, типа PLC, это просто не нужно. Ассоциации здесь достаточно примитивны - датчик -> вход -> булева переменная. Т. е. аналог "ногодрыжества" в гипертрофированной форме. Более того, само железо уникально, технические решения не требуют повторения. В следующем проекте все будет по-другому. ЯВУ в этом случае просто вреден, ПМСМ, опять же. С другой стороны, все люди разные. Кто-то может абстрагироваться от внешней конкретики, а кто-то нет. Чисто физически... Просто не дано свыше. Точно так же, как кто-то не может опуститься до уровня отдельных битиков. На мой взгляд, тот или иной стиль определяется сочетанием кучи факторов, начиная от самой задачи и заканчивая чертами характера конкретного индивидуума.
|
|
|
|
|
May 23 2009, 04:06
|
deleted
   
Группа: Свой
Сообщений: 555
Регистрация: 28-08-05
Пользователь №: 8 024

|
Цитата(Прохожий @ May 23 2009, 00:23)  .. Посмотрите тексты программ на IL или LD для PLC от SIEMENS, к примеру.... Так сложилось, что жисть заставила в очередной раз открывать учебник, начал сегодня листать Н.П. Деменков "Языки программирования промышленных контроллеров". Нахожусь пока в смятении и недоумении, особенно глядя на LD  , у них что там, интерпретатор в ПЛК сидит? Возможно, нужно было начать свою ветку, но пока воздержусь. Уж простите, что не совсем по теме топика.
|
|
|
|
|
May 23 2009, 05:44
|
Профессионал
    
Группа: Свой
Сообщений: 1 719
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528

|
Цитата(INT1 @ May 23 2009, 10:06)  у них что там, интерпретатор в ПЛК сидит? Таки да. Что ещё хуже - этот LD крепко сидит в мозгах тех кто делает и применяет такие PLC, никакими С-с_чем_угодно его оттудова не выбьешь - упираются, всяк на своём стоит...
--------------------
Russia est omnis divisa in partes octo.
|
|
|
|
|
May 23 2009, 08:14
|
;
     
Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509

|
Цитата(Прохожий @ May 23 2009, 00:23)  На мой взгляд, проблема все-таки лежит не в ASM или С, а в неком уровне абстрагирования самой программы от внешней среды. Это проблемы не языка, а развития технологии компиляции и оптимизации. А текст на ЯВУ в стиле АСМ не всегда вреден. Например: использование битовых полей вместо битовых масок порождает зависимость от правила выделения бит. Ессно, для структур имеющих дело с вводом/выводом, такое неприемлемо. Цитата(INT1 @ May 23 2009, 07:06)  у них что там, интерпретатор в ПЛК сидит? Есть ветка про nano-PLC на AVR, народ голову ломал, как же линковать функциональные блоки в финальную прошивку на целевом контроллере. http://electronix.ru/forum/index.php?showtopic=40070
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|