რისთვის არის რეგისტრები?

რისთვის არის რეგისტრები?
რისთვის არის რეგისტრები?

ვიდეო: რისთვის არის რეგისტრები?

ვიდეო: რისთვის არის რეგისტრები?
ვიდეო: უტდ - BMW i8 - რისთვის არის შექმნილი? 2024, აპრილი
Anonim

პროცესორის რეგისტრები ულტრა სწრაფი შემთხვევითი წვდომის მეხსიერების უჯრედებია, რომლებიც შექმნილია შუალედური მონაცემების დროებითი შენახვისთვის. სხვადასხვა რეგისტრი შეიცავს ინფორმაციას სხვადასხვა ფორმით: მისამართები და მითითებები მეხსიერების სეგმენტების ან სისტემის ცხრილებისთვის, მასივის ელემენტების ინდექსები და ა.შ.

რისთვის არის რეგისტრები?
რისთვის არის რეგისტრები?

პროცესორი შეიცავს რეგისტრების დიდ რაოდენობას, რომლებიც შეიძლება დაიყოს რამდენიმე მთავარ ჯგუფად: აკუმულატორები, დროშები, მითითებები, ინდექსი, სეგმენტი და საკონტროლო რეგისტრები. პროცესორის რეგისტრები მეხსიერების უჯრედებია პროგრამის შესრულების შუალედური შედეგების მიღების, შენახვისა და შემდგომი გადასაცემად.

პროცესორის ნებისმიერი რეგისტრი არის ციფრული ელექტრონული სქემა, რომელიც შეიცავს სხვადასხვა სიგანის (16, 32 ან 64) ორობითი რიცხვების თანმიმდევრობას და მათ შორის გადაკეთების შედეგებს. ინფორმაციის მიღების და გადაცემის ტიპის მიხედვით, ისინი შეიძლება იყოს თანმიმდევრული (ცვლადი) და პარალელური.

აკუმულატორის რეგისტრები უნივერსალურია, ისინი შეიცავს სხვადასხვა ბრძანებების (ლოგიკური, არითმეტიკა, შეყვანის / გამოყვანის და ა.შ.) შესრულების შუალედური შედეგების უმეტესობას. პროცესორი შეიძლება შეიცავდეს ერთზე მეტ ბატარეას. პროგრამული უზრუნველყოფის შემქმნელები იყენებენ ბატარეებს ინსტრუქციის ბიტის სიგანის შესამცირებლად, პროგრამის კოდის გამარტივებისთვის.

დროშის რეგისტრატორები ასევე ცნობილია, როგორც პირობების რეგისტრები. ისინი აჩვენებენ ოპერაციის გარკვეულ შედეგს, რომელიც შეიძლება იყოს ნულოვანი, პოზიტიური, უარყოფითი ან მიუთითოს გადახურვა. ჩვეულებრივ პირობების კოდები გაერთიანებულია ჯგუფებად და ქმნის სხვადასხვა ტიპის რეგისტრს - საკონტროლო რეგისტრს. დროშის რეგისტრების შეცვლა შესაძლებელია, მაგრამ არასასურველია, რათა არ მოხდეს მთლიანი შედეგის დამახინჯება.

რეგისტრებს, რომლებიც შეიცავს მეხსიერების სპეციალურ სფეროებში მითითებებს (სტეკი, ბაზა, ბრძანება), პოინტერის რეგისტრებს უწოდებენ. მათგან ყველაზე მნიშვნელოვანია სტეკის მაჩვენებელი. დასტა არის მეხსიერების ნაწილი, რომელიც შედგება უჯრედებისგან, რომლებიც მიჰყვებიან ერთმანეთის მიყოლებით, ე.ი. სტეკიდან შეგიძლიათ მხოლოდ უჯრედი წაიღოთ, რომელიც ზემოდან მდებარეობს. ამ ზევით მიუთითებს დასტის რეგისტრატორი.

საბაზო მაჩვენებელი, როგორც წესი, შეიცავს სტეკის კონკრეტული მდებარეობის მისამართს, რომელიც შეიძლება იყოს ყველაფერი. როგორც წესი, სტეკის რეგისტრი და ბაზის რეგისტრი ერთდროულად გამოიყენება მიმდინარე პროცედურაში მუშაობისას, დასტის საჭირო მდგომარეობის აღსადგენად.

ინსტრუქციის მაჩვენებლის რეგისტრს ზოგჯერ ინსტრუქციის მრიცხველს უწოდებენ, იგი შეიცავს მითითებული ციკლის ინსტრუქციებს. ბრძანების შესრულებისას, მისი მნიშვნელობა იზრდება 1-ით და ციკლი გრძელდება შემდეგი ბრძანებით. იმ ბრძანების მრიცხველი ყოველთვის მიუთითებს ბრძანებაზე, რომელიც ახლა შესრულდება.

არსებობს ორი ინდექსის რეგისტრი - წყაროს ინდექსი და დანიშნულების ინდექსი. ისინი გამოიყენება დასტის მონაცემების მისამართის მისაღებად მაჩვენებლის რეგისტრებთან ერთად.

სეგმენტური რეგისტრები გამოიყენება სეგმენტის მეხსიერების მისამართით. ამ შემთხვევაში, მეხსიერება დაყოფილია სხვადასხვა სიგრძის ბლოკებად (სეგმენტებად). სასურველი მეხსიერების უჯრედის მისამართი განისაზღვრება ბლოკის დასაწყისის მისამართით და მასთან შედარებით ცვლის ოდენობით. სულ არის ოთხი სეგმენტის რეგისტრი: კოდის სეგმენტისთვის, მონაცემთა სეგმენტისთვის, დასტის სეგმენტისთვის და დამატებითი სეგმენტისთვის.

კონტროლი აღრიცხავს პროცესორის მუშაობას და არ არის ხელმისაწვდომი მომხმარებლისთვის. მათი შესრულება ძირითადად კონტროლდება მანქანების პროგრამებით. ისინი შეიცავს ინფორმაციას მიმდინარე ბრძანების შესრულების, პროცესორის მდგომარეობის შესახებ და ისინი ასევე ლოკალიზებენ კონტროლის სტრუქტურებს, როდესაც პროცესორი მუშაობს დაცულ რეჟიმში.

გირჩევთ: