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.
סיווג פרוטוקולים על פי מודל ה־OSI | ||
---|---|---|
שכבת היישום | HTTP • SMTP • FTP • RTP • IRC • SNMP • SIP • DNS • DHCP | |
שכבת הייצוג | MIME • ASCII • Unicode • TLS | |
שכבת השיחה | ASP • PPTP • SSH • NFS • RPC • SOCKS | |
שכבת התעבורה | TCP • UDP • SCTP • DCCP | |
שכבת הרשת | IP (IPv4 • IPv6) • ICMP • IPX • ניתוב | |
שכבת הקו | אתרנט • Token ring • FDDI | |
השכבה הפיזית | E1 • 10Base-T • RS-232 • DSL • SONET |