|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 7:57 pm
Подходящ език за начинаещи
| Автор |
Съобщение |
|
plameniv
Ранг: Форумен бог
Регистриран на: Нед Окт 10, 2004 9:55 am Мнения: 1718
|
 Подходящ език за начинаещи
Бих казал че за да знаеш какво правиш началото на всичко е асемблер. Почнеш ли от него всичко после е по лесно.
Изтегля се последната версия на MPLAB от сайта на microchip и си почваш с примерчета с свой програми и т.н.
Дори за съвсем начинаещи в сайта на младконструктор има вече 2 книги за пик с доста добре обяснени примери и точно как да се работи с MPLAB .
http://www.mladkonstruktor.bg
Позволих си да пренеса дискусията в нова тема, мисля, че ще е полезно за много хора Реконструктор
|
| Нед Юли 09, 2006 9:08 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
Реконструктор, не съм съвсем съгласен с теб, точно ако човек е начинаещ каква толкова е разликата м-у С и бейсик, особенно при микроконтролери. Там разликите са основно синтактични, това че С-то позволява доста по голяма гъвкавост не го прави по сложно от един бейсик, или пък паскал. И лично аз не бих препоръчал някой да се хване първо с РС а селд това с контролери, РС създава много вредни навици според мен. Най-добре е да се хване някой по-прост микроконтролер и асемблер, и едва след това да се минава на език от високо ниво, а дали ще е С, Бейсик или Паскал няма никакво значение за усвояването му според мен. Еднакво бързо ще направиш мигащ диод или комуникация както на С така и на Бейсик ако никога преди това не си ги ползвал. Дори според мен ако човек се е запознал с процесора дстатъчно за да му е ясно как работят нещата, то С ще му е мнго по удобно. Има много случаи в които нчинаещи се забатачват със сложни и не винаги рбатещи неща .. като толкова любимия printf примерно, да понякога върши супер работа, ако ти трябва форматиран изход ..... но всеки писал на асемблер сигурно ще открие първо командата putc .... или директно ще си пише байтое в буфера ....и ще си организира нещата така както и на асемблер. Изобщо РС програмирането и това за микроконтролери, особенно нискоресурсни мисля че нямат много общо, въпреки че С ато С е същото .... аз мисля че не трябва двете неща да се бъркат. Добрия програмист за РС трябва и да е добър за микроконтролери ... но това вече май изобщо не е вярно, защото малко останаха РС програмистите които изобщ имат идея от асемблер, а много от тях се имат за добри....
|
| Пон Юли 10, 2006 12:18 am |
|
 |
|
rumen
Ранг: Почетен член
Регистриран на: Чет Ное 25, 2004 3:42 pm Мнения: 913
|
Баси на лични съобщения ли ще си обсъждаме Протона?
Опомнете се бе хора вие Цензура ли поставяте комитет за защита на С ли сте какво?
Ако нямате какво правите не го правете в тази тема.
Пишещите на Протон не смеят да се обадят тука.
|
| Пон Юли 10, 2006 9:09 am |
|
 |
|
relsys
Ранг: Форумен бог
Регистриран на: Пет Ное 25, 2005 11:41 am Мнения: 1680
|
Тони, аз пък не съм много съгласен с тебе....
Не виждам по какъв начин, някой който си няма представа от логиката в програмирането ще изкара нещо смислено и добро на асемблер. Пък и я да видим кой от нас не е почнал с бейсика за 82? А относно съвременния бейсик, той си има структура както при С и паскал, така че не е толкова важно на какъв език ще пишеш, а това да можеш да пишеш чист и разчитаем код. .... а и няма лоши компилатори, има лоши програмисти.......... 
|
| Пон Юли 10, 2006 9:28 am |
|
 |
