[an error occurred while processing this directive] [an error occurred while processing this directive]
Щас пугать буду :)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
[an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive]

Отправлено Парабелум 18 сентября 2001 г. 13:48
В ответ на: Уважвемые коллеги, если я сильно назойлив, то можете не отвечать на мои идиотские вопросы новичка, но все же... отправлено Электронщик 17 сентября 2001 г. 20:39

1. C - это тот же ассемблер (поверь на слово).

2. C хорош тем, что это ANSI и ISO стандарт

3. C плох тем, что сказано в п. 1

4. Из п. 3 и п. 1 вытекает, что даже если ты выучил ISO C (самый свежий, например, C99), это радикально не поможет

5. Потому, что из п. 1 следует - реализация библиотек в C ОЧЕНЬ СИЛЬНО ЗАВИСИТ ОТ АРХИТЕКТУРЫ ЦЕЛЕВОГО ПРОЦЕССОРА

6. Что (п. 5) означает - не знаешь архитектуры, знание C не поможет

7. Что (п. 6), в свою очередь, означает - учить архитектуру нужно

8. Что (п. 7) равносильно - учи ассемблер обязательно (потому что ассемблер - это и есть модель архитектуры для программиста)

9. Что (п. 8) приводит к выводу - начинать надо с камней наиболее "экзотичных" по архитектуре

10. Потому что освоив их архитектурные "изгибы", потом будет намного легче

11. Кроме того, камни эти должны быть распространенными - ты ведь свое время и силы инвестируешь в свои знания, и будет лучше, чтобы они (знания) потом пригодились

12. Из пп. 8-11 можно сделать вывод: начинай с i8031/8051/8032/8052 и PIC - после них все RISC-машинки кажутся (и не только кажутся :) очень простыми

13. А производство PIC и 51-х будет еще очень долгим

14. И при их хорошем знании можно будет их хорошо использовать тоже долго

15. Возвращаясь к п. 1 - при а). правильном подходе, б) знании целевой архитектуры в) "прямизне" инструментальных средств, программы на ASM и C одинаково хорошо читаются и понимаются

16. Если хоть один из а)-в) подпунктов п. 15 не выполняется, - это геморрой. Ассемблерные "затычки" глюков компилятора - это такой же ужас, как и написанная "матом" программа. Здесь помогают только бубен, костер и продолжительные камлания под отваром мухоморов :)

17. Из самого спора (C или ASM) можно сделать дополнительный вывод - языки приходят и уходят (я еще PL/M помню, и он был ничуть не хуже C), а профессия остается.

18. Что (п. 17) означает - алгоритмы дороже их реализаций. И повторно использовать алгоритмы намного проще, чем код (это без балды - это серьезно!)

19. Для меня п. 18 очевиден и вывод из него один - учи алгоритмику. Книги Н. Вирта "Алгоритмы + структуры данных = программы", А. Ахо и Ульмана (в двух изданиях), Д. Кнута - это важнее, чем нюансы реализации компанией XXX функции printf() для микроконтроллера YYY. Понадобится - выучишь. А на алгоритмику времени не хватит.

20. Вот и все, удачи!

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru