صفحه 1:
۱۱۱۱۱۱ ۱ ‏ا س‎ Department of Computer and IT Engineering University of Kurdistan 0 ‏عجن وو‎ Brobitertune CPU Structure By: Dr. Alireza Abdollahpouri 09

صفحه 2:
اجزا تشکیل دهنده 000 ‎eee‏ 55 5 15 ۱۱۸20۱05 ۱ مجموعه رجیسترها داده ها را ذخیره میکند ‎CLO‏ جب يا ۳ ‏عملیات محاسباتی و منطقی را انجام میدهد مشخص میکند که چه عملی در چه زمانی انجام كيرد. *از كلاك استفاده ميكند بصورت سخت افزاری و یا ميكرويروكرام سیگنال لازم را به بخشهای مختلف میفرسند. ‎@ ۱ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎

صفحه 3:
CPO valido ‏معما‎ ‎111111 190 191 191 191 1 111 * سازمان تك انباره اى * سازمان چند رجیستری مانند 9۳۸ ‎GPBRO, O1PG,‏ * سازمان پشته ای مثال: ماشین های 660 دارای یک معماری با مجموعه دستورات پیچیده ای است که تمامی جنبه های معماری های فوق را در بر میگیرد. __——_—_—_——— هه

صفحه 4:
اهمیت معماری (۳ چقدر است؟ 70 15 5 05 ۱128015 * استفاده کننده نهائی: هیچ! * برنامه نویس سطح بالا خیلی کم. تا حدی که بتواند کامپایلر مناسب را انتخاب نموده و عملکرد برنامه را بهینه کند. * برنامه نویس سطح پائین/ طراح ‎OG‏ اين افراد بايد اطلاعات کافی در مورد رجیسترهاء ساختار حافظه. انواع داده های موجود و عملکرد دستورات داشته باشند. طراحان کامپیوتر: این افراد نیز باید اطلاعات فوق را داشته باشند تا بتوانند اجزا سخت افزای مورد نیاز را اتتخاب کنند. @ ۱

صفحه 5:
ساختار رجیسترها 0000000 1191 1191 1191 1191 111110 "یکی از مههترین ویژگی های تعیین کننده برا ی یک 26۳00 ساختار رجيسترهاى داخلى آن است. اين رجيستر ها به دو دسته تقسيم بندى ميشوند: رجیسترهان که استفادهکننده نها را مى بيندا و ميتوائد از طريق برنامه نويسى به آنها دسترسي داشته باشد لمي - صمح یه ل لج ا السام - (جم) صم مطجو9. * رجيسترهانى كه براى كنترل و نكهدارى وضعيت 000 بكار ميرودد. اين رجيسترها توسط واحد كنترل براى اجراى دستورات مورد استفاده واقع ميشوند. 0 - جدود مص

صفحه 6:
سازمان تک انباره ۱ ‎[en on‏ * یک آکومولاتور ههه * مشابه با کامپیوتر پایه © ® 0 همواره یکی از اپرندها ۸۵6۵۰ ۵0

صفحه 7:
"ارات قاس س تن BCEOEROL REGIGTER ۴ * تمامی رجیسترها می توانند به عنوان اپراند دستور العملهای ‎PLO‏ بکار برده شوند. ۴ متال : رجیسترهای داده در پردازنده پنتیوم

صفحه 8:
ورودي خارجي(حافظه)

صفحه 9:
S pido BLO 9 ‏مجموعه رجیسترهای عمومی‎ 1110 0101 Ee در شکل فوق: * خروجی هر رجیستر به دو 202) متصل شده است. اینکار باعث میشود تا هر یک از آنان را بتوان آزادانه بعنوان مبدا عملیات ‎WE! PLO‏ نمود. * برای اینکه بتوان خروجی (() را به هر یک از رجیستر ها منتقل نمود اين خروجى به ورودی تمام رجیسترها متصل شده و علاوه بر آن با استفاده از یک دیکودر مقصد عملیات را ۶ یک (/9۷) ممکن است که قادر به انجام عملیات مختلفی باشد. برای انتخاب یک عمل مورد نیاز از خطوط کنترلی )0 استفاده میشود. 9

صفحه 10:
مثالی از عملیات ‎@LO‏ ‏0۲ 5155 5 16 01510 1110 برای مثال فرض کنید که میخواهیم میکرو اپریشن زیر را انجام دهیم: 9 + 9 80 ن عمل واحد کنترل باید سیگنالهای لازم را برای انتخاب اسب دیکودر ظ0(66() ,6(2660(), و (),ا9) انتخاب نماید: تعبین مقدار مناسب برای ورودی (00(60) یعنی 30) طوری که توی رجیستر 6*) در روی باس 0) قرار گیرد. تعیین مقدار مناسب برای ورودی 0020 یعتی 96 طوری که محتوی رجیستر 89) در روی باس 0) قرار گیرد. تعبین مقدار لازم برای ورودی 00۳0۲ که (را9) را وادار به انجام عمل جمع 0400) نمايد. *_ در نهایت انتخاب مقدار مناسب برای دیکور 0) به نحویکه خروجی (0اإ) را به رجيستر 0:0 منتقل نماید. @ 0

صفحه 11:
قالب دستورا 1 5 0 ۰ انتخاب عمل در ) * انتخاب رجیسترهای میدا ۶ از مداراتب سیار سریع ساخته میشود تا نتیجه را سریعتر آماده کند. 8 9 ه‌ 4 سم مس ‎OO‏ ‏© وه ‎oa‏ 0۳2008 a 19۳ Regist er Input R1 R2 R3 24 RG R7 Binar y code 000 001 010 011 100 101 110 111

صفحه 12:
* در 06۳00 انجام عملیات محاسباتی و منطقى بر عهده ‎Joc Cowl PLO‏ شیفت را میتوان توسط یک ‎oS GhPter‏ قبل و یا بعد از 9/00 قرار میگیرد انجام داد. در مواردی هم ممکن است عمل شیفت توسط خود(),ا) انجام شود. در فصل ۴ طراحی چنین ‎OLO‏ )1 دیدیم که عملیات آن در جدول مقایل ذکر شده است. Symbol TSFA INCA ADD SUB DECA AND OR XOR, COMA SHRA SHLA Operation Transfer A Increment A Add A+B Subtract A — B Decrement A And A and B OR Aand B XOR A and B Complement A Shift right A Shift left A OPcode 00000 00001 00010 00101 00110 01000 01010 01100 01110 10000 11000

صفحه 13:
مثال الا 55 5 5 11100015 * برای انجام میکرواپریشن زیر 606-6 مییایست کلمه کنترلی بصورت زیر انتخاب شود: {Pied OP -code Gd ce 0 Gycobol COB Re RO ad ‏امامه اسب اون‎ elo oll ool همانطور که قبلا دیدیم یک راه پیاه سازی واحد کنترل استفاده از میکروپر وگرامینگ است که در آن هر کلمه کنترلی در یک محل از حافظه 036 ذخیره خواهد شد. @ ۱

صفحه 14:
ae ارتباط با حافظه بسسس ال لا ۱۳ ADOT ad Re RO ae RS RO ۶

صفحه 15:
سازمان یشته با 6۳ هه هه ۱۱۱۱3۹۵۵۵ * ساختار ۱0۵ POGW ۶ POP ۰ دسترسی فقط به عنصر بالای پشته امکانپذیر است * فقط یک اشاره گر نیاز داریم GP = GTOCK ۳0۵0/۳۵ ٠

صفحه 16:
رد۳ 0 5 5 5 ۱۱۱2805 oo © © ه و يك يشته 64 كلمه اي porry 0 ات OP —O@+ O[G] — OR Ae (GP=O) PLEO (POLL—A) COETY —O

صفحه 17:
oo ero00 POP 1110 0101 Ee OR ۳۳۳۷۳ OR — O[G@] GP — GP-d AP (GP=O) MLEO (EO BOETY Pg! or © ‏بيتى‎ POLL A) COLL — O

صفحه 18:
کاربرد- استفاده برای صدا زدن برنامه فرعی ۲ 55 5 15 ۱۱12015 * صدا زدن برنامه فرعی(هت ‎(Provedure‏ —call label Qusk retura addess vo stack} hap te Label (Provedure returc) esl ‏برگشت از‎ * —ret op ‏وله‎ Prow stack; duwp to akbress @ ———_—_———__ ,

صفحه 19:
کارپرد استفاده در برنامه هاى بركشت يذير ۲ 155 0 16 0101 1110 oi pala بأ میتوان برای هر نسخه از تابع صدا زده شده حافظه جداگانه ای در نظر گرفت آرگومانها و متغیرهای محلی را میتوان در پشته ذخیره نمود. آدرس دهی متغیرهای محلی و آرگومانها نسبت به موقعیت پشته انجام میشود. بازگشت از توابع عکس حالتی است که صدا زده شده اند @ ۱

صفحه 20:
کاربرد 08 515 5 15 15 15 111۳10 * عبارات محاسباتی ‎٠‏ +۳00 ‎POLIGW ۵‏ ‎+/PB0*CO ٠‏ هه

صفحه 21:
7-00 ااا 0 9( ٠ POGW ۵ ٠ POGW ۵ * OOL (POP,POP, POCW &*0) ۰ POGW C ۰ POGW O * O10 =(POP,POP,POCW C/O) * BOD (POP,POP, POGW REGOLT)

صفحه 22:
+0 ltt tas ۳061 © ۳004 © 9

صفحه 23:
0+ ااا 0 9( 0۵1 © ۳06٩4 © 0 ۵ اوه POOL DO eo

صفحه 24:
0+ ااا 0 9( ۳04 © ۳081۲ ۰ 0 POCL O POOL O 00 0 eo

صفحه 25:
+0 ۱۳۱ ‏س]۳‎ ee ۳01 © ۳064 ۰ 00 ۳0۵4 ۵ 061 0 0 00 ۵+0

صفحه 26:
کدام مجموعه از عملیات ذیل می تواند یک پشته را پیاده سازی نماید ؟ ۲ 55 5 5 11100015 POGW CB POP 6 ‏مج هچ‎ 060066 1 OEO[GE] © ‏4ب هو‎ GP —6e+ ® —O€O[GR]| ‏م‎ ‎OCO[GE] ‏4ب و مب‎ ۵60۵۵6 © Ge coer] » ‏موی هه‎ ۵ 0] ‏هر سه‎ ۱۳ Be Le

صفحه 27:
انواعء ساختار پشته ل 11 1 11 11 19 11 1131لا - سرعت دسترسى بالا - قيمت زياد - تعداد كم 58 پشته حافظه ای كه - ارزان - حجم زياد

صفحه 28:
تانیر نوع ۹ 2۶۷۱ بر قالب ‎yo >‏ 1۱1207۳5 * تک انباره - معمولا یک اپرند آکومولاتور است — دستورات تک آدرسی - دستورات سه آدرسی (یا دو آدرسی) * پشته ای اپرند مربوط به پوش يا پاپ — دستورات یک آدرسی و صفر آدرسی

صفحه 29:
تاثیر قالب دستورالعمل ها بر روی سرعت اجرا ۳ =X (C+D)-(O+@) outro - دستورات سه آدرسی — دستورات دو آدرسی - دستورات یک آدرسی - دستورات صفرآدرسی

صفحه 30:
دستورات سه آد ‎Itt‏ در کامپیوترهای سهآدرسىء هر قسمت آدرس, برای مشخص نمودن یک ثبات پردازنده و یا آدرس یک عملوند در حافظه تخصیص داده می‌شود. ‎X = (+) * (O+0)‏ ADD R1, A, B R1 € MA] + M[B] ADD R2,C, D R2 € M[C] + M[D] MUL X, R1, R2 M[X] € R1 x R2 @ ———_—_—_——__

صفحه 31:
آدرس می‌تواند یک رجیستر پردازنده يا یک خانه حافظه را مشخص نماید. ۲ < )+۵( * )0+0( R1 € MA] Rl €R1 + M[B] R2 € M[C] 82 » 82 + ‏الا‎ ]0[ R1 €R1 x R2 M[X] € R1 90 MOV R1,A ADD R1, B MOV R2,C ADD R2, D MUL R1, R2 MOV X, R1

صفحه 32:
دستورات یک آد سورب بت اجره ۱1۱1 ۱۱۱۱ دستورات یکآدرسی, برای تمام عملیات بر روی داده‌ها. رجیستر اکومولاتور »< )۵+0( + )0+۵( ‏را به‌کار می‌برند.‎ BO ۱۵0۵۵ 0۵ 60 0 [016 +00 60 © ههه ‎T 0۳۶0‏ ۵000 ۱۵0۵0۵ 0 0 € [0] ‏ههه‎ © 60 00 + 010[ oo 7 60 > ‏من‎ « O[T] 00۵ * Op] >» ‏هه‎

صفحه 33:
د ستو ات صغراد ‎Itt‏ X = (®+0) * (C+0) - POGW OB ٠ POGW 6 ٠ COO * POGW C ٠ POGW 0 ٠ BOO ٠ MOL * POP X

صفحه 34:
۳ X = (A+B) x (C+D) LOAD R1,A 851 € MA] LOAD R2,B R2 € M[B] LOAD R3,C R3 € MC] LOAD R4,D R4 €M[D] ADD R1, R1, R2 851 © 81+ 2 ADD _ R3, R3, R4 R3 €R3 + R4 ‏اناالا‎ R1, R1, R3 Rl €R1 x R3 STORE X, R1 M[X] € R1 or

صفحه 35:
روشهای آدرس‌دهی ۲ 155 0 16 0101 1110 دستویات یک کامپیوتر عملی را بر یوی داده ذخیره شده در حافظه و یا رجیسترهای ۲۴۱ انجام میدهند. روش مشخص کردن عملوند یک دستورالعمل حالات آدرس دهی ويا 72006 200۳655109 نامیده ميشود. اصولا حالات مختلف آدرس‌دهی عملوند دستور, تسهیلات زیر را در سیستم فراهم می‌آورد: ۰ . قابلیت ایجاد شمارنده برای برنامه حلقه, و شاخص‌بندی در داده‌ها و هم‌چنین ایجاد اآشاره‌گر حافظه و جابجایی برای کاربر فراهم می‌شود ‎٠‏ امکان تقلیل تعداد بیت‌های قسمت آدرس دستور؛ فراهم می‌شود. ‎@ 7 ‎

صفحه 36:
إنواع دالت عر د ‎ee‏ آدرس دهی ضمنی ‎4Ieoplied Oddressicy Dode‏ آدرس دهی بلادرنگ ‎Seowednte Oddressiagy Orde‏ آدرس دهی ثبات ‎QReqister Oddresstcy‏ آدرس دهی غیر مستقیم بکمک ثبات ‎Reqister Iodicent Oddressicgy‏ Ouviarewedt pr Buirderrewest — jISy95 ‏و یا کاهشی‎ Oirert Oddressiog Dode آدرس دهی افزا آدرس دهی مستقیم آدرس دهی غیر مس ‎Aedtrert Bddressiry Dode‏ 5 یر ‎Relive Pddressie Dod pa‏ آدرس دهی نسبی ول () لت آدرس دهی شاخص ‎Ouse Revister Oddressicn Onde‏ آدرس دهی با ثبات پابه @ 7

صفحه 37:
آدرس دهی ضمتی 8 55 0 5 ۱05 ۲ ۴ علج( بمعحصةك3) لصنامو]ا” در اين روش ايراندها بصورت ضمنى در داخل دستور العمل مشخص اند. - مثل دستور ‎giao oS OM‏ آکومولاتور را متمم میکند. - دستورات صفر آدرسی مورد استفاده در کامپیوترهای ع 561 نيز از آدرس دهی ضمنی استفاده میکنند زیرا عملوندها بطور ضمنی در بالای پشته در نظر گرفته ميشوند. @ ۱

صفحه 38:
‎pst‏ 2 ودشي يلاد نگ 1 5 15 ۱015 1۱۳۱ ‏* () ره <) لحم در این روش مقدار عملوند در داخل خود دستور العمل داده ‏میشود. ‏اين مد آدرس دهی برای مقدار دهی رجیسترها بکار میرود. — متل دستور زیر در پردازنده 66 ‎MOO 8‏ ‎Opercced‏ سیم ‎@ ———_—_———__ ‎ ‎ ‎ ‎ ‎

صفحه 39:
1 حیستر طح هت تدس س سسسدد 1 Revister Addressing ٠ ‏در اين روش عملوندها در داخل رجیسترهای پردازنده قرار‎ ‏دارند. با استفاده از 1) بيت ميتوان تعداد 9 رحیستر را‎ مشخص نمود. - متل دستور زیر در پردازنده 766 060000 Lb, BL Sa 0 ‎=a‏ مس سس ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎

صفحه 40:
آدرس دهی رجیستری غیر مستقیم ۲ 1155 5 16 0151 1110 ‎Reyister Iedirect Oddressioy ۶‏ * در این روش دستورالعمل رجیستری را مشخص میکند که محتوی آن آدرس عملوند در حافظه را مشخص خواهد نمود. 2 متل دستور زیر در پردازنده 766 ‎MOO &X,[G1]‏ OPO rowers Desey © 1111111 eo

صفحه 41:
آد د or Outoderrewed uddressiog * افزایش و یا کاهشی خودکا ‎mit TTL‏ * این روش مشابه آدرس دهی رجیستری ‎jue‏ مستقیم است با این تفاوت که مقدار رجیستر بعد یا قبل از استفاده برای محاسبه آدرس موثر افز ایش و یا کاهش میابد. Oewory COO rey R=R+0 60 & Q=R-A

صفحه 42:
آدرس دهی مستقیم ۲ 155 0 16 0101 11108 ‎Oirert Oddressicgy Dede ۶‏ در این روش آدرس عملوند در داخل دستور العمل ذكر ميشود. - متل دستور زیر در پردازنده 7626 ‎MOO OX, [SOOO]‏

صفحه 43:
آدرس دهى غير مستقیم لس سس 1101 11 191 191 1191 11910 ‎Ockresotay Dock *‏ الم در این روش آدرس موجود در دستور العمل محلی از حاقطه را مشخص میکند که آدرس عملوند در آنجا قرار دارد. در این حالت برای دستر ‏به عملوند دوبار رجوع به حافطه مورد نیاز است: یکبار برای پیدا کردن آدرس آن و بار دیگر برای خواندن مقدار آن. ‏سح ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎

صفحه 44:
آدرس دهی نسبی ‎A 191 11 111‏ جلعج() ودتعودص كل 15) جرهماج © * در اين روش آدرس موثر از جمع آدرس مشخص شده در داخل دستور العمل و محتوى ()0) حاصل ميشود: ‎OPPevive Oddress= address pot oP testruntiod + pout oP PO‏ تایه 2 1 ee Qa ‏دنت‎

صفحه 45:
آدرس دهی شاخص دار ۳] فک 1118 0101 1 1 ‏كا‎ ‎Arden Ockrevokry Doe در اين روش آدرس موثر از جمع آدرس مشخص شده در داخل دستورالعمل و محتوی یک رجیستر مخصوص که رجیستر ایندکس نامیده میشود حاصل میشود: ار بل أن همست 2۴ نوم حول ‎OPPevive Oxk.=‏ معمولا از اين روش برای دسترسی به داده های یک آرایه استفاده میشود. که محل شروع داده ها در حافظه در دستور العمل مشخص میشود و فاصله داده مورد نظر تا محل شروع توسط رجیستر ایندکس تعیین میگردد. Orwoy

صفحه 46:
آدرس دهی با ثبات بایه 11827200 0 0557 0 use Reqister Oddressiay Orde اين روش مشابه آدرس دهی با ثبات شاخص است با اين تفاوت که بجای ثبات شاخص از ثبات پایه استفاده ميشود. تفاوت این دو روش در نحوه استفاده از رجیسترهاست. ار هه یی + جلا ماح خن اون حول = ‎OPPectue Odd‏ ]

صفحه 47:
متال عددی مقدار آکومولاتور در صورت اجرای دستور موجود در آدرس ‎ly COO‏ حالتهای مختلف آدرین دهی چیست؟ PC = 200 R1 = 400 XR = 100 AC حالت حافظه پارکردن ۸۲ 0 2 آدرس دستور بعدی 450 700 800 900 325 300 آدرس 200 201 202 399 400 500 600 702

صفحه 48:
مش بع<دی 1 1 11 1111 حالات آدرس‌دهی آدرس مون محتوای اکومولاتور تیم 500 800 بلافصل 201 500 ‎alae‏ 800 300 ‎Re‏ 702 325 شاخص‌دار 600 900 ‎ol‏ 400 غیرمستقیم از طریق ثبات 400 700 افزايش خودکار 400 700 & 450 399 Sigs ‏کلف‎ 9

صفحه 49:
مجموعه دستورات کامپیو: ات ‎sonnets‏ دستورات مورد استفاده درکامپیوترهای مختلف از لحاظ تعداد. عملکرد. نشانه های مورد استفاده برای اسمبلی: و کد باینری بسیار متفاوت هستند با اين وجود تمامی آنها دارای دستوراتی از گروههای زیر میباشند: دستورات انتقال داده دستور ات محاسباتی» منطقی و جابجائی دستورات کنترل برنامه

صفحه 50:
دستورات معمول ‎Jlaul‏ ۱۱۱۳۱۳۱۵۵ ecb | فرم سمبولیک نام LO or @OO xXOW 10 او 1 التقال داده بين ورودى/خروجى ‎“et Our oor‏ ‎POCW‏ حاص 18 ] انتقل داده بين يشتهو رجینترها ‎Poe‏ 2 ا 09

صفحه 51:
هشت حالت ادرس‌دهی برای دستور با عملکر: زبان اسمبلى حالت آدرس‌دهی ‎LD ADR AC € M[ADR]‏ آدرس‌دهی مستقیم ‎LD @ADR AC € M [M[ADRI]‏ آدرس‌دهی غبرمستقیم ‎LD $ADR AC €M[PC + ADR]‏ آدرس‌دهی نسبی ‎AC €NBR‏ قل ما آدرس‌دهی بلافصل ‎LD ADR (X) AC € M[ADR + XR]‏ آدرس‌دهی شاخص ‎LD RI AC €RI‏ آدرس‌دهی ثبات ‎LD (RI) AC €M[RI]‏ آدرس‌دهی رجيستري غیرمستقیم ‎+LD (RI) AC €M [RI], Ri€Ri+1‏ آدرس‌دهی افزایش خودکار 9 ۲

صفحه 52:
نماد دستور نام دستور ‎Increment INC‏ افزایش‌دهنده یک ‎Decrement DEC‏ کاهش‌دهنده یک ‎Add ADD‏ جمع ‎Subtract SUB‏ تفریق ‎Multiply MUL‏ ضرب ‎Divide DIV‏ تقسیم ‎Add with carry ADDC‏ جمع با بیت نقلی ‎Subtract with SUBB‏ تفریق با بیت قرضی ‎borrow ‎2 ‏مکمل‎ Negate (2’s NEG ‎0 complement) ‎ ‎

صفحه 53:
د السبيوراميبث مکی و ‎wine‏ روف بيت نماد دستور CLR COM AND OR XOR CLRC SETC COMC El DI نام دستور ‎Clear‏ صفر كردن ‎Complement‏ مكمل كردن ‎AND AND‏ ‎OR OR‏ ‎XOR XOR‏ ‎Clear carry‏ صفر كردن بيت نقلى ‎Set carry‏ یک کردن بیت نقلی ‎Complement carry‏ مكمل كردن بيت نقلى ‎Enable Interrupt‏ فعال کردن وقفه Disable Interrupt غیرفعال کردن وقفه

صفحه 54:
دستورات معمولی شیفت فرم نمادین نام دستور ‎Logical Shift Right SHR‏ شیفت به راست ‎Logical Shift Left SHL‏ شیفت به جب ‎SHRA‏ Arithmetic Shift Right راست ‎Arithmetic Shift Left SHLA‏ ‎Rotate Right ROR‏ چرخش به راست ‎Rotate Left ROL‏ چرخش به چپ ‎Rotate Right through carry RORC‏ چرخش به راست از طریق بیت نقلی ‎ROLC‏ ‎Rotate Left through carry ‏چرخش به چپ از 0 ‎oe‏ طريق بيت نقلى ‎ ‎ ‎

صفحه 55:
هه ستو د ديت ا م فرم نمادین BR JMP SKP CALL RET CMP TST نام دستور ‎Branch‏ ‎Jump‏ ‎SKIP‏ Call Return Compare( By subtraction) Test( By ANDing) انشعاب رد كردن صدا زدن بازگشت مقایسه

صفحه 56:
بيت هاى وضعيت الا 55 5 5 11100015 >t fo ous «۷ ومع ۳۵( شرطهایی که بر اساس آنها تصمیم 0 | ه۵ | هه در مورد پرش گرفته میشود بر اساس این بیتها هستند. لا ‎Le‏

صفحه 57:
مقایسه اعداد علامت دار و بدون علامت 1 5155 5 5 ۱05 1۱18۵ سوال: © و 9کدام بزرگترند؟ 0 0 ‎o=‏ ‏جواب: بستگی دارد آنها را علامت دار و يا بدون 000000000 علامت در نظر بگیريم. بدون علامت (0<0) علامت دار (9>06) 0 -هه 50 ۵-0 820 0

صفحه 58:
هه ده هد ده انواع مختلف وقفه در کامپیوتر * وقفه های خارجی - این وقفه ها سخت افزاری بوده و توسط یک وسیله خارجی نظیر 10 و یا تایمر رخ میدهد. ۴ وقفه های داخلی - در اثر استفاده غلط و نابجای یک دستور حاصل ميشود. مثل رخ دادن س انجام یک تقسيم بر صفرء يك كد دستور العمل غلط سرریز شدن پشته؛ ا - برنامه سرویس دهی به وقفه در هر مورد در باره عکس العمل مناسب تصمیم وقفه گاهی ۷7 نامیده میشود. ۴ وقفه های نرم افزاری <- نوع خاصی از صدا زدن برنامه فرعی هستند. برای انجام عملیات خاصی نظیر تغییر مد پرنامه از حالت سب به ۸ و یا انجام سرویس خاصی )مثلا چاپ ب کاراکتر(بکار میروند. @ 98

صفحه 59:
قالب دستور العمل ها ‎os‏ 11151 * قالب دستورالعملها وایسته به نوع طراحی ‎cau! OPO‏ * بخش های مختلف يك دستور العمل OP-COOE — - آدرس ( حافظه . ثبات ....) - شیوه آدرسدهی

صفحه 60:
هه 1 1ك 1لا 1ل 1901 11 1111 111 تنوع دستور العملها - کامپیوترهای 0190 (پر دستور ) - کامپیوترهای ‎RIGC‏ (کم دستور )

صفحه 61:
60 ات سصده 6 ‎am‏ با عه > معماری یک کامپیوتر متاثر از مجموعه دستورات انتخاب شده برای آن است. در کامپیوتر های اولیه سعی بر این بود تا تعداد دستورات کم و ساده اده سازی سخت افزاری آن ممکن باشد. ن آن تعداد دستورات سخت افزار و ارزان کامپیوترها افزایش یافته و بر پیچیدگی آنها افزوده گردید. هدف این بود تا هر چه بیشتر نیاز های کاربران را در سخت افزار گنجانده وبا کاهش فاصله بین بانهای سطح بالا و دستورات کا کار ترجمه دستورات سطح بالا را ساده تر کنند. این نوع کامپیوترها گاها تا ۲۰۰ دستور و تعداد بسیار زیادی مد آدرس دهی دا . این کامپیوتر ها ‎(visv) |)‏ ره نو محتسطاحها مطامجه() مینامند. ‎ ‎9

صفحه 62:
ویزگ های کاسیوترهای 0189 1 11 1لا | ‎me‏ ‏تعداد زیادی دستورالعمل دارند ۱۰۰) تا ه۰ ۲ عدد( دستوراتی برای انجام کارهای ویژه دارند که معمولا بندرت مورد استفاده قرار میگیرند تعداد زیادی مد آدرس دهی دارند طول دستور العمل ها متفاوت است دستوراتی دارند که عملیاتی را بر روی اپراندهای موجود در حافظه انجام میدهند. برای اجرای دستورات ‎oy‏ چندین کلاک نیاز هست. 9

صفحه 63:
کامپیوترهای با مجموعه دستورات کاهش یافته۱۵0؟) 55155 0 5 00 11180 معماری 08210500 ابداعی مهم در زمینه سازمان کامپیوتر بشمار میرود. * در این معماری سعی شده است تا با ساده تر کردن مجموعه دستور العمل ها بر قدرت پردازنده افزوده شود.

صفحه 64:
Pre Gewuatiz (Bup 1110 0101 Ee با ييشرفت زيانهاى سطح بالا اختلاف بين زبان سطح بالا برنامه هاى سطح بالا و زبان ماشين كسترش يافت.هر يك از معماريهاى فوق روش مختلقى براى كاهش اين اختلاف معرفى كردند تا ترجمه زبانهاى سطح بالا بطرز موترترى انجام شود. بريه ومجععه رويد زبان ماشين * نكرش : 001090 دستورات زبان ماشین پیچیده تر و به زبان سطح بالا نزدیکتر گردد. * نگرش : (196) دستورات زبان ماشین ساده تر و به نیازهای 0-۹ ‏نزدیکتر گردد.‎ ob ae

صفحه 65:
دستورات ف در کامپیوتر کدامند؟ ‎Cet it no‏ 008( * مطالعات زیادی که برای تعیین مشخصات و الگوی دستورات حاصل از ترجمه برنامه های سطح بالا انجام گرفت نشان ميدهد كه: * از لحاظ تعداد دفعات استفاده از دستورات روند زير بطور تقريب وجود داشته است: ‎woes: 99%‏ — ‎voenttiocal broach: CO%‏ — ‎wikwetclouc: (O%‏ — ‎vbers: betwee 0.0% ord IO%‏ — دستورات ساده ير مصرف تر هستند 02

صفحه 66:
دستورات پرمصرف در کامپیوتر کدامند؟ وس تست اه 129 * از لحلظ مد آدرس دهی: - تقریبا ۱۸ 9 مواقع از مدهای آدرس دهی پیچیده نظیر رس ‎todexed-tHedirent, displcewrcttiodexed, stack‏ راس»استفاده شده است. - در بیشتر موارد از مدهای آدرس دهی ساده که امکان محاسبه آدرس در یک سیکل وجود داشته استفاده میشود. نظیر ,ال ات۲ رطاط ۲ ‎displiveweut‏ @ ۱

صفحه 67:
دستورات پرمصرف در کامپیوتر کدامند؟ ‎mci Leas‏ ۶ از لحاظ نوع عملوندها: * ۷۵۶6 عملوندها مقادیرعددی نظیرمقادیر صحیح » حقیقی و یا کاراکتری هستند که میتوان آنها را در رجیسترها ذخیره نمود. ۴ بقیه آنها آرایه ها و استراکچها هستند که بیشتر بصورت متغیرهای خارجی مورد استفاده قرار میگیرند. ۴ ۸۰96 عملوندهای عددی بصورت متغیرهای محلی مورد استفاده قرار میگیرند.

صفحه 68:
دستورات پرمصرف در کامپیوتر کدامند؟ 00 ۱ 191191 111111 ۴ از لحاظ زمانی که برای اجرای دستورات مصرف میشود: - با وجود آنکه دستورات مربوط به صدا زدن برنامه فرعی و بازگشت از آن تقریبا 9۵۱۵ از دستورات برنامه را تشکیل میدهند. اغلب وقت دحك صرف اجرا آنها ميشود. - دستورات أدج و مسا به مجموعه بزرگی از دستورات زبان ماشین ترجمه میشوند که بسیار نیاز به رجوع به حافظه دارند. ۶ مطالعات آماری برروی صدا زدن توابع نشان میدهد که: * فقط ۲ توابع بیشتر از ۶ پارامتر دارند * فقط 7,۷ توابع بیشتر از ۶ متغیر محلی دارند میشود.

صفحه 69:
۰*۹۵ ‏هات‎ Si a * دستورات ساده و کمی دارند <- هدف این است که بتوان دستورات را بسرعت اجرا کرد. اغلب دستورات 0821050 در یک سیکل اجرا میشوند) بعد ازواکشی و رمزگشایی ( <- چون دستورات در زمان مشایهی اجرا میشوند عمل 7۳/۲ دارای بازده بالایی خواهد بود. — کم بودن دستورات باعث ساده شدن واحد کنترل ومسیرهای ارتباطی میشود که منجر به کم شدن تعداد ترانزیستورهای مورد نیاز برای ساخت پردازنده میشود اینکار سرعت پردازنده را نیز افز ایش مب - در ضمن میتوان واحد کتترل را بروش سیم بندی ساخت. @ 8

صفحه 70:
016500 ‏هاي‎ zs 9 sa * دسترسی به حافظه محدود به دستورات ۳۷۶ , معا است - از آتجائیکه عمل رجوع به حافظه معمولا در یک سیکل امکانپذیر نمیباشد.تمهیداتی در کامپایلر استفاده میشود ت7۳ بطور ‎igo‏ ی استفاده شود. - یاقی دستورات بر روی محتوی رجیسترها عمل میکنند.

صفحه 71:
RIGO le ‏ویژگی‎ ‎111۳10 15 15 15 5 515 08 * تعداد مد های آدرس دهی آنها کم است - معمولا فقط از مدهای آدرس دهی زیر استفاده میشود: | ‎dient addressicy‏ ۰

صفحه 72:
ویزی هاي ‎®1GC‏ ‏۳ 0[ * دستورات طول و فرمت یکسانی دارند * اینکار باعث میشود تا خواندن دستورات و رمزگشائی آنها سریع و ساده باشد.زیرا لازم نیست تا معلوم شدن طول دستور برای رمزگشایی آن صبر کرد. * یکسانی فرمت باعث سهولت رمزگشایی میگردد زیرا کد و ادرس همه دستورات در محل یکسانی قرار دارند. @ 8

صفحه 73:
RIGO le ‏ویژگی‎ ‎111۳10 15 15 15 5 515 08 ۴ تعداد رجیسترهای زیادی دارند. - کم شدن دستورات باعث کوچگ شدن واحد کنترل و آژاد شدن فضا برای گنجاندن تعداد بیشتری رجیستر ميشود. - متغیرهای محلی. نتایج میانی و پارامترهای توابع در داخل رجیسترها ذخیره شده و تعداد رجوع به حافظه کاهش پیدا میکند. @ :

صفحه 74:
RI1IGC ‏سایر ویژگی های‎ UE ee eee استفاده ازتکنیک 2۱ که باهمیوشانی سیکل های واکشی. رمزگشائی و اجرا شده و نهایتا به اجرای هر دستور در یک سیکل منجر ميشود. تعداد زیادی رجیستر در داخل 77 وجود دارد استفاده از تکنیک همپوشانی رصع که باعث افزايش سرعت صدا زدن تابغ و بازگشت از آن ميشود. حمایت از کامپایلر برای افزایش کارائی در ترجمه برنامه های UL ‏سطح‎ ‎&

صفحه 75:
RIGO, 0160 ‏مقایسه‎ ‎1۱۳۲۱۸۱۲15 15 15 55 5 02 * برای متال ترجمه دستور ۰*۲ 2 » برای دو معماری فوق بصورت زیر خواهد بود: برای مثال ترجمه دستور ۲ *۰ 2 » برای دو معماری فوق بعبورت زیر خواهد بود: انجام شود. در حالیکه ‎RISO‏ 23 5 این است که از دستوراتی استفاده شود که هر دستور در یک پالس قابل اجرا باشند. در تتیجه برنامه 37960 دارای خط ط ره ‎OOLT‏ LO®O Rd, a LO®O RE, b MOL RARE GPORE au, Rd 0 29 RIG 0 09

صفحه 76:
مقایسه 180 ب لك * فرمول محاسبه کارانی * اگر از فرمول زیر برای محاسبه کارائی کامپیوتر استفاده شود: ‎time time instructions‏ ‎program ~ cyck‏ \ 0/160 سعوميكند تا لين ‎R160‏ یکند نا لین قسمستكاشييدا كند قسمتكاشييدا كند

صفحه 77:
بیشگامان ۲18۵ ا 959955912 119 1191 11 111 11191 11111 ‎٠‏ ايده 21090 در دهه ۸۰ معرفی گردید. از جمله پیشگامان آن میتوان به موارد زیر اشاره نمود ‎— 180 60d — GrocPord OIPG — Berkey RIGO 1 and © ‎

صفحه 78:
کاربردهای ۳68۵۵ 1 1 1 11180101 * عمده پردازنده های کامپیوترهای سرور و ‎workstariva‏ از نوع 6 هستند. * تعدادی از پردازنده های مشهور مبتنی بر ‎rjl Myke RIGO‏ - 00۲00/۲/06۹60) که در تلفنهای‌همراه استفلده میشود - ۲000 01۳05 که در برخی دستگاه هاوب ازی‌مورد استفلده است - با91) تا" مورد استفلده در سیستم‌هایلل لاو ‎vsbaiuul > 440 POOCR/PrwerPO —‏ در كامييوترهاو)0)0) ‎Tote! Perotti 1۱ ۰۷/۲ -‏ اگرچه از معمایی(16() پ پروی‌میکنند ولی‌ب سیاری‌از ویژگی‌هی ‎RIGO‏ را استفلده میکنند. @ 8

صفحه 79:
puertapped reyster widows 1110 0101 Ee دیدیم که صدا زدن برنامه فرعی و بازگشت از آن بخش مهمی از اجرای برنامه را بخود اختصاص میدهد. لذا سرعت بخشیدن به آن میتواند تاثیر زیادی در افزایش کارائی پردازنده داشته باشد. * هنگام صدا زدن یک برنامه فرعی دستوراتی استفاده میشوند که مقادیر رجیسترها را ذخیره کنند. و پارامترها را اتتقال دهند. ۱ * برای بازگشت از برنامه فرعی مقدار بازگشتی تابع به برنامه صدا زننده متتقل شده و مقادیر ذخیره شده رجیسترها بازیابی میشوند. @ 1

صفحه 80:
puerlupped revster widows 1110 0101 16 5 155 ۲ از همیپوشانی پنجره ای رجیسترها استفاده ذخیره و بازیافت مقادیر رجیسترها را حذف نمایند. * هر زمان که تابعی که صدا زده میشود پنجره ای از رجیسترها از میان بانک رجیسترموجود در پردازنده به آن اختصاص میاید. * اینکار از طریق افزاپ اینتری انجام میشود. با برگشت از تابع پوینتر به مقدار قبلی آن کاهش داده ميشود. * پنجره مورد استفاده برای تواب همجوار همپوشانی دارند تا امکان به اشتراک گذاشتن داده ها بین دو تابع وجود داشته باشد. @ ۱

صفحه 81:
reyster widows 1110 0101 Ee سر سر ‎on‏ ينجره رجيسة ‎in‏ اولیه از پنجره جدید مشترک برای انتقال اطلاعات استفاده میشود با برگشت تابع پوینتر با صدا زدن تابع پنجره جدیدی 22001 کاهش ‎SINT‏ أن رجيستر ها به أن اختصاصض 5 ‎oa‏ میشود.

صفحه 82:
Ulio 11100015 5 5 55 ee در کتاب سیستمی معرفی شده است که دارای بانک رجیستری با مشخصات زیر است: - این بانک دارای ۷۴ رجیستر است. - رجیستر های ۲) تا6) بعنوان رجیسترهای عمومی قابل استفاده تمامی توابع هستند - بقیه رحیسترها به به ۴ گروه(),(),),9) تقسیم شده اند. - هر پنجره دارای ۰ ۱ رجیستر اختصاصی و دو دسته رجیستر ۶ تائی مشترک با با پنجره های مجاور است. - از رجیسترهای اختصاصی برا ذخیره متغیرهای محلی و از رجیسترهای مشترک برای انتقال پارامترها استفاده میشود. - به اين ترنيب هر تابع میتواند از ۳۲ رحیستر استفاده نماید @ 8

صفحه 83:
مثال 8 ۵ ۲ و6 0 15155 ۱10001515 ۳ Rao Loed to D Comoran 7 © ‏امم‎ © ۳ Prov. O Common to ® crrd O ۳ Pree. O bowd ۵ 99 ROT Coenen (B oxrd © 99 Pre. 0 606 ‏سوه سس‎ , gq | Cmmrraty O aed ® © Prov.) 8

صفحه 84:
خ * نحوه محاسبه رجیسترهای قابل استفاده برای هر تابع به صورت زیر است. - - ) تعداد رجیسترهای عمومی - - باتعداد رجیسترهای اختصاصی هر پنجره - - «) تعداد رجیسترهای مشترک بین دو پنجره - - () تعداد پنجره ها i008 - ۱/۲66۵ اندازه پنجره - (6+)+۷۷ تعداد کل رجیسترها در بانک رجیستری @ -

صفحه 85:
RIGO 222 ‏نورداننده 4 ده‎ ۱ wii * یکی از اولین معماری های ۹6) است که در دانشگاه برکلی وه اين پردازنده ۲ بیتی: - دارای آدرس ۳۲ بیتی بوده و میتواند از داده های ۳۲9۱۶9۸ بیتی استفاده نماید. - سه مد آدرس دهی دارد: رجیستری. بلادرنگ و نسبی - یک بانک رجیستری ۱۳۸ تائی شامل ۰ ۱ رجیستر عمومی و ۸ پنجره ۲ رجیستری دارد. - ۳۱ دستورالعمل دارد 9

صفحه 86:
3 مت د ستو ات ‎Oretey RIGO ٩‏ 11 1ك 191 191 191 190 111111 © eo 16 ‏هه و6‎ 06 © eooe od Opoode | Rd @s 0 | 0۰ 0252 oe co} 46 46 6 46 46 ee ce 60 0ممملع‎ | Qd 5 0 ce Reqster wedkte wode: ©O= operand oO 4 49 ‏جع و‎ 60 0ممجط‎ | 00 Y

جهت مطالعه ادامه متن، فایل را دریافت نمایید.
34,000 تومان