Отговори на тема  [ 47 мнения ]  Отиди на страница 1, 2, 3, 4  Следваща
Подходящ език за начинаещи 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Окт 10, 2004 9:55 am
Мнения: 1718
Мнение Подходящ език за начинаещи
Реконструктор написа:
BrainStorm написа:
Стига бре хора .. какво толкова сте се наплашили от Ц'то ??????? Немога да ви разбера ... защо го смятате за толкова сложен ... езика е изключително елегантен и удобен a синтаксиса му супер нагледен !

Земи си една хубава книжка и го научи :
http://www.soft-press.com/srchead.html? ... ewbook=101 - това е най-доброто на пазара ;)


C-то е трудно за човек, който не се е занимавал с програмиране. Поне 90% от професионалните програмисти са започвали с Бейсик и/или Паскал - тези езици тъкмо за това са измислени, да се учи човек. Аз лично, бих препоръчал да се почне с Бейсик или Паскал за PC, и после да се премине към МК. Но тези, които нямат търпение, могат да пробват да започнат да пишат направо за МК. Според мен, C за МК е несмилаемо за един абс. начинаещ, той лесно би се разочаровал и би изоставил програмирането.
За това е и тази тема - да се разяснява на начинаещите за разните вариации на Бейсик за различни микроконтролери. Моля, придържайте се към нея.

Бих казал че за да знаеш какво правиш началото на всичко е асемблер. Почнеш ли от него всичко после е по лесно.
Изтегля се последната версия на MPLAB от сайта на microchip и си почваш с примерчета с свой програми и т.н.
Дори за съвсем начинаещи в сайта на младконструктор има вече 2 книги за пик с доста добре обяснени примери и точно как да се работи с MPLAB .
http://www.mladkonstruktor.bg

Позволих си да пренеса дискусията в нова тема, мисля, че ще е полезно за много хора
Реконструктор


Нед Юли 09, 2006 9:08 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Сеп 26, 2004 9:21 pm
Мнения: 30686
Местоположение: София
Мнение 
Реконструктор, не съм съвсем съгласен с теб, точно ако човек е начинаещ каква толкова е разликата м-у С и бейсик, особенно при микроконтролери. Там разликите са основно синтактични, това че С-то позволява доста по голяма гъвкавост не го прави по сложно от един бейсик, или пък паскал. И лично аз не бих препоръчал някой да се хване първо с РС а селд това с контролери, РС създава много вредни навици според мен. Най-добре е да се хване някой по-прост микроконтролер и асемблер, и едва след това да се минава на език от високо ниво, а дали ще е С, Бейсик или Паскал няма никакво значение за усвояването му според мен. Еднакво бързо ще направиш мигащ диод или комуникация както на С така и на Бейсик ако никога преди това не си ги ползвал. Дори според мен ако човек се е запознал с процесора дстатъчно за да му е ясно как работят нещата, то С ще му е мнго по удобно. Има много случаи в които нчинаещи се забатачват със сложни и не винаги рбатещи неща .. като толкова любимия printf примерно, да понякога върши супер работа, ако ти трябва форматиран изход ..... но всеки писал на асемблер сигурно ще открие първо командата putc .... или директно ще си пише байтое в буфера ....и ще си организира нещата така както и на асемблер. Изобщо РС програмирането и това за микроконтролери, особенно нискоресурсни мисля че нямат много общо, въпреки че С ато С е същото .... аз мисля че не трябва двете неща да се бъркат. Добрия програмист за РС трябва и да е добър за микроконтролери ... но това вече май изобщо не е вярно, защото малко останаха РС програмистите които изобщ имат идея от асемблер, а много от тях се имат за добри....


Пон Юли 10, 2006 12:18 am
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Чет Ное 25, 2004 3:42 pm
Мнения: 913
Мнение 
Баси на лични съобщения ли ще си обсъждаме Протона?
Опомнете се бе хора вие Цензура ли поставяте комитет за защита на С ли сте какво?
Ако нямате какво правите не го правете в тази тема.
Пишещите на Протон не смеят да се обадят тука.


Пон Юли 10, 2006 9:09 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение 
Тони, аз пък не съм много съгласен с тебе....
Не виждам по какъв начин, някой който си няма представа от логиката в програмирането ще изкара нещо смислено и добро на асемблер. Пък и я да видим кой от нас не е почнал с бейсика за 82? А относно съвременния бейсик, той си има структура както при С и паскал, така че не е толкова важно на какъв език ще пишеш, а това да можеш да пишеш чист и разчитаем код. .... а и няма лоши компилатори, има лоши програмисти.......... :lol:


Пон Юли 10, 2006 9:28 am
Профил ICQ WWW
Ранг: Напреднал
Ранг: Напреднал
Аватар

Регистриран на: Пет Окт 21, 2005 8:45 am
Мнения: 499
Мнение 
ЗАДЪЛЖИТЕЛНО трябва до се почне на асемблер! И за РС дори! За да се разбере какво е това регистър, акумулатор, стек, стек_поинтър и т.н. За да се схване самата логика на работа на машината. Не може без да се знае таблицата за умножение, да се учи висша математика! Иначе се получава това, което се наблюдава все по-масово напоследък - "защо да оптимизираме кода, след като ресурсите непрекъснато се увеличават?" и после ХР - 1Gb, Vista - 4Gb ...

_________________
Простотията е Божи дар, но човек не бива да парадира с подаръците си!


Пон Юли 10, 2006 10:43 am
Профил ICQ
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Апр 20, 2005 1:49 am
Мнения: 71
Мнение 
relsys написа:
Тони, аз пък не съм много съгласен с тебе....
Не виждам по какъв начин, някой който си няма представа от логиката в програмирането ще изкара нещо смислено и добро на асемблер. Пък и я да видим кой от нас не е почнал с бейсика за 82? А относно съвременния бейсик, той си има структура както при С и паскал, така че не е толкова важно на какъв език ще пишеш, а това да можеш да пишеш чист и разчитаем код. .... а и няма лоши компилатори, има лоши програмисти.......... :lol:

=D> :supz: едно по различно мнение, ами точно така които го може и с теслата ще го направи


Пон Юли 10, 2006 11:03 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение 
evc написа:
ЗАДЪЛЖИТЕЛНО трябва до се почне на асемблер! И за РС дори! За да се разбере какво е това регистър, акумулатор, стек, стек_поинтър и т.н. За да се схване самата логика на работа на машината. Не може без да се знае таблицата за умножение, да се учи висша математика! Иначе се получава това, което се наблюдава все по-масово напоследък - "защо да оптимизираме кода, след като ресурсите непрекъснато се увеличават?" и после ХР - 1Gb, Vista - 4Gb ...


1. Не смятам, че на едно дете в 3-4 клас трябва да му пълниш главата с що е това STACK FILO, щото едно че няма да те разбере, ами и със сигурност ще останат трайни увреждания в главата му. /доколкото си спомням, доказано е, че мисля КОБОЛ води увреждания/.

2. ASM e висшата математика, не С. Обикновено самата логика на работа на машината няма нищо общо с асемблера и. => големия прогрес на М$

3. Ако ще трябва да се изучи първо ASM, то тогава би трябвало да се научи и електрониката преди това, което ще ти отнеме достатъчно време за да не си конкурентно способен после.

4. Най - общо казано ако до 20 годишна възраст не си се научил да програмираш, то това вероятно няма никога да стане.

5. Мисля, че на всеки от нас първо са му показали транзистор, и са му казали как работи, а чак след това се стига до физика на кристалите

6. и т.н.


Пон Юли 10, 2006 1:17 pm
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Окт 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
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Сеп 26, 2004 9:21 pm
Мнения: 30686
Местоположение: София
Мнение 
Ами аз пък с това не съм съгласен но както и да е, тук не говорим за РС програмисти, ти май не разбира това, човек който не знае какво представлява стринга мисля изобщо не е стигнал ниво да пише аквото и да било на С или някой друг език. който разбира, ако не знае функциите на С преди да ги е науил , ще си ги е наисал 10 пъти. Това са ембедед решения, много пъти софтуера като софтуер е най лесната част, много по често този който пише трябва да е наясно как точно трябва да работи този софтуер, как да му работи алгоритъма, съобразявайки си с поставената задача и хардуерните възможности на чипа, а не да пита ама защо трябва да пращам байт повече по 485 или др подобни. На запад се оптват да разграничават писането на фримуер от правенето на хардуера, не знам до клко успешно доколко не . и в БГ се опитват, нещата са свързани, а от там неминуемо трябва да има както познаване на хардуера, така и достъп до него. Според мен след асемблера, най-добри възможности за това дава С. Иначе става като моето писане за РС, да ползвам бюлдер, и честно казано нито има идея как се създава прозорец, нито как работят 90% от нещата, не ми и трябва, защото аз не мисля че съм РС програмист. В контролера прозорци не ми трябват, за тая работа си има програмисти като тебе. Не знам защо програмистите за РС не се опитат да приемат факта че писането за микроконтролер е повече вързано с хардуер. Когато са писали под дос, може би не е било така, тия времена отдавна са минали.
Това че ти пишеш за микроконтролери, и с еопитваш а може би не, да си промениш начин на мислене и писане, не значи че всеки ще го направи. За човек който иска да се занимава с ембедед решения, да почва с РС програмиране не мисля че е най добрата идея. Типове данни и др такива могат да се научат акто на ембедеда така и на РС, разлика няма.


Вто Юли 11, 2006 1:29 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Фев 25, 2005 1:58 pm
Мнения: 4585
Местоположение: US
Мнение 
Нема да спорите, най-подходящи за начинаещи е Фортран, според мен де. 8)

_________________
Ето аз дишам, работя, живея и програми пиша тъй както умея, с проца под вежди се гледаме строго и боря се с него доколкото мога....


Вто Юли 11, 2006 1:55 am
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Съб Сеп 25, 2004 12:32 pm
Мнения: 8382
Местоположение: София
Мнение 
ToHu написа:
Типове данни и др такива могат да се научат акто на ембедеда така и на РС, разлика няма.


А така, накрая си каза всичко. ;) Точно така, информатиката е обща за всички ЕИМ, без значение от платформата. Точно поради тая причина, един начинаещ трябва да е улеснен максимално при обучението си. Иначе имаш твърде опростени разбирания за ембедед програмирането, аз ти обясних, че програмирането като цяло не е само клатене на портове и аритметика. Наистина, поне 90% от приложенията в ембедед се свеждат точно до това, само дето остават едни 10%, които не са по силите на един типичен ембедед хардуеристопрограмист.


Вто Юли 11, 2006 11:25 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Сеп 26, 2004 9:21 pm
Мнения: 30686
Местоположение: София
Мнение 
Интересно, приличаш ми на нашите управляващи, четът и виждат само това дето им оттърва, всичко останало май го пропусна, това го написах точно в обратния смисъл, че може да го научи на контролера и не му трябва РС за да научи типове данни ....както и да е ...


Вто Юли 11, 2006 11:49 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Яну 26, 2005 2:01 pm
Мнения: 1952
Местоположение: Варна
Мнение 
Реконструктор написа:
..., един начинаещ трябва да е улеснен максимално при обучението си.

Защо???
В наши дни битува мнението че обучението трябва да е максимално улеснено и широко достъпно. Най-добре ако е под формата на игра. Леко и неусетно ставаш специалист.
Ставаш ама не. Ставаш едно леке.
Има хора които е по-добре никога да не бяха се научавали да пишат камо ли да пишат програми.
Светът щеше да е друг. Справка например нашенската преса.
Трябва да има воля, самодисциплина и организираност. Трябва да има иглени уши за тези които искат да овладеят каквато и да е по-сложна материя.

И се оплаквате после защо не се ценял високо-интелигентния ни труд.

...


Вто Юли 11, 2006 12:02 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Дек 14, 2004 1:31 pm
Мнения: 3849
Мнение 
Цитат:
5. Мисля, че на всеки от нас първо са му показали транзистор, и са му казали как работи, а чак след това се стига до физика на кристалите

Цитат:
Батка, както добре отбелязаха по-долу, добре е първо да разбереш как работи транзистора и едва след това да учиш физиката на кристалите вътре.


:D Много ви е странна логиката според мен. Realsys за пьрви пьт видях транзистор (и преди може би сьм виждал, но не сьм си имал и идея какво представлява) след 2 месаца курс "Основи на полупроводниковата Физика" и мисля, че това е едно логично следствие.
Моята гледна точка е, че ако ще се занимаваш с embedded приложения преди дори да помислиш за компилатор трябва да си наясно с някои основни неща като например как функтионира един ОУ, как функционира един NAND гейт (и под това нямам предвид една 4 редова таблица), което логично води до основите на полупроводниковата Физика.
Според мен един специалист се гради от А Б и В. Не е необходимо да се задьлбава много в тези основи, но без тях не може. В този ред на мисли Асемблера не би следвало да се пренебрегва, това до колко да се занимава с него човек е вьпрос на личен избор и ориентация.
Все пак повечето от вас вече са минали нивото на "начално професионално образoвание" и като давате акьл на начинаещите, имайте предвид, че те не виждат нещата така ясно като вас.
Хубаво е човек да може C, но при embedded приложенията е важно и да е наясно какво точно програмира. Най-малкото поради факта, че повечето приложения в тази област се занимават с отговорни задачи. Така, че идеята почни на С и забрави Асемблера според мен не е добра. Още повече, че за мен C-то не е от най-разбираемите и удачни езици като за начинаещ.


Вто Юли 11, 2006 1:56 pm
Профил WWW
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 47 мнения ]  Отиди на страница 1, 2, 3, 4  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 1 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни