از این جلسه ما وارد مبحث آموزش مقدماتی زبان C می شویم تا دوستان کمی با مقدمات برنامه نویسی آشنا بشوند. در استفاده از میکروکنترلرها برای ساخت ربات های مقدماتی مثل مسیر یاب و آتش نشان و ... ما نیازی به آموختن برنامه نویسی در حد حرفه ای نداریم و کمی آشنایی با مقدمات برای ما کافیست!!!
بدون مقدمه بیشتر وارد بحث می شویم.
همانطور که می دانید، کوچک ترین واحد ذخیره سازی اطلاعات در حافظه، Bit است. (جلسه ی شانزدهم در مورد یک Bit توضیح داده شده). هر 8 بیت را یک Byte می گویند. در حقیقت یک بایت اطلاعات، 8 تا 0 یا 1 است که در مجمع 256 حالت مختلف را پدید می اورند.
توضیح بیشتر: یک بیت، فقط 2 حالت دارد، 0 یا 1. وقتی 2 بیت در کنار هم قرار می گیرند، هر کدام 2 حالت را پدید می اورند و در مجموع طبق اصل ضرب، 4 حالت به وجود می آید. یعنی: 1 و 1 1 و 0 0 و 1 0 و 0
به مثال زیر توجه کنید.
در شکل بالا، برای رفتن از A به B، 3 مسیر وجود دارد؛ 5 مسیر هم برای رفتن از B به C وجود دارد. طبق اصل ضرب، برای رفتن از A به C مجموعاً 15=5*3 حالت وجود دارد.
در اینجا، در حقیقت تعداد کل حالت ها، برابر است با حاصل ضرب حالت های هر بیت (که 2 حالت می باشد) می باشد. به عنوان مثال برای محاسبه ی تعداد حالت های 3 بیت اطلاعات، داریم: 8=3^2=2*2*2.
طبق همین رابطه، یک بایت، 256=8^2 حالت مختلف می تواند باشد.
هر 1024 بایت را 1 کیلوبایت می گویند و هر 1024 کیلو بایت، یک مگابایت است. هر 1024 مگا بایت هم یک گیگابایت و هر 1024 گیگا بایت هم یک ترابایت نام دارد.( 1024=10^2)
حافظه های کامپیوترهای خانگی امروزی، می تواند تا چند صد گیگابایت هم باشد.
موسسه ی استاندارد آمریکا، استانداردی برای ذخیره سازی اطلاعات معرفی کرد. این استاندارد 256 کاراکتر (یک کاراکتر عبارتست از یک عدد، رقم یا یک علامت مثل + و -) را کد گذاری کرد و به هر کدام یک عدد 8 رقمی در مبنای 2(یعنی یک بایت) نسبت داد. این کارکترها شامل همه ی حروف الفبای لاتین، اعداد 0 تا 9، علامت های مختلف مثل نماد جمع(+) و تفریق(-) و ... هستند.
در حقیقت طبق این استاندارد، برای ذخیره سازی هر کاراکتر، یک بایت از حافظه به آن اختصاص میابد. مثلاً برای ذخیره سازی کلمه ی"ALI" به 3 بایت حافظه نیاز داریم. جدول کدهای ASCII را می تونید در کتاب های برنامه نویسی یا با جستجو در اینترنت به راحتی ببینید.
انواع زبان های برنامه نویسی: |
زبان ماشین: سطح پایین ترین زبان برنامه نویسی زبان ماشین است. در این زبان شما باید به جای گذاشتن علامت + برای جمع کردن مقدار 2 عدد، باید از کد 00 استفاده کنید. این زبان، زبان قابل فهم برای کامپیوتر است، به همین خاطر به آن زبان ماشین می گویند. برنامه های ما در هر زبان برنامه نویسی دیگری، حتی اسمبلی، باید توسط کاپایلر مخصوص آن زبان، به زبان قابل فهم برای کامپیوتر یعنی زبان ماشین ترجمه شود.
زبان اسمبلی: این زبان کمی پیشرفته تر از زبان ماشین است و کارکردن با آن خیلی راحت تر از زبان ماشین است. به عنوان مثال برای جمع کردن 2 مقدار با یکدیگر می توان از دستورADD استفاده کرد. در این زبان سیستم کد گذاری ASCII هم تعریف شده است و کاربر به عنوان مثال فقط کافیست کلمه ی ALI را تایپ کند، کامپایلر در اینجا کدهای مربوط به این کلمه را از جدول استخراج کرده و جایگزین می کند.
بعد از این ها نوبت به زبان های برنامه نویسی سطح بالا می رسد. این زبان ها سعی کرده اند تا حد امکان به زبان گفتار انسان نزدیک شوند. زبان C یکی از زبان های سطح بالا می باشد.
یک برنامه، شامل چندین دستور مختلف هستش که ما آنها را پشت سرهم با ترتیب مشخصی می نویسیم. در زبان C دستورات باید حتماً داخل توابع باشند. یک تابع عبارتست از چند دستور که در داخل یک آکولاد ({}) نوشته می شوند و نام مشخصی هم برای ان ها گذاشته می شود. همچنین توابع می توانند اطلاعاتی را به عنوان ورودی و خروجی از برنامه دریافت و به آن بازگردانند.
در زبان C وجود تابعی با نام main الزامیست. یعنی ما باید حتماً تابعی با نام main در برنامه ی خود داشته باشیم و اجرای برنامه هم از تابع main شروع می شود.
در Codevision، بعد از انجام تنظیمات اولیه، خود برنامه برای شما قالبی را آماده می کند که در آن تنظیمات اولیه ی پورت ها و .... همچنین بعضی تعاریف اولیه مثل تابع main انجام شده است. فقط کافیست شما دستورات خود را در داخل آن فضای مشخص شده (در داخل تابع main) تایپ کنید.
در جلسه آینده برای آشنایی با نحوه ی برنامه نویسی در فضای Codevision بعد از تعریف متغیرها، برنامه ی یک ربات مسیر یاب بسیار ساده را با هم خواهیم نوشت.
تا جلسه ی آینده خدا نگه دار
|