|
evc
Ранг: Напреднал
Регистриран на: Пет Окт 21, 2005 8:45 am Мнения: 499
|
ЗАДЪЛЖИТЕЛНО трябва до се почне на асемблер! И за РС дори! За да се разбере какво е това регистър, акумулатор, стек, стек_поинтър и т.н. За да се схване самата логика на работа на машината. Не може без да се знае таблицата за умножение, да се учи висша математика! Иначе се получава това, което се наблюдава все по-масово напоследък - "защо да оптимизираме кода, след като ресурсите непрекъснато се увеличават?" и после ХР - 1Gb, Vista - 4Gb ...
_________________ Простотията е Божи дар, но човек не бива да парадира с подаръците си!
|
| Пон Юли 10, 2006 10:43 am |
|
 |
|
Nico
Ранг: Минаващ
Регистриран на: Сря Апр 20, 2005 1:49 am Мнения: 71
|
 едно по различно мнение, ами точно така които го може и с теслата ще го направи
|
| Пон Юли 10, 2006 11:03 am |
|
 |
|
relsys
Ранг: Форумен бог
Регистриран на: Пет Ное 25, 2005 11:41 am Мнения: 1680
|
1. Не смятам, че на едно дете в 3-4 клас трябва да му пълниш главата с що е това STACK FILO, щото едно че няма да те разбере, ами и със сигурност ще останат трайни увреждания в главата му. /доколкото си спомням, доказано е, че мисля КОБОЛ води увреждания/.
2. ASM e висшата математика, не С. Обикновено самата логика на работа на машината няма нищо общо с асемблера и. => големия прогрес на М$
3. Ако ще трябва да се изучи първо ASM, то тогава би трябвало да се научи и електрониката преди това, което ще ти отнеме достатъчно време за да не си конкурентно способен после.
4. Най - общо казано ако до 20 годишна възраст не си се научил да програмираш, то това вероятно няма никога да стане.
5. Мисля, че на всеки от нас първо са му показали транзистор, и са му казали как работи, а чак след това се стига до физика на кристалите
6. и т.н.
|
| Пон Юли 10, 2006 1:17 pm |
|
 |
|
Predator_MF
Ранг: Форумен бог
Регистриран на: Чет Окт 07, 2004 1:22 pm Мнения: 1949 Местоположение: София
|
Почнахте много насериозно да вземате цялата тая работа с Бейсика, тука не сме 4-ти клас, не сме и в средно училище, що сравнявате недоразвит мозък на хлапе 4-ти клас с вас. Едно време като ми тъпчеха главата с литература обема от информация там ми се струваше огромен, сега мога да изчета 500 страници PDF без да ме заболи глава...
Езика C за миктроконтролери изключително много се различава от C за PC, най-малко заради разликата в ресурсите при двете системи. Същото важи и за ASM. Като отвориш хелпа на CCS ти трябва една вечер да го изчетеш целия и дори да не си пипал C през живота си най-малко ще знаеш да разчиташ код...ако отвориш книга за C (недай си боже MSDN) можеш със месеци да се луташ. Същото за ASM, отвори datasheet на PIC16F84, за една вечер ще знаеш да разчиташ ASM заради 37-те му инструкции от които само 10 се ползват, а книга за ASM за Intel-ски процесор ще четеш със седмици.
PS: Няма да ви се меся повече в темата, писал съм на Pascal и Basic както за PC, така и за микроконтролери, но развитието ми започна като се хванах със C...освен всичко C ми беше почти непознат като почнах CCS за PIC и оттам точно тръгна всичко, всеки има право да си ползва най-удобния инструмент, не се гледа обаче сериозно на хората които завиват болт с рапидна глава с правата отверка
|
| Пон Юли 10, 2006 1:31 pm |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
 |  |  |  | ToHu написа: Реконструктор, не съм съвсем съгласен с теб, точно ако човек е начинаещ каква толкова е разликата м-у С и бейсик, особенно при микроконтролери. Там разликите са основно синтактични, това че С-то позволява доста по голяма гъвкавост не го прави по сложно от един бейсик, или пък паскал. И лично аз не бих препоръчал някой да се хване първо с РС а селд това с контролери, РС създава много вредни навици според мен. Най-добре е да се хване някой по-прост микроконтролер и асемблер, и едва след това да се минава на език от високо ниво, а дали ще е С, Бейсик или Паскал няма никакво значение за усвояването му според мен. Еднакво бързо ще направиш мигащ диод или комуникация както на С така и на Бейсик ако никога преди това не си ги ползвал. Дори според мен ако човек се е запознал с процесора дстатъчно за да му е ясно как работят нещата, то С ще му е мнго по удобно. Има много случаи в които нчинаещи се забатачват със сложни и не винаги рбатещи неща .. като толкова любимия printf примерно, да понякога върши супер работа, ако ти трябва форматиран изход ..... но всеки писал на асемблер сигурно ще открие първо командата putc .... или директно ще си пише байтое в буфера ....и ще си организира нещата така както и на асемблер. Изобщо РС програмирането и това за микроконтролери, особенно нискоресурсни мисля че нямат много общо, въпреки че С ато С е същото .... аз мисля че не трябва двете неща да се бъркат. Добрия програмист за РС трябва и да е добър за микроконтролери ... но това вече май изобщо не е вярно, защото малко останаха РС програмистите които изобщ имат идея от асемблер, а много от тях се имат за добри.... |  |  |  |  |
Батка, както добре отбелязаха по-долу, добре е първо да разбереш как работи транзистора и едва след това да учиш физиката на кристалите вътре. Програмирането далеч не е само клатене на портове и разни аритметични сметки. Добре е човек да придобие представа за основните неща в информатиката - структури от данни, масиви - както линейни, така и нелинейни, асоциативни, стрингове, свързани списъци и още сума ти неща, да не изреждам. C-то е много базов език и работата с всичко това е неразбираема за повечето начинаещи. Докато в езици като Паскал и Бейсик, много от нещата са на готово, на ниво компилатор. Далеч по-лесно и ясно е за един начинаещ да напише просто string1 = string2 + "some text" + string3, отколкото да се занимава с цялата верига от ANSI C ф-ии за манипулация на стрингове и управление на паметта, за да постигне същото в C. Чак след като е наясно с първото, може да премине към осъзнаване на второто. На час по лъжичка.
И защо ми се струва, че го предъвкваме това за 10-ти път?
|
| Пон Юли 10, 2006 6:01 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
Ами аз пък с това не съм съгласен но както и да е, тук не говорим за РС програмисти, ти май не разбира това, човек който не знае какво представлява стринга мисля изобщо не е стигнал ниво да пише аквото и да било на С или някой друг език. който разбира, ако не знае функциите на С преди да ги е науил , ще си ги е наисал 10 пъти. Това са ембедед решения, много пъти софтуера като софтуер е най лесната част, много по често този който пише трябва да е наясно как точно трябва да работи този софтуер, как да му работи алгоритъма, съобразявайки си с поставената задача и хардуерните възможности на чипа, а не да пита ама защо трябва да пращам байт повече по 485 или др подобни. На запад се оптват да разграничават писането на фримуер от правенето на хардуера, не знам до клко успешно доколко не . и в БГ се опитват, нещата са свързани, а от там неминуемо трябва да има както познаване на хардуера, така и достъп до него. Според мен след асемблера, най-добри възможности за това дава С. Иначе става като моето писане за РС, да ползвам бюлдер, и честно казано нито има идея как се създава прозорец, нито как работят 90% от нещата, не ми и трябва, защото аз не мисля че съм РС програмист. В контролера прозорци не ми трябват, за тая работа си има програмисти като тебе. Не знам защо програмистите за РС не се опитат да приемат факта че писането за микроконтролер е повече вързано с хардуер. Когато са писали под дос, може би не е било така, тия времена отдавна са минали.
Това че ти пишеш за микроконтролери, и с еопитваш а може би не, да си промениш начин на мислене и писане, не значи че всеки ще го направи. За човек който иска да се занимава с ембедед решения, да почва с РС програмиране не мисля че е най добрата идея. Типове данни и др такива могат да се научат акто на ембедеда така и на РС, разлика няма.
|
| Вто Юли 11, 2006 1:29 am |
|
 |
