|
5-amaliy ish. Forth stack mashinasi
|
bet | 1/10 | Sana | 12.01.2024 | Hajmi | 35,2 Kb. | | #135582 |
Bog'liq 5-amaliy mashgulot
5-amaliy ish. Forth stack mashinasi
Informatika, kompyuter muhandisligi va dasturlash tilini amalga oshirishda stack machine bu kompyuterning bir turi. Ba'zi hollarda, bu atama stack mashinasini simulyatsiya qiladigan dasturiy ta'minot sxemasini anglatadi.
Boshqa kompyuterlardan asosiy farqi shundaki, uning ko'rsatmalarining aksariyati protsessor registrlarida saqlanadigan raqamlar emas, balki qo'yilgan raqamlar to'plamida ishlaydi. Ko'rsatmalarda ishlatiladigan operandlar har doim ma'lum bo'lgan joyda (stackning yuqori qismida) joylashganligi sababli, ko'rsatmalarning o'zi operandlarini etkazib berish uchun xotira manzillarini yoki registr raqamlarini talab qilmaydi. Bu manzil nol formati sifatida tanilgan ko'rsatmalar to'plamining arxitekturasi uslubiga (ISA) olib keladi.
Stacklar stacking mashinalariga xos emas; aksariyat dasturlash tillari pastki dasturlarni va usul chaqiruvlarini qo'llab-quvvatlash uchun steklardan keng foydalanadi. Shu sababli, stek mashinalari dasturlarning yuqori darajadagi tillarda yozilishi sharti bilan ular ustida ishlaydigan dasturlarning ichki ishini yaqindan taqlid qiladi. Bu yuqori ishlashni ta'minlash uchun stacking mashinalarini amalga oshiradigan bir qator CPU dizaynlarini keltirib chiqardi. Amalda, ushbu dizaynlar samaradorligi jihatidan an'anaviy ro'yxatga olish mashinalari tizimidan past edi va bozorda o'ziga xos o'rin tutuvchi bo'lib qoldi .
Amaliy ifoda - stakalash mashinalari
"Stack mashina" -e so'nggi kiruvchi va chiquvchi birinchi foydalanadi kompyuter suyakka qisqa vaqt qadriyatlar saqlash uchun. Uning ko'rsatmalarining aksariyati operandlar stakdan bo'ladi deb taxmin qiladi va natijalar stakka suriladi.
Kompyuter qo'shish kabi odatiy ko'rsatma uchun ikkala operand ham stekning eng yuqori (eng so'nggi) qiymatidan olinadi. Kompyuter bu ikkita qiymatni kompyuter qo'shish operatori bajarganida hisoblaydigan yig'indiga almashtiradi . Bir yo'riqnomani ishlov berilguniga suyakka yopiq tashladi va natija ( lar ), keyin keyingi ta'lim uchun tayyor, qaytib ko'plab ustiga otilib etiladi. Stek ko'rsatmalarining aksariyatida doimiy, registr yoki xotira o'rnini aniqlash uchun qo'shimcha maydonlarsiz operatsiya buyrug'i uchun faqat opcode mavjud . Stek osongina ikkitadan ortiq yoki bir nechta natijalarni o'z ichiga oladi, shuning uchun yanada boy operatsiyalar to'plamini hisoblash mumkin. To'liq doimiy operandlar tez-tez alohida Load Instruction ko'rsatmalari bilan chiqariladi . Xotiraga kirish ko'pincha alohida yuklash yo'riqnomalari yoki xotira manzilini ushlab turadigan yoki manzilni stekdagi qiymatlardan hisoblaydigan saqlash bo'yicha ko'rsatmalar bilan amalga oshiriladi .
Ishni tezlashtirish uchun stek mashinasi ko'pincha stackning ba'zi qismini registrlar bilan amalga oshiradi. Arifmetik mantiqiy birlik (ALU) operandalarini tezkor bajarish uchun u stekning yuqori ikkita registri bo'lishi mumkin va ALUdan olingan natija stekning yuqori registrida saqlanadi. Ba'zi stack mashinalarida registr fayli sifatida qo'llaniladigan cheklangan stek mavjud. ALU bunga indeks yordamida kirish huquqini beradi. Ba'zi mashinalari »orqali murojaat bir xotirada qator sifatida amalga cheklanmagan suyakka, bor yuqori ning to'p " manzili Ro'yxatdan o'tish . Bu sekinroq, ammo triggerlar soni kamroq bo'lib, arzonroq va ixcham protsessorga imkon beradi. Uning eng yuqori N tezligi uchun keshlash mumkin . Bir nechta mashinalarda ham xotira ichidagi ifoda to'plami, ham alohida registrlar to'plami mavjud. Bunday holda, dasturiy ta'minot yoki uzilish ma'lumotlar orasidagi ma'lumotlarni ko'chirishi mumkin.
Ko'rsatmalar to'plami ALU harakatlarining aksariyatini postfiks ( teskari jilo yozuvlari ) operatsiyalari bilan bajaradi, ular faqat ma'lumotlar registrlarida yoki xotiraning asosiy joylarida emas, balki faqat ifoda stekasida ishlaydi. Bu yuqori darajadagi tillarni bajarish uchun juda qulay bo'lishi mumkin, chunki aksariyat arifmetik iboralarni postfiks yozuviga osongina o'tkazish mumkin.
Aksincha, registr mashinalari vaqtinchalik qiymatlarni kichik, tezkor registrlar qatorida saqlaydi . Simsiz mashinalarda faqat bitta umumiy foydalanish registri mavjud. Tasma mashinalarida vaqtinchalik qiymatlarni saqlash uchun FIFO navbati ishlatiladi. Xotiradan xotiraga mashinalarda dasturchi tomonidan ishlatiladigan vaqtinchalik registrlar mavjud emas.
Stek mashinalari o'zlarining ekspres steklarini va o'zlarining chaqiriqlarini qaytarish staklarini ajratib turishlari yoki bitta yaxlit tuzilishga ega bo'lishlari mumkin . Agar ular ajratilgan bo'lsa, stacking mashinasi ko'rsatmalari kamroq shovqinlar va dizaynning murakkabligi kamroq bo'lishi mumkin. Odatda tezroq ishlashi mumkin.
Ba'zi texnik cho'ntak kalkulyatorlari klaviatura interfeysida dumaloq tugmachalar o'rniga teskari jilo yozuvlarini ishlatadi. Bu stakalash mashinasining shakli. Plyus tugmachasi uning ikkita operandasi allaqachon foydalanuvchi tomonidan ko'rinadigan stekning eng yuqori pog'onalarida joylashganligiga ishonadi.
|
| |