Как да започнете да изучавате PIC контролери за начинаещи

ХАК
- Може би кодирането на асемблерен език има някои недостатъци, с изключение на глупавите, мързеливи и несериозни програмисти?

caddr: Може би кодирането на асемблерен език има някои недостатъци, с изключение на глупавите, мързеливи и несериозни програмисти?

Ще се опитам да намеря аналогия. Какви са недостатъците на дискретен транзистор в сравнение с интегрална схема? Микросхемата по своята същност съдържа същите транзистори.

Ако никога досега не сте писали програми на езици на средно ниво и на високо ниво, но сте добре запознати с разработването на цифрови схеми на „свободен“ принцип, вашият избор е недвусмислен - асемблер. Командите са малко, лесно е да се научи. Ще „влезете“ бързо и безболезнено. Но писането е скучно и скучно.

Ако никога не сте участвали в проектирането на схеми, базирани на "логика" с ниска степен на интеграция (като 155, 561 и др.), Но сте свободни да пишете програми за "големи" компютри в C, вашият избор също е недвусмислено - C компилатори за MK. Просто сменете от чуждестранна кола на "Запорожец".

Друга аналогия. Асемблерът е азбучна азбука. Научете букви - научете се да пишете думи и изречения. Xi - китайски иероглифи. И това вече е цяла философия.

Веднъж, когато все още учех в института, прочетох статистика, при която средната скорост на писане на програма за обикновен програмист е 25 отстранени програмни редове на ден. Освен това, независимо от езика за програмиране. От това следва, че ефективността е по-висока с използването на JED. Но асемблерът има своите предимства.

САК: От това следва, че ефективността е по-висока с използването на IED.
Определено. Но! Ако целите на радиолюбителите са две или три прости програми годишно, необходима ли е ефективност? Дъските, например, са много по-ефективни за производство и сглобяване на специализирано оборудване и тук ние „плетем“ с фотомаски, фоторезисти и ужасно неефективно боцкаме детайлите с поялник. Аз поне се научих да пиша програми в асемблер, но никога не съм овладявал C, въпреки че бях използван няколко пъти. И тогава, когато няма практика, каквото и да се каже, всичко се забравя. В асемблера е важен принципният подход, трудно е да го забравите, но мнемониката на командата - ще забравите другата, можете да погледнете мамят. Това е азбука, където буквите могат да се комбинират, ръководени само от логиката и здравия разум.
JAVU - езици. Просто не можете да комбинирате букви. Трябва да запомните и запомните цели думи и дори огромен куп различни строги граматични и синтактични правила, без да знаете кои можете да напишете ада, ако сте забравили.
Разбира се, споря като любител, което всъщност съм в тази тема, но въпросът, зададен в заглавието на темата, мисля, че беше зададен, без да разчитам на желанието за фундаментално и професионално изучаване.

2 djelektronik
Ако сте писали на Spectrum на BASIC, уви.
Само с 48 kB памет е невъзможно да се напише нещо разумно върху един.
В крайна сметка, на Спектъра имаше борба за всеки бит. Това изискваше дълбоко разбиране
както компютърна архитектура, така и умело използване на процесорните възможности.
Водещите програмисти в света са написали игри за Spectrum и какво.
Съставянето на алгоритъм е истински кошмар за съвременните "програмисти" и то без
алгоритъмът няма да бъде разумна програма. Да, че прокламирам общи истини.
Не е трудно да преминете от сглобяване към който и да е език на високо ниво, но
напротив, това е неразрешим проблем. Твърда логика, присадена чрез програмиране на
дисциплини на асемблерен език при програмиране на други езици. Това е проверено
вече на много студенти в продължение на 8 години. Вече казах, можете да програмирате на какво
каквото и да е, но в крайна сметка се върнете към споменатите редове.
Това е в случая, когато достигнете определено ниво на програмиране и след това задънена улица.
(просто - просто няма да има достатъчно памет или производителността няма да бъде удовлетворена).