איך המחשב יוצר צבעים: RGB, HEX ומספרים בינאריים
#FF0000. #00FF00. #0000FF. סימונים שבוודאי נתקלתם בהם בקובצי עיצוב או בקוד. נראים כמו קוד סודי, אולי כמו קוד משחק. למעשה אלה שמות של צבעים.
מלמעלה למטה: אדום, ירוק, כחול. אלה השמות שבהם המחשב מכנה צבעים. נבאר מאיפה הסימון הזה הגיע.
RGB — שלוש האותיות שיוצרות צבע
Red, Green, Blue. שלושת הצבעים הראשוניים של האור. שילובם ביחסים שונים מייצר כל צבע שניתן לראות.
כל יום אנחנו רואים RGB
כמעט בכל מסך יש RGB.
- מסך / טלוויזיה — כל פיקסל בנוי משלוש נקודות: אדום, ירוק, כחול
- מסך סמארטפון — אותו מבנה, פיקסלים קטנים יותר
- מקלדת גיימינג עם LED — שלושה LEDs של R, G, B לכל מקש
- תאורת מארז PC — רצועת RGB היא ישירות אות RGB
כשמגדילים מסך מספיק, רואים זאת בעין. אדום, ירוק, כחול. זה הכל. מיליוני נקודות RGB קטנות מצטרפות יחד לתמונה השלמה שאנו רואים.
צבע נוצר על ידי ערבוב
כל ערוץ RGB נע בין 0 ל-255 בעוצמתו.
RGB(255, 0, 0)— רק אדום במקסימום → אדום טהורRGB(0, 255, 0)— רק ירוק במקסימום → ירוק טהורRGB(255, 255, 0)— אדום + ירוק → צהובRGB(0, 0, 0)— הכל כבוי → שחורRGB(255, 255, 255)— הכל במקסימום → לבן
אדום + ירוק = צהוב אולי נשמע לא אינטואיטיבי, אך זוהי סינתזה של אור. שלא כמו ערבוב צבעים בשיעור אמנות (אדום + ירוק = חום), אור הולך ובהיר ככל שמוסיפים, ושילוב כל הצבעים ביחד נותן לבן.
הזיזו את שלושת המחוונים ותראו בעצמכם.
המספר בן 8 הספרות בצד הוא הייצוג הבינארי של אותו ערוץ. כשמזיזים את המחוון, המספר משתנה בהתאם. כיצד 0 ו-1 יוצרים 256 ערכים — זה הנושא הבא.
למה בדיוק 0 עד 255?
המחשב מטפל רק ב-0 ו-1. תא אחד שמחזיק 0 או 1 נקרא סיבית (bit). ככל שמוסיפים סיביות, מספר הערכים האפשריים מוכפל פי 2.
8 סיביות = בייט אחד (byte). לצבע אחד יש שלושה ערוצי RGB, סה”כ 3 בייטים = 24 סיביות. 24 סיביות מייצגות כ-16.7 מיליון צבעים — מספיק כדי להבחין בינם לבין עין אנושית, ולכן בייט אחד הפך לסטנדרט לכל ערוץ.
קריאת מספרים בינאריים — נסו בעצמכם
לכל מיקום יש ערך קבוע. משמאל לימין: 128, 64, 32, 16, 8, 4, 2, 1 — חזקות של 2.
מחברים את ערכי המיקומים שבהם מופיע 1, ומקבלים את המספר העשרוני.
לכן הערך המקסימלי של 8 סיביות הוא 255 — הסיבה המדויקת לכך שטווח הערוץ ב-RGB הוא 0–255.
HEX — אותו מספר, רק קצר יותר
RGB(255, 255, 255). זה 16 תווים. ארוך מדי לכתיבה חוזרת בכל שורת CSS או שדה כלי עיצוב. לכן הומצאה שיטה קצרה יותר לכתיבת אותו מספר.
מהו הקסדצימלי?
הקסדצימלי (בסיס 16) מייצג ערכים 0 עד 15 בתו אחד. אך הספרות הרגילות שלנו הן 0–9 בלבד — 10 ספרות. 6 הספרות החסרות לווים מהאלפבית.
שלוש כללים פשוטים:
- 0–9 — בדיוק כמו בדצימלי
- מ-10 מתחיל A
- F הוא ערך המקסימום של תו אחד (= 15)
למה בסיס 16 בדיוק?
4 ספרות בינאריות (0000 עד 1111) מייצגות בדיוק 16 ערכים.
4 ספרות בינאריות = תו הקסדצימלי אחד. ארבעה תווים הופכים לאחד. מכיוון שכל ערוץ RGB הוא 8 סיביות, הוא ממופה בדיוק ל-שני תווים הקסדצימליים.
כיצד ממירים RGB ל-HEX
נמיר את RGB(255, 87, 51).
הסימון ירד מ-14 תווים ל-7 תווים.
קריאת צבע מ-HEX בעין
כשמסתכלים על HEX, אפשר לנחש מה הצבע.
#FF5733— R מקסימלי (FF), G בינוני (57), B נמוך (33) → כתום עם אדום חזק#3576E0— R נמוך (35), G בינוני (76), B חזק (E0) → כחול עם גוון סגלגל#29A85A— R נמוך (29), G חזק (A8), B נמוך (5A) → ירוק רענן
כשמסתכלים על שלושת החלקים ויודעים להבחין “כתום או כחול?”, מעצבים ומפתחים יכולים לתקשר באותה שפה.
סיכום בשורה אחת
- RGB — שלושה ערוצים: אדום, ירוק, כחול. כל אחד 0–255
- בינארי 8 סיביות — הסיבה ש-256 ערכים לכל ערוץ
- HEX — אותם מספרים, בצורה קצרה של שישה תווים
כשמבינים את שלושת המושגים ביחד, קוד הצבע כבר לא נראה כמו שפה זרה. שלוש הספרות של RGB הן בדיוק שישה התווים של HEX.
הצעד הבא הוא להפוך את המספרים האלה לשפת המעצב. בקשות כמו “קצת יותר בהיר,” “פחות רווי,” או “אותו הדבר על נייר” קשות לטיפול עם RGB ו-HEX בלבד. כיצד HSL, CMYK ו-OKLCH פותרים זאת — ממשיך בפוסט RGB לא מספיק: סימוני הצבע HSL, CMYK ו-OKLCH.