BASIC
מתוך ויקיפדיה, האנציקלופדיה החופשית
| ערך זה זקוק לעריכה, על מנת שיתאים לסגנון המקובל בוויקיפדיה. לצורך זה ייתכנו סיבות אחדות: פגמים טכניים כגון מיעוט קישורים פנימיים, סגנון הטעון שיפור או צורך בהגהה. אם אתם סבורים כי אין בדף בעיה, ניתן לציין זאת בדף השיחה שלו. |
BASIC היא משפחה של שפות תכנות. הקוד מורץ על ידי מפרש (Interpreter) שמתרגם כל שורת קוד בזמן הביצוע (ולכן איטי), שורה אחר שורה בניגוד למהדר (Compiler) שמתרגם את כל הקוד לשפת מכונה ושומר אותו כך.
BASIC נוצרה בשנת 1963 בקולג' דרטמות, כשפת תכנות פשוטה וקלה ללמידה, שתוכל לשמש כשפת תכנות ראשונה לצרכי לימוד. מטרה זו באה לידי ביטוי בשמה של השפה, BASIC, שהוא ראשי תיבות של Beginners All-purpose Symbolic Instruction Code.
בסוף שנות השבעים ובתחילת שנות ה-80, בתחילת התפוצה הנרחבת של המחשבים האישיים, זכתה בהם BASIC להצלחה רבה, עוד לפני עידן ה-PC של י.ב.מ (שנת 1981): אטארי, קומודור, סינקלייר וכו'. ראשיתה של חברת מיקרוסופט היא בפיתוח מהדרי BASIC.
בתקופה זו התרחקו הניבים של BASIC אחד מהשני וזאת למרות קיומו של תקן ANSI לשפה. ההתרחקות הגיעה עד כדי כך שכמעט ולא היו פקודות משותפות.
מיקרוסופט צירפו ל-DOS מפרש של BASIC (עד גרסה 5 - BASICA, מגרסה 5 - QBASIC) ולכן שפת התכנות נשארה שמישה. כאשר יצא חלונות, הוציאה חברת מיקרוסופט את Visual Basic שהוא כיום הניב הנפוץ ביותר של Basic. זמן קצר לאחר מכן הוציאה מיקרוסופט גרסה של Visual Basic עבור DOS.
כיום, רוב ההתקנות של Basic הן שפות סקריפט של תוכנות שונות ולא כל כך בתור שפת תכנות עצמאית.
שפת הבייסיק הייתה מה שמכונה קוד ספגטי. שורות של פקודות ממוספרות, שהקפיצה מאזור לאזור נעשתה על ידי פקודות של GO TO. חוסר המבניות בשפה זו הקשה על ארגון לוגי של קוד, ועל מעקב אחר השתלשלותה והרצתה של התוכנה.
תוכן עניינים |
[עריכה] היסטוריה
עד אמצע שנות ה־60, מחשבים היו כלים יקרים ביותר שנעשה בהם שימוש רק למטרות מיוחדות. סידור "הרצת אצווה" הריץ רק משימה אחת בכל רגע נתון, אחת אחרי השניה. אולם, בשנות ה־60 מחירי המחשבים התחילו לרדת, ואפילו חברות קטנות היו יכולות להרשות לעצמן לקנות אותם, ומהירותם גדלה עד למצב שהם פעמים רבות היו חסרי־מעשה ללא שום משימות להריץ.
שפות תכנות בעידן הרצת האצווה נטו להיות מתוכננות, כמו המחשבים שעליהם הם הורצו, למטרות מיוחדות (כמו חישובי נוסחאות מדעיות או עיבוד מידע עסקי, או לבסוף עבור עיבוד טקסט. מכיון שאפילו המחשבים היקרים פחות היו עדיין השקעה גדולה, הייתה נטייה חזקה להחשיב את היעילות (קרי זמן ביצוע וכדומה) להיות התכונה החשובה ביותר של השפה. באופן כללי, שפות ממוקצעות אלה היו קשות לשימוש ובעלות תחבירים שונים בהרבה אחד מהשני.
כאשר המחירים ירדו, האפשרות של חלוקת גישת המחשב, החל לעבור ממעבדות מחקר לשימוש מסחרי. רעיון חלוקת-הזמן הגיע. במערכת כזו, יכולת העיבוד של מעבד המחשב "נפרסה" זמן ולכל משתמש ניתנה כמות קטנה לסירוגין עם משתמשים אחרים. המחשבים נעשו מהירים מספיר שמרבית המשתמשים הרגישו כאילו כל המחשב עמד כולו לרשותם. בתאוריה, חלוקת זמן הפחיתה את המחיר של מחשוב באופן ניכר, משום שמכונה יחידה יכלה להיות מחולקת בין (עד) מאות משתמשים.
[עריכה] שנים מוקדמות - עידן מחשבי המיני
שפת הבייסיק המקורית תוכננה ב־1963 על־ידי ג'ון קמני ותומס קורטץ ומומשה על־ידי צוות של סטודנטים של אוניברסיטת דארטמות' תחת הוראתם. בייסיק תוכננה לאפשר לסטודנטים לכתוב תוכניות עבור ה־Dartmouth Time-Sharing System. היא נועדה להוות פתרון לסוגיות הסיבוכיות של שפות מוקדמות יותר עם תכן לשפה חדשה מיוחד עבור הסוג החדש של משתמשים שמערכות חלוקת־זמן אפשרה. כלומר, משתמש פחות טכני שלא היה בררן באיטרציות החישוב שהיו צריכים משתמשים יותר מסורתיים, וכך לא היה מעוניין במהירות. האפשרות להשתמש במחשב כדי לתמוך בהוראה ובמחקר הייתה אטרקטיבית מספיק. בשנים הבאות, כשדיאלקטים אחרים של בייסיק הופיעו, הדיאלקט המקורי של קמני וקורטץ נודע כ־Dartmouth BASIC (בייסיק דארטמות').
שמונת העקרונות שעמדו לנגד עיני המתכננים של בייסיק היו:
- שתהיה קלה למתחילים להשתמש.
- שתהיה שפת תכנות לשימוש כללי
- שתאפשר שתכונות מתקדמות יתווספו על ידי מומחים (תוך שמירה על השפה פשוטה למתחילים).
- שתהיה אינטראקטיבית.
- שתתן הודעות שגיאה ברורות וידידותיות.
- שתגיב מהר עבור תוכניות קצרות.
- שלא תדרוש הבנה של חומרת מחשבים.
- שתגן על המשתמש מפני מערכת ההפעלה.
השפה התבססה בחלקה על פורטראן II ובחלקה על אלגול 60, עם מספר תוספות כדי לעשות אותה מתאימה יותר לחלוקת זמן. (כמו-כן נלקחו בחשבון תכונות של מערכות חלוקת-זמן אחרות כגון JOSS ו-CORC ובמידה פחותה יותר LISP). בנוסף, קדמו לה נסיונות לתכנון שפת-הוראה אחרים בדארטמות' כמו DARSIMCO ב-1956 ו-DOPE (מימוש של 1962 של SAP ו-DART ב-1962 שהיה פורטראן II מופשט). בראשיתה, BASIC התרכזה בתמיכה בביצוע פעולות מתמטיות פשוטות, עם תמיכה בפעולות על מטריצות ופונקציונליות מלאה לטיפול במחרוזות שנוספה ב-1965. בייסיק מומשה לראשונה על מחשב מרכזי מסוג GE-265 שתמך במספר טרמינלים. בניגוד לדעה הרווחת, היא הייתה שפה מהודרת בראשיתה. כמו-כן היא הייתה מאוד יעילה, עם ביצועים טובים יותר ממימושי הפורטראן II וה-ALGOL 60 שרצו על ה-GE-265 עבור מספר בעיות תכנות עם חישוביות אינטנסיבית כמו מקסימיזציה של כלל סימפסון.
מתכנני השפה החליטו שהמהדר יהיה זמין ללא תשלום, כדי להפיץ את השפה. הם גם הרשו שימוש בו לבתי ספר באזור דארטמות' והשקיעו כמות נכבדה של מאמץ לקדם את בייסיק. עקב זאת, ידע בביסיק נעשה נפוץ יחסית (עבור שפת תכנות) ובייסיק מומשה על ידי מספר ספקים, ונעשתה פופולרית למדי על מחשבי מיני חדשים כמו סדרת ה-PDP של DEC, וה-Nova של Data General. במקרים האלה, בייסיק בדרך-כלל מומשה כמפרש, במקום (או בנוסף ל-) מהדר.
מספר שנים אחרי שיחרורה, מספר מומחי מחשבים בעלי-שם, במיוחד אדסחר דייקסטרה הביעו את דעתם שהשימוש בהצהרות GOTO, שהיה קיים בשפות תכנות רבות ביניהן בייסיק, גורם להרגלי תכנות רעים. מספר אחרים גם טענו שבייסיק היא איטית מדי (מכיוון שמרבית הגרסאות המפורשות איטיות מהגרסאות המהודרות המקבילות) או פשוטה מדי (גרסאות רבות, במיוחד למחשבים חלשים לא מימשו תכונות ויכולות חשובות).
[עריכה] גידול מהיר - עידן המחשבים הביתיים
האירוע שסיפק לבייסיק דרך לאוניברסליות היה כניסת המחשב הבייתי אלטייר 8800 ב-1975. רוב שפות התכנות דרשו יותר זכרון (ו/או יותר נפח בכונן הקשיח) ממה שהיו זמינים במחשבים הקטנים שמרבית המשתמשים יכלו להרשות לעצמם. ושפה כמו בייסיק, שיכלה להתמודד עם המגבלות האלו, הייתה אטרקטיבית, תוך התחשבות באכסון האיטי על טייפ נייר (או יותר מאוחר טייפ של קלטות אודיו: כוננים מכל סוג לא היו זמינים בכל מחיר עוד מספר שנים), ובהעדר עורכי טקסט מתאימים. לבייסיק היה גם הייתרון שהיא הייתה ידועה במידה טובה למתכננים הצעירים שגילו עניין במיקרו-מחשבים. המיסיונריות של קמני וקורטז היה משתלם מבחינה זאת. אחד המימושים הראושנים של השפה שהופיעו למכונות ה-8080 כמו האלטייר היה Tiny BASIC, מימוש פשוט שנכתב במקור על ידי ד"ר לי-צ'ן ו'אנג, ושהוסב לאלטייר על-ידי דניס אליסון בבקשתו של בוב אלברכט (שמאוחר יותר הקים את Dr. Dobb's Journal). התכן של Tiny BASIC וקוד המקור המלא פורסמו ב-1976 בג'ורנל הזה.
[[en:Image:Msxbasic.png|right|thumb|MSX BASIC version 3.0]]
חברות חדשות ניסו ללכת אחרי ההצלחות של "Micro Instrumentation and Telemtry Systems", "IMSAI", "North Star" ואפל מחשבים, ובכך יצרו תעשיית מחשבים ביתיים; בינתיים בייסיק נהפכה לתכונה מובנית בכמעט כל המחשבים הביתיים. מרביתם שווקו עם מפרש בייסיק ב-ROM (זכרון לקריאה בלבד) ובכך התגברו על בעיית הכוננים שהיו לא זמינים או יקרים מדי. מהר מאוד היו מיליוני מחשבים שהריצו ואריאנטים של בייסיק ברחבי העולם, וקרוב לודאי עם מספר רב יותר של כל משתמשי השפות האחרות ביחד.
יש מספר רב יותר של דיאלקטים של בייסיק, מאשר יש של כל שפת תכנות אחרת. למרבית המחשבים הביתיים של שנות ה-80 היה מפרש בייסיק בזכרון לקריאה בלבד. ה-BBC פרסם את BBC BASIC, שפותח עבורם על-ידי חברת מחשבי Acorn, שכלל מילות מפתח מבניות רבות נוספות, וכן גישה ישירה, מקיפה וגמישה למערכת ההפעלה. כמו-כן הוא כלל אסמבלר משולב. BBC BASIC היה דיאלקט מאוד מוערך, ועבר הסבה ממחשב ה-BBC Micro המקורי ללמעלה מ-30 פלטמורמות אחרות.
בזמן זה שבו חל גידול בשימוש בבייסיק, התפרסמו מגזינים רבים כמו Creative Magazine שכללו בסיסי קוד מקור שלמים למשחקים, כלי-עזר ותוכניות אחרות. אם ניקח בחשבון את האופי הישיר של בייסיק, היה זה עניין פשוט להקליד את הקוד מהמגזין לתוך המחשב ולהריץ את התוכנה. מגזינים שונים התפרסמו עם תוכניות למחשבים מסוימים, אך מספר תוכניות בייסיק היו אוניברסליות וניתן היה להשתמש בהם כקלט לכל מחשב שעשה שימוש בבייסיק.
[עריכה] בגרות — עידן המחשבים הביתיים
גרסאות בייסיק חדשות רבות נוצרו בתקופה הזאת. מיקרוסופט מכרה מספר גרסאות של בייסיק עבור MS-DOS או PC-DOS כולל BASICA, GW-BASIC (גרסה תואמת BASICA שלא דרשה את ה-ROM של IBM), ו-QuickBASIC. בורלנד, החברה שמכרה, את טורבו-פסקל, הוציאה את Turbo BASIC 1.0 ב-1985 (גרסאות חדשות שלה עדיין משווקות על-ידי הכותב המקורי תחת השם PowerBASIC).
שפות אלה הכניסו הרחבות רבות לבייסיק המקורי של המחשבים הביתיים, כמו טיפול משופר במחרוזות, תמיכה בגרפיקה, גישה למערכת הקבצים וטיפוסי נתונים נוספים. חשובים עוד יותר היו האמצעים לתכנות מובנה, כולל מבני בקרה נוספים ושגרות פרופר שכללו משתנים מקומיים.
אולם, עד למחצית השנייה של שנות ה-80, מחשבים חדשים היו בעלי יכולת גבוהה בהרבה עם יותר משאבים שעמדו לרשותם. באותו הזמן, מחשבים הפכו ממכשירים שהיוו תחביב, לכלים ששימשו בעיקר ליישומים שנכתבו על-ידי אנשים אחרים, ותכנות נעשה פחות חשוב למרבית המשתמשים. בייסיק התחילה להיות פחות חשובה, אף שמספר רב של גרסאות עדיין היו זמינות. בייסיק מהודרת או CBASIC עדיין נמצאת בשימוש במערכות נקודת מכירה רבות המבוססות על מערכת-ההפעלה IBM 4690.
מזלה של בייסיק התהפך שוב עם כניסתה לשוק של Visual Basic של מיקרוסופט. קשה למדי להחשיב שפה זו כבייסיק, בעיקר בגלל המעבר הבולט בנטייה שלה לכיוון תכנות מונחה עצמים ו-תכנות מונחה אירועים. בעוד שזה עשוי להחשב כאבולוציה של השפה, מספר קטן מאוד מהתכונות היחודיות של בייסיק דארטמות' המוקדם, כמו מספרי שורות ומילית המפתח INPUT, עדיין נשאר שם.
דיאלקטים רבים של בייסיק צצו בשנים האחרונות, כולל Bywater BASIC ו-True BASIC (היורש הישיר של בייסיק דארטמות' מחברה שנשלטת על ידי קורטז). לאחרונה, שארית הקהיליה שהשתמשה במוצרי הבייסיק של מיקרוסופט שלפני ויז'ואל בייסיק החלה לעבור באופן מלא ל-FreeBASIC, מהדר תחת רשיון GPL, שמהדר את בייסיק באמצעות GCC. ואריאנטים רבים אחרים של בייסיק והסבות נכתבו על ידי חובבנים, מפתחי ציוד ואחרים, מכיוון שהיא שפה פשוטה יחסית לפתח מתרגמים עבורה. דוגמה של מפרש קוד פתוח שלה, הכתוב ב-C, היא MiniBasic.
התפוצה של מפרשי בייסיק במחשבים אישיים הייתה כזו שספרי לימוד פעם כללו תרגילים פשוטים של נסה זאת בבייסיק שעודדו תלמידים להתנסות עם מושגים מתמטיים וחישוביים במחשבי הכיתה או הבית. העתידן וסופר המדע הבדיוני דייוויד ברין מבכה את האובדן של הבייסיק הנפוץ במאמר בעיתון "סלון" - מדוע ג'וני לא יכול לתכנת.
[עריכה] השפה
[עריכה] תחביר
פקודות בייסיק נגמרות בסופי שורה אלא אם כן יש תו המשך שורה. תחביר בייסיק מינימלי ביותר צריך רק את הפקודות "LET", "PRINT", "IF" ו-"GOTO".
מספרי שורות היו פן מאוד ייחודי של מפרשי הבייסיק הבסיסיים של מחשבי הבית. יותר מאוחר, מספר מפרשי בייסיק הופיעו עם פקודת "RENUMBER" (= מספר מחדש) מובנית.
חלק מהדיאלקטים המודרנים של בייסיק (אבל לא כולם) נטשו את מספרי השורות, ותומכים במרבית (או בכל) מבני הבקרה המובנית והצהרת הנתונים הידועים בשפות אחרות כמו C ו-פסקל. ראוי לציין שחלק מהגרסאטות המתקדמות של מימושי הבייסיק למחשבים בייתים שהתבססו על מספרי שורה, שילבו מבנים כאלה לנוחות המתכנת:
- do - loop - while - until - exit
- on x goto / gosub (switch & case)
ואריאנטים חדשים כמו ויז'ואל בייסיק הציגו תכונות כמו מבנה ה-"For Each...Loop" לאיטרציה מתוך מאגרים ומערכים (שהוצגה ב-"Visual Basic for Applications" ובויז'ואל בייסיק 4 ואילך), ואפילו תכנות מונחה-עצמים עם ירושה בגרסה האחרונה. ניהול זכרון הוא קל יותר מאשר בשפות תכנות פרוצדורליות רבות אחרות בשל אוסף הזבל הכלול שם בדרך-כלל.
העושר הזה של הואריאנטים מראה שקהילות המשתמשים והמפתחים של השפה הן פעילות, ושניתן לראות את בייסיק כתת-תרבות שמטפלת בתכנות במקום באוסף מוגבל של חוקים תחביריים. זה נכון גם לשפות תכנות "ישנות" אחרות כמו קובול או פורטרן, אך התנועה מאחרוי בייסיק היא ללא ספק הגדולה ביותר; ניתן להסביר זאת על-ידי המספר הגדול של מקצועני תעשיית המידע שלמדו לתכנת בבייסיק בעידן המחשבים הביתיים של שנות ה-1980.
[עריכה] פרוצדרות ובקרת זרימה
מרבית מימושי הבייסיק אינם עושים שימוש בספריה חיצונית לפעולות נפוצות כמו שפות אחרות כגון C. במקום זאת, המפרש (או המהדר) מכיל ספריה מובנית מקיפה של פרוצדרות פנימיות, באופן דומה למרבית מימושי השפה פסקל. פרוצדרות אלה כוללות את מרבית הכלים שהמתכנת צריך כדי ללמוד תכנות ולכתוב יישומים פשוטים, כולל פונצקיות למתמטיקה, טיפול במחרוזות, קלט ופלט למסוף, גרפיקה וטיפול בקבצים.
מספר דיאלקטים של בייסיק אינם מספקים יכולות הבנייה מובנות, כמו למשל מבנה Procedure. כשהם מתכנתים באלה, מתכנתים צריכים לכתוב את התוכניות שלהם על-ידי שימוש בהצהרות GOTO (בעברית "לך ל") כדי לדמות את המבנים האלה. זה עלול להוביל לתוכניות מבלבלות למדי, שנהוג לקרוא להן קוד ספגטי. הצהרות GOSUB (בעברית "לך-דמוי-שגרה") פונות לסוגים פשוטים של שגרות ללא (אם כי לעיתים עם) פרמטרים או משתנים מקומיים. מרבית הגרסאות המודרניות של בייסיק כמו Quick BASIC הוסיפו תמיכה בשגרות ופונקציות מלאות. זהו עוד תחום בו בייסיק שונה משפות תכנות רבות אחרות. מרבית מימושי הבייסיק, בדומה לפסקל, מבחינים בין פרוצדורה שאינה מחזירה ערך (שנקראת שגרה) ופרודצורה שכן (שנקראית פונקציה). שפות רבות אחרות (בייחוד C) אינן עושות הבחנה זאת ומחשיבות את כל אלה פונקציות, שכולן מחזירות ערכים, אם כי חלקן מחזירות ערך "void" (= "ריק").
בעוד שפונקציות, במובן הרחב של שגרות המחזירות ערכים, נוספו לבייסיק רק מאוחר, מערכות מוקדמות רבות תמכו בהגדרה של פונציות מתמטיות של שורה אחת באמצעות DEF FN ("DEFine FunctioN" או "הגדר פונקציה" בעברית. בייסיק דארטמות' המקורי תמך גם בפונקציות ושגרות דמויות-אלגול החל מזמן מוקדם, וכך גם הואריאנט BASIC09 מסביבות שנת 1979.
[עריכה] טיפוסי נתונים
בייסיק ידועה בפונקציות הטיפול במחרוזות הטובות שלה. דיאלקטים מוקדמים כבר כללו מספר פונקציות יסודיות (LEFT$, MID$, RIGHT$) לפעולות על מחרוזות. מכיוון שמשתמשים הרבה במחרוזות ביישומים של יום-יום, זה היה יתרון משמעותי של נוחות על פני שפות רבות אחרות בזמן שבייסיק הוצגה.
בייסיק דארטמות' המקורי תמך רק בטיפוסי נתונים מספריים ומחרוזתיים. לא היה טיפוס של מספר שלם, מה שהשאיר את כל המשתנים המספריים כמשתני נקודה צפה. מחרוזות היו דינמיות ויכלו לשנות את אורכן. מערכים של גם מספרים וגם מחרוזות נתמכו, כמו גם מטריצות פשוטות (כלומר, מערכים דו-מימדיים).
לכל דיאלקט בייסיק מודרני יש לפחות טיפוסים של מספר ומחרוזת. טיפוסי נתונים בדרך-כלל מובחנים על-ידי תו-מבחין ("sigil") שנוסף בסוף; באופן טיפוסי, מזהי מחרוזת מסתיימים עם '$', בעוד שמספרים שלמים בדרך-כלל מסתיימים עם '%'. במספר דיאלקטים, משתנים חייבים להיות מוצהרים לפני השימוש הראשון בהם (באמצעות הצהרת ה-DIM); דיאלקטים אחרים אינם דורשים זאת, אבל יש להם אפשרות לחייב זאת - בד"כ בשימוש בהוראה כמו Option Explicit (בעברית "אפשרות של מפורש"), ב-ויז'ואל בייסיק היא לא פועלת כברירת מחדל אבל ניתן להפעילה באמצעות Option Explicit On. דיאלקטים רבים גם תומכים בטיפוסים נוספים כמו מספרים שלמים בני 16 או 32 סיביות, ומספרי נקודה צפה. לחלק יש טיפוסים של "polynomial" ("פולינומים"), "complex" ("מרוכב"), "list" ("רשימה"), וטיפוסים ממוקצעים שתוכננו לתמוך בצרכים של משתמשי קצה מסוימים. בנוסף, חלק מהדיאלקטים מרשים הצהרת טיפוסים שהוגדרו על-ידי המשתמש באופן דומה לרשומות ("record") של פסקל או למבני ה-"struct" של C.
רוב הדיאלקטים של בייסיק מעבר לפרימיטיביים ביותר תומכים גם במערכים של מספרים או טיפוסים אחרים. בחלק מהם, חייבים להצהיר על המערכים מראש (כלומר להקצות אותם עם הוראת ה-"DIM") לפני שניתן יהיה להשתמש בהם. תמיכה במערכים של שני מימדים או יותר, כמו גם מערכים של טיפוסים שאינם מספרים, היא נפוצה בבייסקים מתקדמים.
הנה דוגמה להצהרת מערכים:
DIM myIntArray(100) AS INTEGER DIM myStringArray(50) AS STRING
חלק מהגרסאות יאפשרו רק את:
DIM myIntArray%(100) DIM myString$(50)
כתלות בדיאלקט של בייסיק, המערכים מתחילים מ0-, בעוד שאחרים מתחילים מ-1. באופן זה, בחלק מהם, הפקודות כמו הראשונה בדוגמה יגדירו מערך של 101 איברים של שלמים עם איברים מ-0 עד 100, אחרים יגדירו מערך של 100 איברים של שלמים עם איברים מ-1 ל-100, או באופן יותר נדיר מ-0 ל-99. קיימת אפשרות שניתן גם להגדיר את מספר האיבר הראשון לאחר מאשר 0 או 1, עם פקודה נוספת כמו Option Base. הדוגמה לעיל בבייסיק של מיקרוסופט תיצור מערך עם איברים ממוספרים מ-0 עד 100.
בעבודה עם מחרוזות, פקודות כמו השנייה עשויות להקצות מערך של 50 איברים של מחרוזות באורך משתנה, או שהן עשויות להקצות מחרוזת יחידה של 50 תוים. ראוי לציין שהבדלי המספור שהוזכרו לעיל תקפות גם לגביהן.
דוגמאות לא סטנדרטיות, ולחלק מהאנשים, לא אינטואיטיביות ליצירת מערכים מבלבלים את המתכנתים המתחילים (ולעיתים גם המתקדמים). דיאלקטים חדשים מציעים מספור פרטני, כמו DIM myIntArray (10 TO 20) AS INTEGER שיהיה מערכת בין 11 איברים עם איברים שממוספרים מ-10 עד 20.
[עריכה] אופרטורים יחסיים ולוגיים
- = - שווה
- <> - לא שווה
- < - קטן מ.
- > - גדול מ.
- <= - קטן או שווה ל
- >= - גדול או שווה ל
- NOT - ניגוד לוגי
- AND - חיתוך לוגי ("וגם")
- OR - איחוד לוגי ("או")
ראוי לציין שאין הבחנה סימונית בין האופרטור להשמה והאופרטור "שווה ל" בבייסיק - סימן שווה יחיד משמש לשניהם. אולם, אם המתכנת מעוניין שיהיה הבדל נראה לעין בין השניים יש שיטה להשיג זאת: מילית הבררה "LET" מאפשרת להשמות להיות מובחנות באופן חד משמעי מהשימוש של אופרטור ה-"שווה ל". לדוגמא: IF X=7 THEN LET Y=3.
כמו כן ראוי לציין שהאופרטורים "AND", "OR" ו-"NOT" הם למעשה אופרטורים אריתמטיים מונחי-סיביות. ניתן להשתמש בהם גם כפעולות לוגיות, מפני שמרבית הדיאלקטים של בייסיק מייצגים את הערכים הבוליאנים על ידי -1 (עבור "אמת") ועל ידי 0 (עבור "שקר"). אולם, הם מזכירים את האופרטורים האריתמטיים מונחי הסיביות ב-C וב-C++ &, | ו-~ בהתאמה יותר מאשר את האופרטורים הלוגיים &&, || ו-!: למשל, "AND" ו-"OR" תמיד מחשבים את שני הארגומנטים שלהם (הם אינם אופרטורים מקצרים).
ערך זה הוא קצרמר בנושא מחשבים. אתם מוזמנים לתרום לוויקיפדיה ולהרחיב אותו.