|
¶
Ранг: Форумен бог
Регистриран на: Пет Фев 25, 2005 1:58 pm Мнения: 4585 Местоположение: US
|
Нема да спорите, най-подходящи за начинаещи е Фортран, според мен де. 
_________________ Ето аз дишам, работя, живея и програми пиша тъй както умея, с проца под вежди се гледаме строго и боря се с него доколкото мога....
|
| Вто Юли 11, 2006 1:55 am |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
А така, накрая си каза всичко.  Точно така, информатиката е обща за всички ЕИМ, без значение от платформата. Точно поради тая причина, един начинаещ трябва да е улеснен максимално при обучението си. Иначе имаш твърде опростени разбирания за ембедед програмирането, аз ти обясних, че програмирането като цяло не е само клатене на портове и аритметика. Наистина, поне 90% от приложенията в ембедед се свеждат точно до това, само дето остават едни 10%, които не са по силите на един типичен ембедед хардуеристопрограмист.
|
| Вто Юли 11, 2006 11:25 am |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
Интересно, приличаш ми на нашите управляващи, четът и виждат само това дето им оттърва, всичко останало май го пропусна, това го написах точно в обратния смисъл, че може да го научи на контролера и не му трябва РС за да научи типове данни ....както и да е ...
|
| Вто Юли 11, 2006 11:49 am |
|
 |
|
Zdrav
Ранг: Форумен бог
Регистриран на: Сря Яну 26, 2005 2:01 pm Мнения: 1952 Местоположение: Варна
|
Защо???
В наши дни битува мнението че обучението трябва да е максимално улеснено и широко достъпно. Най-добре ако е под формата на игра. Леко и неусетно ставаш специалист.
Ставаш ама не. Ставаш едно леке.
Има хора които е по-добре никога да не бяха се научавали да пишат камо ли да пишат програми.
Светът щеше да е друг. Справка например нашенската преса.
Трябва да има воля, самодисциплина и организираност. Трябва да има иглени уши за тези които искат да овладеят каквато и да е по-сложна материя.
И се оплаквате после защо не се ценял високо-интелигентния ни труд.
...
|
| Вто Юли 11, 2006 12:02 pm |
|
 |
|
HCL
Ранг: Форумен бог
Регистриран на: Вто Дек 14, 2004 1:31 pm Мнения: 3849
|
 Много ви е странна логиката според мен. Realsys за пьрви пьт видях транзистор (и преди може би сьм виждал, но не сьм си имал и идея какво представлява) след 2 месаца курс "Основи на полупроводниковата Физика" и мисля, че това е едно логично следствие.
Моята гледна точка е, че ако ще се занимаваш с embedded приложения преди дори да помислиш за компилатор трябва да си наясно с някои основни неща като например как функтионира един ОУ, как функционира един NAND гейт (и под това нямам предвид една 4 редова таблица), което логично води до основите на полупроводниковата Физика.
Според мен един специалист се гради от А Б и В. Не е необходимо да се задьлбава много в тези основи, но без тях не може. В този ред на мисли Асемблера не би следвало да се пренебрегва, това до колко да се занимава с него човек е вьпрос на личен избор и ориентация.
Все пак повечето от вас вече са минали нивото на "начално професионално образoвание" и като давате акьл на начинаещите, имайте предвид, че те не виждат нещата така ясно като вас.
Хубаво е човек да може C, но при embedded приложенията е важно и да е наясно какво точно програмира. Най-малкото поради факта, че повечето приложения в тази област се занимават с отговорни задачи. Така, че идеята почни на С и забрави Асемблера според мен не е добра. Още повече, че за мен C-то не е от най-разбираемите и удачни езици като за начинаещ.
|
| Вто Юли 11, 2006 1:56 pm |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 1 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|