Միկրոկոդ

Վիքիպեդիայից՝ ազատ հանրագիտարանից

Միկրոկոդը (միկրոծրագիր) ծրագիր է, որը նախատեսված է պրոցոսսորի հրամանների շարքը իրականացնելու համար։ Ինչպես նաև, երբ բարձր մակարդակի լեզվի մեկ հրաման փոխակերպվում է մեքենայական հրամանների շարքերի, միկրոկոդ օգտագործող պրոցեսսորում յուրաքանչյուր մեքենայական հրաման իրականացվում է միկրոհրամնների շարքի տեսքով՝ միկրոծրագրի։

Միկրոկոդ օգտագործող համակարգերի մեծամասնությունը, այն հիմանկան հիշողությունում չի գտնվում, այլ հատուկ արագագործ հիշողությունում (англ. control store)։ Այդ հիշողությունը կարող է թողնել միայն կարդալ կամ կարդալ-գրել, վերջին դեպքում պրոցեսսորի բեռնման ընթացքում միկրոկոդը կարող է բեռվել հիմնական հիշողություն։ Միկրոկոդի փոփոխության հնարավորությունը թույլ է տալիս մշակել գտնված սխալները և ավելացնել նոր իրականացված հրամաններ։ Միկրոկոդը նաև հնարավորություն է տալիս կարգավորել համակարգիչների միկրոսխեմաները էմիլյացնելով այլ (որպես կանոն ավելի դժվար) ճարտարապետությունների (architecture) վրա։

Միկրոծրագրերը կազմված են միկրոհրամաններից, հաճախ կոչվում են էլեմենտար օպերացիաներ։ Միկրոհրամննորը ղեկավարում են պրոցեսսորով՝ ամենացածր մակարդակում։ առանձին միրոհրամանը կարող է պարունակել ներքոնշյալ գործողությունները՝

  • Միացնել 1 ռեգիստը «Ա» թվաբանակն-տրամաբանական սարքի մուտքին (arithmetic logic unit (ALU))
  • Միացնել 7 ռեգիստրը «Բ» ԹՏՍ-ի մուտքին
  • Կարգավորել ԹՏՍ-ն օպրացիաներ իրականացնելու համար
  • Կարգավորել ԹՏՍ-ի մուտքի փոխանցումը 0-ի։
  • Պահել օպերացիայի արդյուքը ռեգիստր 8-ում
  • Թարմեցնել կոդի վիճակը ԹՏՍ-ի կարգավիճակի ֆլագի հետ («Բացասական», «զրո», «գերլցում», «փոխանցում»)
  • Տեղակայել միկրոհրամանի ցուցիչ nnn միկրոհրամանի համարով։

Որպիսի մեկ միկրոհարամանը կարողանա այդ համարնը նկարագրել, միկրոհրամաննորը հաճաղ արվում են բավականչափ «ընդարձակ», օրինակ 56 բիթ կամ ավել։ Միկրոհրամնները, իրենց հերթին նախաձեռնեւմ են միկրոօպերացիաներ ։ Դրանք հենց տվյալների համար էլեմենտար փոխարկումներն են, որպես օրինակ՝

  1. Ռեգիստրում պատճենել օպերանդը
  2. դնել 1 ֆլագ
  3. օպերանդը դնել շինայում
  4. ստեկի գագաթը 1-ով մեծացնել և այլն։

Հղումներ[խմբագրել | խմբագրել կոդը]