Jump to content

Ասսեմբլեր լեզու

Վիքիպեդիայից՝ ազատ հանրագիտարանից
Ասսեմբլեր լեզու
Տեսակծրագրավորման լեզու
Ենթադասnon-structured programming language? և low-level programming language?
Առաջացել է1949
Ընդլայնումներ.asm և .s[1]
 Assembly languages Վիքիպահեստում

Ասսեմբլեր լեզու (անգլ.՝ assembly language)՝ ցածր մակարդակի ծրագրավորման լեզու, մեքենայական լեզվի սիմվոլիկ ներկայացնում։ Ասսեմբլերը թույլ է տալիս գրել կարճ և արագ կատարվող ծրագրեր, մեծ մասամբ ասսեմբլերով գրվում են այնպիսի ծրագրեր, որոնք ապահովում են մեքենայական մասի արդյունավետությունը[2]։

Առավելությունները և թերությունները

[խմբագրել | խմբագրել կոդը]

Առավելությունները

[խմբագրել | խմբագրել կոդը]
  • Ասսեմբլեր լեզուն թույլ է տալիս գրել ամեաարագ և փոքր ծրագիր, որը ընդհանրապես հնարավոր է գրել տվյալ պրոցեսորի համար։
  • Ասսեմբլեր լեզվի օգնությամբ ստեղծվում են մեքենայից կախված ենթածրագրեր նախաթարգմանիչի (ռուս.՝ компилятор) համար։
  • Ասսեմբլեր լեզուն օգտագործվում է BIOS-ի համար հանգույցներ (ռուս.՝ прошивка) ստեղծելիս։
  • Ասսեմբլեր լեզուն շատ հաճախ օգտագործվում է սարքերի դրայվերներ ստեղծման ժամանակ։

Թերությունները

[խմբագրել | խմբագրել կոդը]
  • Ասսեմբլերը ցածր մակարդակի ծրագրավորման լեզու է, ուստի նրանով գրված ծրագրերը ավելի բարդ են ընթերցվում և դժվար է հասկանալ, քան բարձր մակարդակի ծրագրավորման լեզվով գրված ծրագրերը։
  • Ծրագիրը կազմված է շատ «փոքր» տարրերից՝ մեքենայական հրամաններից, որոնք բարդեցնում են ծրագրավորման գործընթացը, հաճախացնում սխալվելու հավանականությունը։
  • Բացակայում է ծրագրի տեղափոխության հնարավորությունը մի համակարգչից դեպի այլ համակարգիչ։

Օգտագործումը

[խմբագրել | խմբագրել կոդը]

Եթե, որպես ծրագրավորման լեզվի առաջին սերունդ համարենք մեքենայական կոդը, ապա ասսեմբլեր լեզուն կարելի է համարել ծրագրավորման լեզուների երկրորդ սերունդ։ Ասսեմբլեր լեզվի մի շարք թերությունները բերեցին ծրագրավորման լեզուների երրորդ սերնդի առաջացմանը, որոնք կոչվեցին բարձր մակարդակի ծրագրավորման լեզուներ։ Հենց բարձր ծրագրավորման լեզուները և իրենց ժառանգներն են, որ հիմնականում օգտագործվում են ներկայիս ինֆորմացիոն տեխնոլոգիաների արդյունաբերությունում։ Ասսեմբլեր լեզվով գրվում են ծրագրեր կամ ծրագրի հատվածներ այն դեպքում, երբ հատկապես խիստ անհրաժեշտ է արագագործությունը։

Շարահյուսությունը

[խմբագրել | խմբագրել կոդը]

Ասսեմբլեր լեզվի շարահյուսությունը տվյալ պրոցեսորին բնորոշ համակարգային հրամաններն են։

Հրամանների համակարգ

[խմբագրել | խմբագրել կոդը]

Ասսեմբլեր լեզվում հրամանների համակարգը բաժանվում է հետևյալ հիմնական խմբերի՝

  • Տվյալների տեղափոխման հրամաններ (mov, push և այլն)
  • Թվաբանական հրամաններ (add, inc և այլն)
  • Տրամաբանական հրամաններ (or, and և այլն)
  • Ղեկավարությունը փոխանցող հրամաններ (jmp, loop և այլն)
  • Ընդհատման հրամաններ (int և այլն)

Ծանոթագրություններ

[խմբագրել | խմբագրել կոդը]
  1. https://cs.lmu.edu/~ray/notes/x86assembly/
  2. Зубков Сергей Владимирович - Assembler для DOS, Windows и UNIX 3-е издание