Joined: 27 Nov 2004 Posts: 1232 Location: www.parsx.com
Posted: Fri Jan 20, 2006 11:11 pm Post subject: تعریف رجیسترها و علت استفاده از آن ها
تعریف رجیستر :
رجیسترها خانه های پر سرعت حافظه هستند که کامپایلر برای قابل استفاده شدن برنامه از آن ها استفاده می کنند.
در صورت لزوم خود کاربر نیز می تواند برای سریع تر شدن کارها از آنها استفاده کند
چند نکته مهم که باید ذکر شود
از رجیسترها کمتر استفاده کنید چون زمانی که شما یک متغییر از نوع رجیستری تعریف می کنید یک خانه پر سرعت حافظه را از کامپایلر می گیرید
برای مثال متوانید شمارنده حلقه را ( در صورتی که از نوع char یا int باشد ) از نوع رجیستر تعریف کنید
فقط متغییر هایی از نوع char و یا int را می توان از نوع رجیستری تعریف کرد و دیگر متغییرها باید به صورت معمولی تعریف شوند
برای تعریف یک متغییر از نوع رجیستر کافیست کلمه register قبل از نام متغییر استفاده می کنیم
نکته :
هر گاه در یک بلاک برنامه بیش از یک متغییر از نوع زجیستری تعریف کنید کامپایلر هر دو را از نوع متغییر های معمولی تعریف خواهد کرد
نکته :
یک متغییر سراسری را نمی توان از نوع رجیستری تعریف کرد
Joined: 27 Nov 2004 Posts: 1232 Location: www.parsx.com
Posted: Fri Jan 20, 2006 11:12 pm Post subject:
رجیسترها :
به خانه های پر سرعت حافظه رجیستر گفته می شود . لازم به ذکر می باشد که این نوع حافظه با حافظه سخت ( Hard disk ) متفاوت می باشد .
عملوندها :
آن دسته عواملی که رو آنها عملیات ریاضی صورت می گیرد .
عملگرها :
عملیاتی ریاضی است که رو عملوندهای انجام می شود .
مثال : کامپیوتری دارای یک ALU شامل 32 عملگر دو عملوندی و شامل 14 عمگر تک عملوندی و تعداد 64 رجیستر می باشد فرمت دستور العمل را برای موارد زیر بیابید :
الف ) دستور العملهای دو عملوندی ؟
ب ) دستور العملهای تک عملوندی مشخص نمایید ؟
ج ) کد زبان ماشینی بنویسید که عملگر شماره 20 را روی به ترتیب رجیستر شماره 0 و رجیستر شماره 63 تاثیر دهد ؟
د ) کد زبان ماشینی بنویسید که عملگر شماره 10 را روی تنها عملوند خود رجیستر شماره 3 اثر دهد ؟
الف )4Bit 14 دستور العمل تک عملوندی
ب )5Bit 32 دستور العمل دو عملوندی
6Bit 64 رجیستر
ج ) 1111111 00010100 00000000
د ) 00000001 00001010
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum