RISC לעומת CISC
מתוך ויקיפדיה, האנציקלופדיה החופשית
| ערך זה גדול מדי או שאינו מסודר היטב פיצול הערך לערכי משנה יקל על הקריאה ועל איתור מידע רלוונטי. כדי להציע דרכים לפצל את הערך או לדון בהצעה, עבור לדף השיחה. |
Reduced Instruction Set Computer ו-Complex Instruction Set Computer הן שתי גישות לפיהן מפתחים מעבדים בתחום המחשבים.
תוכן עניינים |
[עריכה] CISC
CISC היא גישה אשר הומצאה בשנות ה-60 של המאה ה-20 עקב מספר צרכים מגבילים שנתקיימו אז. באותה תקופה, עיקר התכנות נעשה בשפת מכונה או באסמבלי, וכתוצאה מכך עבודת התכנות הייתה קשה מאוד. כמו כן, זכרון היה יקר מאוד באותם ימים. לפי גישת ה-CISC, המעבד מקבל פקודות ארוכות יחסית אשר לוקחות כמויות זמן שונות כל אחת, ומבצע אותן. גישה זו הייתה מנוגדת לזו שקדמה לה, שלפיה היה צריך לאכסן כמויות גדולות של תוכנה ונדרשה המון עבודה על מנת לכתוב את כולה. הפתרון של CISC, שבו המעבד מקבל פקודה יחסית מורכבת ומבצע אותה, איפשר לחסוך את המקום ולהקל את מלאכת התכנות, שכן המתכנת לא היה צריך עוד לכתוב את כל השלבים הקטנים בביצוע הפקודה, ומספיק שהיה כותב פקודה כללית, והמחשב היה מפרש אותה לחלקיה.
דוגמה לצורת החשיבה ה-CISC-ית אפשר לקבל ממתמטיקה: את התרגיל 5+5+5+5+5+5+5 אפשר לכתוב בצורה מקוצרת, 7×5, אך אדם אשר אינו מכיר בעל פה את התוצאה עדיין יצטרך לחשב בצורה החיבור, למרות שעל הדף היה כתוב הרבה פחות. גישה זאת לא חוסכת אמנם את זמן החשיבה, אבל היא מקצרת את כמות הדיו הדרוש על מנת לכתוב את התרגיל.
[עריכה] RISC
RISC לעומתה, היא גישה הרבה יותר מופשטת. היא גורסת שכל פקודה ארוכה מורכבת מכמות כל שהיא של פקודות קצרות, שדורשות בערך אותה כמות זמן. על פי גישת ה-RISC, עדיין נכתוב את התרגיל 5+5+5+5+5+5+5. דבר זה אולי נשמע מיותר אולם יש לגישה זו שני משמעויות מעשיות:
- המעבד יותר פשוט – אין לו צורך לתרגם כל פקודה לחלקים שלה וזה חוסך מקום על המעבד.
- לא נעשות פעולות מיותרות - בגישת ה-CISC ייתכן שהמעבד יבזבז זמן רב על ביצוע חישובים אשר אינם מעניינים את המשתמש, מכיוון שהפקודות נבנות על מנת להיות הרבה יותר כלליות. לשם המחשה, ניתן לחשוב על זה כעל בנייה בחלקי לגו עם לבנים קטנים ולבנים גדולים. אם תרצה לבנות בית מלגו, יקח לך הרבה מאוד זמן מלבנים קטנים. למרות שבלבנים גדולים יהיה זה הרבה יותר קל, בבית שנבנה מלבנים קטנות יש הרבה יותר שליטה על הצורה, ולא יהיו שום בליטות מיותרות (במקרה שלנו - פקודות מיותרות , בזבוז זמן ומשאבים).
[עריכה] השימוש בשיטות כיום
עם הזמן תוכננו מהדרים אשר יכלו לתרגם ישירות את הקוד משפה עילית (כמו שפות התכנות VB ו־++C) לשפת מכונה ועל כן ירד האתגר בתכנות קוד RISC. כמו כן, ירדו מחירי אמצעי האיכסון, והתכנות ל־RISC הפך להיות יותר ויותר קל. כיום חלק גדול מהמעבדים הלא-שולחניים הם מבוססי RISC, כגון מעבדי ARM ,DEC Alpha ,SPARC ו־MIPS.
דוגמה נפוצה ביותר למעבדי CISC היא מעבד ה־x86 אשר משמש כמעט את כל המחשבים האישיים כיום, מלבד שני האחוזים הבודדים המבוססים על מעבדי ה־RISC מבוססי ה־PowerPC של חברת IBM אשר נמצאים במחשבי המקינטוש של חברת Apple. יחד עם זאת, ההגדרה של המחשבים האישיים המודרנים כמעבדי CISC אינה לגמרי נכונה. אמנם המעבדים מקבלים קוד x86 העובד בשיטת CISC, אך בתוך המעבדים המודרנים של AMD ואינטל ישנם יחידות מיוחדות המתרגמות את קוד ה־x86 לקוד הדומה מאוד ל־RISC של מיקרו פקודות.

