انجام پایان نامه

درخواست همکاری انجام پایان نامه  بانک مقالات رایگان انجام پایان نامه

سفارش پایان نامه

|

اطلاعیه مهم
سایت مشاوران تهران باتوجه به تصویب قانون مبارزه با تقلب علمی، از تاریخ ۳۰ ام مرداد ماه سال ۹۶ تمام فعالیتهای خود را به صورت کامل پایان داده است و دیگر هیچ گونه فعالیتی در زمینه پایان نامه، مقاله، ترجمه، چاپ کتاب و حتی تدریس خصوصی و آموزش نرم افزار ندارد، لذا خواهشمند هستیم تحت هیچ شرایطی درخواستی برای انجام امور مشروحه نداشته باشید و همچنین تمام مشتریانی که قبل از این تاریخ کار خود را بما سپردند فقط میتوانند توسط ایمیل این آدرس ایمیل توسط spambots حفاظت می شود. برای دیدن شما نیاز به جاوا اسکریپت دارید
جهت کنسل نمودن کار و عودت هزینه حداکثر تا آخر شهریور سال ۹۶ با ما درارتباط باشند بدیهی است بعد از این تاریخ هیچ ایمیلی پاسخ داده نخواهد شد و همچنین در تاریخ ۹۶/۰۵/۳۰ محل موسسه تخلیه و تمامی خطوط ثابت و همراه واگذار شده است.
با احترام مشاوران تهران

 پایان نامه 

پایان نامه‏ کامپیوتر

انجام پایان نامه‏ ارشد کامپیوتر

- Self :
از آنجایی که Self به عنوان یک تک فرایند UNIX و یا یک تک برنامه ی Macintosh اجرا می شود بنابراین به دو بخش تقسیم
می شود :
1-  (VM) virtual machine Self     2- Self world
اجرای ( VM ) برنامه های Self توسط اشیایی در Self world تعیین می شود و مجموعه ای از متد های اصلی و اولیه که در C++
نوشته شده اند را تهیه می کند که می توانند توسط متد های Self فراخوانی شوند تا اعمال پایه از قبیل اعمال حسابی اعداد صحیح ،
کپی کردن اشیا و اعمال مربوط به ورودی و خروجی ( I/O ) را انجام دهند .
Self world توزیع شده توسط VM کلکسیونی از اجرا های متفاوت اشیای Self به صورت traits و prototypes مانند همانند
سازی ویژگی ها و فرهنگ واژه ها . این اشیا می توانند برای برنامه های شخصی تغییر داده شوند و یا استفاده گردند .

The translation process - :
برنامه های Self به دستورالعمل های ماشین در 2 مرحله ترجمه می شوند . دستورالعمل های برنامه یا درون محیط برنامه نوشته می
شوند و یا از فایلی که به اشیای Self تجزیه شده خوانده می شود . بعضی از این اشیا ، اشیای داده ای هستند ( data objects ) و
بقیه متد ها هستند . متدها رفتار خاص خود را دارند که توسط bytecodes نمایش داده می شوند .
bytecodes دستورالعمل هایی هستند  برای هر پردازنده ی مجازی ساده ( Simple Virtual Processor ) که دستورالعمل هایی
مانند "Push receiver" یا "send the ‘x’ message" را می فهمند . علت بقای VM اینطور وانمود می شود که bytecodes ها
مستقیماً توسط کامپیوتر اجرا می شوند . برنامه نویسان می توانند اعماق Self world را برای سطح های bytecode کاوش کنند ،
اما نه بیشتر. این وانمود سازی آنان را مطمئن می سازد که رفتار برنامه های Self را تنها با نگاه به کد منبع برنامه می توان فهمید .
مرحله ی دوم از ترجمه ، کامپایل(compilation) واقعی bytecodes ها به دستورالعمل ماشین(machine code) است اینکه
چطور اجرای bytecodes انجام می شود و به طور کلی در سطح level Self  نامعلوم است بجز اثرات جانبی مانند سرعت اجرا و
حافظه ی استفاده شده .



در زمان کامپایل ابتدا یک پیغام عملاً فرستاده می شود ، بنابراین اجرای اولین برنامه کندتر از اجرای بعدی خواهد بود .









Language Reference - :
در این بخش به ساختار های نحوی و معنایی Self می پردازیم که تغییراتی پس از نسخه ی اولیه روی آن اعمال شده است و درکی
پایه از مفهوم شی گرایی فرض گردیده است .
نحو(Syntax ) توسط (Extended Backus-Naur Form (EBNF توصیف شده است . سمبل های نهایی درون Courier ( پیام
رسان) و بین تک کوتیشن '  ' ) ) ظاهر می شوند اما بایستی درون کد بدون کوتیشن ( '  ' ) نوشته شوند . سمبل های غیر نهایی به
صورت italic هستند . جدول زیر meta-symbols را توصیف می کند :










