BASIC
بیسیک به معنی زبان همه منظوره برای افراد مبتدی می باشد . این زبان به خاطر ساختار ساده ای که دارد از محبوبیت فوق العاده در جهان برخوردار است . یکفرد مبتدی که آشنایی چندانی با کامپیوتر ندارد پس از مدت کوتاهی می تواند دستورهای این زبان را فرا گرفته و اقدام به نوشتن برنامه نماید .
به خاطر سادگی این زبان ، BASIC در اولین میکروکامپیوترها مورد استفاده قرار گرفته . زبان بیسیک بین سالهای 1963 و 1964 توسط پروفسور جان کمنی و توماس کورتز در کالج دارتموث به وجود آمد و هدف آنها از ایجاد زبان بیسیک این بود که کلیه دانشجویان رشته های مختلف بتوانند آن را به سادگی فراگیرند .
علیرغم اینکه در بیسیک اولیه از دستورات معین و محدودی استفاده می شد ، لیکن سازندگان کامپیوتر دستورات متعددی را به آن افزودند و از نظر سخت افزاری امکانات کامپیوتر خود را گسترش دادند تا بتوانند با سایر سازندگان کامپیوتر رقابت نمایند ، لذا امروزه نسخه های متعددی از بیسیک وجود دارد و سازمان استاندارد آمریکا نسخه ای از آن را به نام نسخه پایه در سال 1978 ارائه نمود . استاندارد فوق به حدی ساده است که نسخه های گسترش یافته آن از قبیل VISUAL BASIC ، TURBO BASIC ، QBASIC و GWBASIC قابل دسترسی است . همچنین این زبان در امور تجاری و مدیریت کاربرد دارد .
نسخه اصلی Basic (که شامل symbolic instruction code begginers all purpose به معنی «کد حاوی دستورات نمادین همه منظوره مخصوص نوآموزان» در کالج دارتموت در سال 1964 به عنوان زبانی آموزشی ابداع گشت.یادگیری و طریقه استفاده از سایر زبانهایی که تا آن زمان وجود داشتند- از جمله اسمبلی، فرترن و کوبول- بسیار مشکل تر بود و برای دانشجویان مبتدی علوم کامپیوتر مناسب نبود.
زبان کامپیوتری چیست؟گاهی اوقات ممکن است مفهومی که ما از «زبان برنامه نویسی» در ذهن داریم با آنچه دیگران می دانند، فرق کند. لذا برای اطمینان از اینکه همه یک جور فکر می کنند برخی مفاهیم کامپیوتری از جمله زبانها را قبل از شروع بیسیک مرور خواهیم کرد.
کامپیوتر ابزاری است که محاسبات عددی را انجام می دهد و یا علایم مربوط به مجموعه مشخصی از قوانین دستکاری می کند. قوانین به صورت برنامه وارد کامپیوتر می شوند. برنامه لیستی از دستورات و داده هایی است که کامپیوتر می تواند انها را تفسیر و اجرا نماید. هر خط درون برنامه معمولا یک حکم (statement) نامیده می شود؛ هر حکم دستورالعملی را به کامپیوتر منتقل می سازد (مثلا:دو مقدار مشخص را با هم جمع کن و حاصل را ذخیره نما).
ممکن است دستورالعملی را به کامپیوترهای مدرن، هم رقمی و هم دودویی هستند.بدین معنی که اطلاعات ذخیره شده درون آنها خواه دستورالعمل باشد و خواه داده، به صورت مقادیر گسسته کمیت دار(ارقام) هستند که در مبنای 2 یا نمادگذاری دودویی ذخیره می شوند.(مثلا: در دودویی عدد 5 به صورت 101 در می آید). در واقع کامپیوتر قادر به درک رشته های بزرگی از یک و صفر می باشد. یک کد ثابت فرمان می دهد که چطور این رشته ارقام دودویی باید تفسیر گردند.
مفسر بیسیک
در چند پاراگراف قبلی ذکر کردیم که بیسیک فاقد یک یا دو مرحله لازم در سایر زبانها برای
اجرای برنامه ها می باشد. حال زمان آن رسیده تا منظور خود را از این حرف بیان داریم.
به یاد آورید که متذکر شدیم برای اینکه کامپیوتر بتواند مستقیما برنامه ای را اجرا کند، دستورات برنامه باید به صورت صفر و یک های زبان ماشین باشد که زبانی مشکل برای نوشتن برنامه است. اگر برنامه ای را به دیگر زبانها بنویسیم، دستورات برنامه خود ابتدا باید توسط برنامه ای دیگر به زبان ماشین ترجمه گردند(این مرحله ویژه ای است که در بالا ذکر کردیم). در اکثر حالات، قبل از اینکه برنامه اجرا شود، کل آن ترجمه می گردد. اما در بیسیک این طور نیست. برنامه بیسیک تفسیر می گردد و برای تفسیر هر چیز به یک مفسر احتیاج است.
مفسر برنامه ای با دستورات زبان ماشین است که جهت درک و اجرای دستورات در زبانی دیگری مانند بیسیک نوشته می شود. هنگامی که کامپیوتر برنامه ای به زبان بیسیک استاندارد را اجرا می کند در حقیقت برنامه دیگر را اجرا می نماید که در هر زمان یک دستور بیسیک از برنامه اول را می خواند و بر اساس آن عملی را انجام می دهد. زبانی که بدین شیوه اجرا می شود، زبان تفسیری نامیده می شود.
یکی از اشکالات زبان تفسیری آن است که کامپیوتر با هر بار برخورد با یک دستور باید آن را بخواند و مجددا ترجمه نماید-- حتی اگر در یک حلقه هزاران بار با یک دستور رویرو شود! این دوباره کاری تفسیر وقت زیادی تلف می کند.
در Q basic این امر تغییر یافته است. این بدان مفهوم است که قبل از اجرای برنامه توسط کامپیوتر یک بار کل برنامه به زبان ماشین ترجمه می گردد. برنامه ای که عمل ترجمه را انجام می دهد،
مترجم (کامپایلر) نامیده می شود.
مترجم Qbasic برنامه ای (در حقیقت زیربرنامه ای همراه Qbasic) است که دستورات برنامه به زبان بیسیک را خوانده و آنها را درک می نماید، بر اساس قواعدی مشخص آنها را چک می کند تا خطا نداشته باشند، و سپس انها را به زبان ماشین ترجمه می کند. کامپایلر تنها لازم است هر دستور را یک بار ترجمه کند، لذا بدین سبب کارآیی آن از مفسر بیشتر است. کامپایلر تنها لازم است هر دستور را یک بار ترجمه کند، لذا بدین سبب کارآیی آن از مفسر بیشتر است. کامپالر دستوراتی که ترجمه می نماید را اجرا نمی کند؛ این برنامه تنها مجموعه ای از دستورات زبان ماشین تولید میکند که کامپیوتر می تواند مستقیما و به سرعت وظیفه برنامه بیسیک مورد نظر را انجام دهد. دو ویژگی برجسته Qbasic سرعت و کارآیی آن به علت ترجمه کردن (کامپایل) برنامه ها می باشد.
همچنین در بسیک استاندارد تنها در زمانی که برنامه اجرا می گردد خطاها مشخص می گردند و لذا خطاها بعد از چندین بار اجرا برطرف خواهند گشت(در بعضی مواقع برخی از خطاها مطمئنا اتفاق نخواهد افتاد). از طرف دیگر ویرایشگر مترجم Qbasic، کل برنامه را پویش می کند و بسیاری از خطاها را پیش از اجرا مشخص می کنند. این امر سبب صرفه جویی در زمان و کاهش دردسرهای ناشی از رفع خطاها می شود.
Qbasic زبانی کاملا ساخت یافته است و بدین لحاظ اگر قبلا به این روش
برنامه نویسی نکرده باشید، مقدمه ای بر برنامه نویسی ساخت یافته خواهد بود. برنامه نویسی ساخت یافته استراتژی در تولید برنامه ها می باشد که باعث سادگی در نوشتن، خواندن و نگهداری آنها می شود. در این استراتژی مسائل به بخشهای کوچک تری تقسیم می شوند که در هر زمان میتوان روی یکی از آنها کار کرد. این روش گاه رهیافت بالا به پایین نامیده مب شود. هرگاه از این روش استفاده شود، سبب می گردد تا با کار بر روی قطعات کوچک تر و اجازه استفاده مجدد از این قطعات در دیگر برنامه ها، در وقت و هزینه صرفه جویی نمایید و کارآیی بیشتری کسب نمایید. برنامه نویسی ساخت یافته محتاج ساختارهای کنترلی و رویه های مدرنی است که Qbasic دارای آنها می باشد.