Kontent qismiga oʻtish

Maʼlumotlar bogʻliqligi

ZiyoSfera, erkin ensiklopediya

Informatika fanidagi maʼlumotlarga bogʻliqlik – dasturning keyingi buyrugʻi oldingi har qanday buyruqqa bogʻliq boʻlgan holat. Kompilyatsiya nazariyasida bogʻliqlikni aniqlash usuli bogʻliqlikning tahlili deb ataladi.

Bogʻliqlarning uch turi mavjud: maʼlumotlarga bogʻliqlik, nomga bogʻliqlik va boshqaruvga bogʻliqlik.[1]

Maʼlumotlarga bogʻliqliklar

Agar quyidagi shartlardan kamida bittasi bajarilsa, 2-jamoa 1-jamoaga maʼlumotlarga bogʻliqligini aytamiz:

  • 1-buyruq 2-buyruq foydalanadigan natijani chiqaradi.
  • 2-buyruq baʼzi 3-buyruqlarga bogʻliq boʻlgan maʼlumotlar, bu esa oʻz navbatida 1-buyruqga bogʻliq

Agar buyruqlar maʼlumotlarga bogʻliq boʻlsa, ularni bir vaqtning oʻzida bajarib boʻlmaydi. Ushbu buyruqlarning bir vaqtning oʻzida bajarilishi bir -birining ustiga chiqishni yoʻq qilishni taʼminlaydigan ichki quvurlarni blokirovka qilish sxemalari boʻlgan baʼzi bir mashinani yaratishni talab qiladi. Ichki qulflari boʻlmagan mashinada kompilyator toʻliq mos keladigan bogʻliq koʻrsatmalarni rejalashtira olmaydi. Aks holda, dastur toʻgʻri ishlamaydi.

Nomi boʻyicha bogʻliqliklar

Keyingi turdagi bogʻliqlik – bu nomga bogʻliqlik. Bu bogʻliqliklar buyruqlar bir xil nomdan foydalanganda (registr, xotira joylashuvi), lekin buyruqlar oʻrtasida maʼlumot uzatish boʻlmaganda paydo boʻladi. 1 va 2 buyruqlar oʻrtasida nomga bogʻliqlikning ikki turi mavjud:

  • Anti -dependency – Agar 2-koʻrsatma 1-koʻrsatma oʻqiydigan xotira joyiga yozsa va birinchi boʻlib 1-koʻrsatma bajarilsa paydo boʻladi.
  • Chiqishga bogʻliqlik – 1-buyruq va 2-buyruq natijani bir xil xotira joyiga yozganda yuzaga keladi. Bu buyruqlarni bajarish tartibi saqlanishi kerak.

Ushbu ikki turdagi bogʻliqliklar bogʻliqlik deb ataladi, chunki maʼlumotlarga bogʻliqlikdan farqli oʻlaroq, ular maʼlumotlarni bir buyruqdan boshqasiga oʻtkazmaydi. Bu shuni anglatadiki, nomga bogʻliqlik bilan bogʻlangan buyruqlar birgalikda bajarilishi mumkin, agar buyruqlarda ishlatiladigan xotira joylashuvi nomi buyruqlar bir-biriga zid boʻlmasligi uchun oʻzgartirilsa. Roʻyxatga olish nomini oʻzgartirish kompilyator tomonidan statik ravishda, shuningdek, apparat tomonidan dinamik ravishda amalga oshirilishi mumkin.

Bogʻliqlarni nazorat qilish

Bogʻliqlikning oxirgi turi – bu nazoratga bogʻliqlik. Ular shartli sakrash buyrugʻiga nisbatan koʻrsatmalarning tartibini belgilaydi. Natijada, sakrashsiz koʻrsatmalar faqat kerak boʻlganda bajariladi. Dasturdagi har bir koʻrsatma shartli sakrashlar toʻplamiga bogʻliq holda nazorat qilinadi. Umuman olganda, ushbu nazorat bogʻliqliklari saqlanishi kerak.

Boshqaruvga bogʻliqlik bilan bogʻliq ikkita cheklov mavjud:

  • Boshqarishga bogʻliq boʻlgan koʻrsatma harakat natijasida shartli oʻtish koʻrsatmasi oldiga qoʻyilmaydi va undan mustaqil boʻladi.
  • Shartli tarmoqli koʻrsatmadan nazoratdan mustaqil boʻlgan koʻrsatmani shartli tarmoqli koʻrsatmadan keyin shunday joylashtirish mumkin emaski, uning bajarilishi shu shartli boʻlim tomonidan nazorat qilinadi.

Manbalar

  1. ↑ John L. Hennessy; David A. Patterson. Computer Architecture: a quantitative approach (3rd ed.). Morgan Kaufmann, 2003. ISBN 1-55860-724-2.