ASCII
ASCII (ראשי תיבות של: American Standard Code for Information Interchange) הוא קוד לייצוגם של תווים (ספרות, אותיות האלפבית, סימני פיסוק ועוד) בזיכרון מחשב ובקובצי מחשב.
מבנה
עריכהקוד ASCII משמש להצגת אותיות האלפבית הלטיני הפשוט, ללא סימנים דיאקריטיים, המכונים לעיתים אקצנטים. הקוד הוא קידוד תווים של 7 סיביות המכיל 128 תווים (2 בחזקת 7, מספר כל הצירופים הבינאריים של 7 סיביות), בהם 33 תווי בקרה (ירידת שורה, למשל), 52 אותיות הכתב הלטיני (בעיקרון 26 אותיות, כאשר לכל אחת ישנן שתי צורות), 33 סימנים נוספים (כגון סימני פיסוק וסימן הרווח), ו-10 ספרות.
הקוד אינו כולל אותיות בשום אלפבית אחר. בעבר הותאם הקוד לעברית ("קוד ישן") – 27 תווים (כולל אותיות סופיות) תפסו את מקום האותיות הלטיניות הקטנות. גם שפות אחרות הותאמו אליו, למשל עבור גרמנית ויתרו על כמה תווים לטובת יצירת אותיות לטיניות עם סימנים.
כיום תקני ISO מרחיבים תקן זה (בצורתו הבסיסית האמריקאית – לא בצורתו הגרמנית או העברית, למשל), ו־Latin-1, התקן הבסיסי לאנגלית, כולל אותיות לטיניות עם סימנים דיאקריטיים. ISO-8859-8 הוא התקן לעברית המשמש ברוב מערכות המחשב הקיימות.
במרץ 1968 הורה הנשיא לינדון ג'ונסון לסוכנויות פדרליות של ארצות הברית לרכוש אך ורק מחשבים התומכים בקוד ASCII[1]. למשך תקופה מסוימת עוד הייתה ל־ASCII תחרות מצד קוד EBCDIC שפיתחה חברת IBM, אולם עם הזמן ASCII זכתה לעדיפות והייתה לתקן בין-לאומי.
כיום, השימוש ב־ASCII טהור יורד בגלל המעבר ליוניקוד, הכולל אוסף רחב בהרבה של סימנים, ומאפשר ייצוג שפות אחדות במקביל. על אף שישנן תכנות שאינן מתפקדות באופן אופטימלי עם תו שתופס 2 בתים, קיימים תקנים כגון UTF-8 המאפשרים לתווי ה־ASCII לעבור ללא שינוי.
טבלת ASCII
עריכהקוד ה-ASCII מוצג לעיתים כטבלה המתאימה בין התו לבין המספר שמיצג אותו ולכן מקובל להתייחס להתאמה בשם: "טבלת ASCII". בטבלת ה-ASCII שלמטה, מופיעים התווים כאשר הערך הבינארי של כל תו מושג על ידי העמודה השמאלית ביותר שמייצגת את שלוש הספרות הבינאריות השמאליות של המספר, ועל ידי השורה העליונה שמייצגת את ארבע הספרות הימניות של המספר. למשל, הייצוג הבינארי של התו "B" הוא "1000010". צבע הרקע הכחול מייצג תו בקרה, צבע הרקע הצהוב מיצג תווים הניתנים להדפסה.
_0000 | _0001 | _0010 | _0011 | _0100 | _0101 | _0110 | _0111 | _1000 | _1001 | _1010 | _1011 | _1100 | _1101 | _1110 | _1111 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
000_ | NUL | SOH | STX | ETX | EOT | ENQ | ACK | BEL | BS | HT | LF | VT | FF | CR | CO | SI |
001_ | DLE | DC1 | DC2 | DC3 | DC4 | NAK | SYN | ETB | CAN | EM | SUB | ESC | FS | GS | RS | US |
010_ | SP | ! | " | # | $ | % | & | ' | ( | ) | * | + | , | - | . | / |
011_ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
100_ | @ | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O |
101_ | P | Q | R | S | T | U | V | W | X | Y | Z | [ | \ | ] | ^ | _ |
110_ | ` | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o |
111 | p | q | r | s | t | u | v | w | x | y | z | { | | | } | ~ | DEL |
הערות שוליים לטבלת ASCII |
---|
|
עברית
עריכהבקוד ASCII הוגדרו רק אותיות אנגליות, גדולות וקטנות. כדי להתאימו לעברית הוחלפו האותיות האנגליות הקטנות באותיות עבריות (בטווח 0x61 עד 0x7A), כך ש-a הוחלפה ל-ב', b הוחלפה ל-ג', וכך הלאה עד z שהוחלפה ל-ת'. כיוון שבאלפבית העברי יש אות אחת יותר מאשר באלפבית האנגלי, קיבלה האות א' את הערך שלפני a, כלומר 0x60. התאמה זו כונתה בהמשך "קוד ישן".
בקוד ASCII מורחב, בן 8 ביטים, בתקן ISO 8859-8 קיבל האלפבית העברי את הטווח 0xE0 עד 0xFA.
בתקן Code page 862 (אנ') הנמצא בשימוש על ידי מערכת ההפעלה MS-DOS, שאף הוא בן 8 ביטים, קיבל האלפבית העברי את הטווח 0x80 עד 0x9A. בחלונות 3.x וחלונות 9x יש שימוש בקוד Windows-1255 במקום תקן 862, אם כי מערכת ההפעלה מקבלת את תקן 862 כאשר מופעלים יישומי DOS.
ראו גם
עריכהקישורים חיצוניים
עריכה- טבלת ASCII
- ASCII, באתר אנציקלופדיה בריטניקה (באנגלית)
הערות שוליים
עריכה- ^ Lyndon B. Johnson, Memorandum Approving the Adoption by the Federal Government of a Standard Code for Information Interchange. The American Presidency Project., March 11, 1968.