- Objects :
اشیا یک موجودیت بنیادی از Self هستند . هر موجودیت در برنامه های Self توسط یک یا چند شی نشان داده می شود ، حتی
کنترل توسط اشیا انجام می شود . بلوک ها بستار های Self هستند که برای اجرای ساختار کنترلی تعریف شده توسط کاربر استفاده
می شوند .
یک شی ترکیبی از دسته ای از Slots (می تواند خالی باشد) و بطور اختیاری کد Code است . یک Slot ، یک جفت name-value
است . Slot ها شامل شامل اشاره گر ها به سایر اشیا هستند . زمانی که یک Slot در طول یک message lookup پیدا می شود شی
موجود درون Slot ارزیابی می شود .
از آنجایی که هر چیزی درون Self به صورت شی است ، هیچ یک از اشیا هدفی مشابه با دیگر اشیا را ندارد . انواع معینی از اشیا
به تعداد کافی درتخصصی کردن نقش ها و وظیفه ها به بخش های فنی و نحوی کارا ، اتفاق می افتند . در این بخش دو نوع شی
معرفی شد که با عنوان data objects  یا (plain” objects“) و دو نوع شی همراه با کد با عنوان Ordinary methods و block
Methods مشخص می شوند .

- Syntax :
لغات شی درون پرانتز قرار می گیرند و شامل هر چیزی که شی را توصیف می کند ازقبیل لیستی ازSlot های محدود شده به (‘ | ’) ،
کدهایی که در موقع ارزیابی شی اجرا می شوند ، هستند برای مثال :
هر دو Slot و کد اختیاری هستند ، هر یک از ‘( | | )’  و  ‘( )’ مشخص کننده ی یک شی خالی هستند .
اشیای بلوکی ( Block objects ) مانند سایر اشیا نوشته می شوند با این تفاوت که به جای پرانتز از [ ] استفاده می شود برای مثال :

یک Slot list شامل یک سلسله توصیف کننده Slot descriptors است که با نقطه از هم جدا شده اند و نقطه ی پایان Slot list
اختیاری است همچنین یک Slot list می تواند خالی باشد .
کد یک شی نیز یک سلسله عبارت است که با نقطه ازهم مجزا شده اند، هر عبارت شامل یک سری ازmessage sends , literals
است .آخرین عبارت درون کدِ یک شی ممکن است با عملگر ‘^’ زود تر معرفی گردد .


- Data objects :
Data object ها اشیایی بدون کد هستند که می توانند دارای هر تعدادی از Slot ها باشند برای مثال شی زیر دارای دو Slot با نام
X,Y  است .     

یک شی داده ای Data objects زمانی که ارزیابی شود خودش را باز می گرداند .

-   Code:
کد تسلسلی از عبارات است . این عبارات به صورت صحیح ارزیابی می شوند و مقدار نتیجه دور انداخته می شود مگر اینکه این
مقدار تعیین کننده ی نتیجه ی ارزیابی نهایی کد باشد .
آرگومان های واقعیِ یک ارسال پیغام (message send) ، از چپ به راست قبل از اینکه پیغام ارسال شود ارزیابی می شوند به
عنوان مثال در عبارت زیر :
ابتدا 1 ارزیابی می شود سپس 5 * i  و پس از آن  2 * j  و بعد از آن نیز [|:k | k print] . نهایتاً پیغام to:By:Do: ارسال می شود .

- Methods :
Ordinary methods یا(simply “methods”)  متد های معمولی متد هایی هستند که درون سایر کد ها جاسازی نشده اند . یک
متد می تواند slot هایی به عنوان آرگومان داشته باشد (argument slots) و یا دارای Slot های محلی باشد .
 یک متد معمولی معمولاً یک Slot آرگومانِ پدرِ مجازی که Self نامیده می شود ، دارد . متد های معمولی در Self معادل با متدهای
Smalltalk هستند .
اگر یک Slot  شامل یک متد باشد مراحل زیر به هنگام ارزیابیSlot به عنوان نتیجه ی یک ارسال پیغام ، انجام می شود :
1-  شی متد همانند سازی می شود و یک شی فعالیت متد ( method activation object ) جدید شاملSlot ها یی برای آرگومان
های متد و محلی ایجاد می شود .
2- Slot پدرِ کپی شده (self parent slot) مقدار دهی اولیه به گیرنده ی پیغام می شود .
3- Slot های آرگومان کپی شده (argument slots) اگر وجود داشته باشند با مقادیر آرگومان های واقعی مقدار دهیِ اولیه می
شوند .
4- کد مربوط به متد درون فضای این شی فعالیت اجرا می شود .
برای مثال متد                                                                         را در نظر بگیرید :
این متد یک اسلات آرگومان دارد (Slot arg) و مربع این
آرگومان را به عنوان خروجی بر می گرداند .

.






انجام پایان نامه

انجام پایان نامه کامپیوتر، انجام پایان نامه ارشد کامپیوتر، انجام پایان نامه، پایان نامه

برای دیدن ادامه مطلب از لینک زیر استفاده نمایید

 

سفارش پایان نامه