زبان انتقال ثبات

دانشنامه عمومی

در علوم کامپیوتر، زبان انتقال ثبات ( RTL ) نوعی کد هدف، یا نوعی نمایش واسطه ( IR ) ، است که به دلیل استفاده در کامپایلر بسیار نزدیک به زبان اسمبلی می باشد. از این زبان جهت توصیف جریان داده ها در مرحله انتقال ثبات معماری کامپیوتری استفاده می شود. مقالات دانشگاهی و کتاب های درسی اغلب از نسخه ای از RTL، که مشابه یک زبان اسمبلیِ فارق از نوع معماری کامپیوتر است، استفاده می کنند. از نام RTL جهت نمایش واسطه ای خاص در چندین کامپایلر، از جمله مجموعه کامپایلرهای گنو ( GCC ) ، زفیر ( Zephyr ) ، و پروژه های کامپایلر اروپایی CerCo و CompCert استفاده می شود.
ایده پشت زبان انتقال ثبات برای نخستین بار در طراحی و کاربرد یک بهینه ساز چشمی با قابلیت هدف گیری مجدد شرح داده شد. [ ۱]
در مجموعه کامپایلرهای گنو، زبان انتقال ثبات از بازنمایی گیمپل ( GIMPLE ) تولید شده، توسط گذرگاه های میانی مختلف در GCC تغییر یافته و سپس به زبان اسمبلی تبدیل می شود.
زبان انتقال ثبات GCC معمولاً به شکلی نوشته می شود که مشابه با یک عبارت نمادین در زبان لیسپ ( Lisp ) است:
( set ( reg:SI 140 ) ( plus:SI ( reg:SI 138 ) ( reg:SI 139 ) ) ) این عبارت با عوارض جانبی بیان می کند که: "محتوای ثبات ۱۳۸ را با محتویات ثبات ۱۳۹ جمع و نتیجه را در ثبات ۱۴۰ ذخیره کن". واژه SI حالت دسترسی برای هر ثبات را مشخص می کند. در مثال ذکر شده، "SImode" یا حالت SI برقرار است؛ یعنی "دسترسی به ثبات تحت عنوان عدد صحیح ۳۲ بیتی".
دنبالهٔ RTL تولید شده تا حدودی به ویژگی های پردازنده ای که GCC برای آن کد تولید می کند، بستگی دارد. با این حال، معنای RTL کمابیش مستقل از مقصد است: معمولاً خواندن و درک یک قطعه از RTL بدون دانستن اینکه برای چه پردازنده ای تولید شده است امکان پذیر می باشد. به طور مشابه، معنای RTL معمولاً به زبان سطح بالای منشأ برنامه بستگی ندارد.
زبان انتقال ثبات سیستمی برای بیان نمادین دنباله های ریزعملیات بین ثبات های یک ماژول دیجیتال است. این زبان ابزاری مناسب برای توصیف مختصر و دقیق سازماندهی داخلی کامپیوترهای دیجیتال می باشد. همچنین، می توان از آن برای تسهیل فرایند طراحی سیستم های دیجیتال استفاده نمود. [ ۲]
جهت نمایش ثبات های یک کامپیوتر از حروف همراه با اعداد استفاده می شود؛ برای مثال R1، PC یا AR. برای نشان دادن بخشی از بیت های یک ثبات از پرانتز استفاده می کنیم؛ برای مثال، R1 ( 0 - 7 ) بیانگر بیت های ۰ تا ۷ ثبات R1 می باشد.
عکس زبان انتقال ثبات
این نوشته برگرفته از سایت ویکی پدیا می باشد، اگر نادرست یا توهین آمیز است، لطفا گزارش دهید: گزارش تخلف

پیشنهاد کاربران