תו (מחשב)

תו (Character ולעיתים בקיצור Char) הוא סוג משתנה, לרוב פרימיטיבי, הקיים בשפות תכנות רבות. משתנה מסוג זה מכיל ייצוג של סימול תו בודד, לרוב באמצעות שמירת הערך המפרי ה-ASCII של אותו התו. בשפות תכנות רבות, רצף של תווים נקרא מחרוזת ובאמצעות מבנה זה ניתן לשמור טקסטים, סיסמאות, שמות משתמש ועוד.
בישראל השתרשה צורת הגייה משובשת לסוג משתנה זה ונהגת פעמים רבות כ-"צ'אר", זאת בעקבות תחילית ה-Ch המופיעה ב-Char. עם זאת, צורת ההגייה הנכונה היא כ-"קאר".

במערכות מחשב מיוצגים התווים באמצעות קידודים בינאריים שונים. מספר התווים האפשריים בכל קוד נקבע לפי מספר הסיביות שמרכיבות תו אחד.
בקוד ISO 8859 ובקוד EBCDIC כל תו מורכב מ-8 סיביות, ולכן מספר התווים האפשרי בכל אחד מקודים אלה הוא 28 = 256. בקודים אחרים (כגון ASCII) תו הורכב מ-7 סיביות, שאיפשרו רק 128 תווים שונים. בקוד יוניקוד, בגרסאות ראשונות שלו תו יוצג על ידי 16 סיביות, שאיפשרו 65,536 תווים שונים. גרסה 2.0 של יוניקוד הורחבה להכיל 1,112,064 תווים באמצעות מנגנון UTF-16, שבו 2,048 קודים מנוצלים כדי לייצג יותר ממיליון תווים.

הסיביות המרכיבות כל תו ניתנות לכתיבה בקוד בינארי, אך נוח יותר לעשות זאת בכתיב הקסדצימלי. דוגמה: הערך 0xC1 בקוד EBCDIC הוא ייצוגה של האות A.

חשיבותו של התו, היא המסוגלות שלו לשמור כל סוג תו כצורת String באורך של 1, אפשרות לשמר Integers בעלי אורך של 1 כצורת Char, כל סימן, וכל אות (קטנה וגדולה), אשר גודלן לא עולה על יותר מתו בודד אחד.

ראו גם 
 סיבית
 קידוד תווים

יחידות נתונים
קידוד תווים