С чего начать изучение программирования
-
- Сообщения: 42
- Откуда: Россия
Все понял, теперь у меня есть точное направление, буду искать. Последний вопрос. С чего начать изучать программирование, ведь наверняка есть первая ступень в этом деле, какие нужные знания, для успешного усвоения, и я спрашиваю именно у вас, так как, вы этим занимаетесь. Спасибо за понимание
Все зависит от того, чего вы хотите достичь. Если речь идет о программировании микроконтроллеров, то стандартный набор эмбеддера сейчас - это си и ассемблер. Я считаю, что нужно начать с простого ассемблера, к примеру, для AVR. И недолго задерживаясь на ассемблере перейти на си.
Писать на ассемблере можно в AvrStudio. Курсов по ассемблеру полно в сети.
На ассемблере достаточно написать пару простых программ, чтобы понимать, что обращение к многобайтовой переменной - операция не атомарная, зачем нужны регистры, итп.
Дальше стоит перейти на си. Тут все не сильно отличается от компьютерного программирования. Классическая книга по программированию на си - Керниган и Ритчи "язык С". Я уверен, что это - не лучшая книга. Но посоветовать ничего другого не могу, так как сам учился по ней. Программировать для начала лучше не для контроллера, а для компьютера - там цикл написал - попробовал быстрее.
Когда вы станете хорошо разговаривать на си (на этом этапе вы уже практически забудете ассемблер, но основные положения в голове останутся), можно посмотреть на С++. Реально на нем программировать для контроллеров сложно, но он очень способствует развитию мозга и дает возможность читать литературу о проектировании программ (которая изобилует терминами из объектно-ориентированного программирования).
Ну, и естественно - практика и еще раз практика.
Писать на ассемблере можно в AvrStudio. Курсов по ассемблеру полно в сети.
На ассемблере достаточно написать пару простых программ, чтобы понимать, что обращение к многобайтовой переменной - операция не атомарная, зачем нужны регистры, итп.
Дальше стоит перейти на си. Тут все не сильно отличается от компьютерного программирования. Классическая книга по программированию на си - Керниган и Ритчи "язык С". Я уверен, что это - не лучшая книга. Но посоветовать ничего другого не могу, так как сам учился по ней. Программировать для начала лучше не для контроллера, а для компьютера - там цикл написал - попробовал быстрее.
Когда вы станете хорошо разговаривать на си (на этом этапе вы уже практически забудете ассемблер, но основные положения в голове останутся), можно посмотреть на С++. Реально на нем программировать для контроллеров сложно, но он очень способствует развитию мозга и дает возможность читать литературу о проектировании программ (которая изобилует терминами из объектно-ориентированного программирования).
Ну, и естественно - практика и еще раз практика.
-
- Сообщения: 42
- Откуда: Россия
А вот касаемо математики, у меня была тройка и то с натяжкой, есть ли у меня шанс, стать хоть мало мальским программистом, или это утопие.
Математики в классическом понимании этого слова в простом программировании довольно мало. Там больше дискретной математики, но основам дискретной математики я научил свою девушку за вечер, не думаю, что это будет проблемой.
Не могу не посоветовать одну замечательную книжку - "Введение в программирование микроконтроллера AVR на языке Ассемблера". Книга достаточно тонкая и при усердной работе за неделю вполне усваивается. Все повествование состоит из разбора одной конкретной платы (термометра) и начинается с самых самых основ строения контроллера. Великолепно объяснён принцип работы контроллера, что такое прерывание, как работать с оперативкой и ещё много всего. Из всего что я видел по контроллерам считаю самым подходящим для начинающих.
А я в свою очередь посоветую Ревича - “Практическое программирование Микроконтроллеров AVR на языке ассемблера”. Книжка, по которой учусь сейчас. Всё расписано не мене подробно, чем в других книгах, помимо всего написано это всё на доступном языке, который схватывается на лету.
-
- Сообщения: 42
- Откуда: Россия
Мастера, если не сложно скиньте хоть одну ссылку на скачивание книги, желательно и конкретно, то чем вы пользуетесь, а то много всего, а конкретного мало. Благодушествую Господа.
-
- Сообщения: 42
- Откуда: Россия
BSVi посмотрел Керниган, Ричи. Язык C я в ужасе, это нормально для первого взгляда, реально научится это понимать.
-
- Сообщения: 39
- Откуда: Новосибирск
У Ревича ошибок много в книге, говорят. Надо быть внимательнее.
Пробывал Реевича, но если бы читал перед вышеописанной книгой, то нифига не понял бы. Для начинающих слишком сложной может показаться. Хотя кто знает...
-
- Сообщения: 162
Я когда начал учить С то учил его по исходникам ядра линукса, ибо исходников было куча, выбрал ковыряние в ядре
Ни фига сразу не понял, но к вечеру стало все понятней и понятней... Угу, сурово, но весьма доходчиво и понятно в результате.
Правда все одно купил себе книгу по "Справочник по С", Автор Шилд. Справочник пролистал, и много прояснилось из того что не было ясно...

Правда все одно купил себе книгу по "Справочник по С", Автор Шилд. Справочник пролистал, и много прояснилось из того что не было ясно...
Я С++ учил по книжке Шилд'а, которую мне в институте кто-то одолжил, и так она у меня и осталась. Советую.
У меня есть книга Х. М. Дейтел и П. Дж. Дейтел "Как программировать на С". Что скажите, это пойдет для начала?
Melted Metal писал(а):У Ревича ошибок много в книге, говорят. Надо быть внимательнее.
Как говорил Леонард Эйлер, наличие опечаток в книге сильно оживляет ее чтение. Проверено на себе.
Мне как недавно начавшему очень понравился четырёхтомник А.Фрунзе "Микроконтроллеры? Это же просто!". На примере классического 51-го семейства подробно рассматривается применение ассемблера, работа МК на низком уровне, пошаговый разбор реальных программ. Также у С. Катцена в "PIC микроконтроллеры. Всё что необходимо знать" очень хороша для начитающих вводная часть с общими основами.
по программированию микроконтроллеров на С достаточно много литературы, недавно попадалась книга Магда Ю.С. "Современные микроконтроллеры". Хотя щас удобнее решать вопросы через форумы, задал вопрос - ответили с примером или дали развернутый ответ, попробовать стоит поискать на форуме программистов и сисадминов CyberForum, как ключевое слово поиска использовать микроконтроллеры (электроника).
-
- Сообщения: 10
BSVi писал(а):Математики в классическом понимании этого слова в простом программировании довольно мало. Там больше дискретной математики, но основам дискретной математики я научил свою девушку за вечер, не думаю, что это будет проблемой.
А что такое дискретная математика, зачем нужна в программировании? Я так понимаю, это комбинаторика и сортировка пузырьками всяческими.
Какую книжку самую простую посоветуете прочесть?
- iEugene0x7CA
- Адепт
- Сообщения: 1568
- Откуда: Киев
wxthplvl65 писал(а):Какую книжку самую простую посоветуете прочесть?
Вот эту.

http://www.r-5.org/files/books/computer ... age-RU.pdf
Кстати, уже без шуток — советую иметь её в бумажном виде на полке.
Лично у меня иногда бывают по 3+ месяца перерывы прогания чего-либо на МК, и отдельные моменты выпадают из памяти — удобно быстренько подсмотреть.
P.S. Сейчас зафукают, мол Си нужно на зубок знать, чтобы если разбудили в 3 часа ночи — помнил как сделать указатель на структуру внутри структуры.

Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя