اصول برنامه نویسی اسمبلی
CPU تراشه enCorRe دستور پشتیبانی میكند همه برنامهها باید از این 37 دستور استفاده كنند |
دسته بندی | عمومی |
فرمت فایل | doc |
حجم فایل | 37 کیلو بایت |
تعداد صفحات فایل | 47 |
سیپرس یك مترجم مجانی ارائه میدهد كه كدهای اسمبلی را كه شما مینویسید به فایلهای موضوع، كه به منظور برنامهریزی در EPROM تراشه تهیه میشوند، تبدیل میكند. اگر ترجیح دهید كه در C برنامهنویسی كنید، سیپریس یك مفسر C نیز پیشنهاد میكند.
اگر با برنامهنویسی اسمبلی میكروكنترلر آشنایی داشته باشید، برنامهنویسی برای enCoRo نیز مشابه همان است. اما اگر با برنامهنویسی در بیسیك و C آشنا هستید، باید بدانید كه در برنامهنویسی كدهای اسمبلی بسیاری از عملگرهای زبانهای سطح بالا موجود نیست در اینجا دیگر حلقههای While یا for یا انواع مختلف متغیرها وجود ندارد. اما برای تراشهای مانند enCoRo كه به منظور كارهای نمایشی و كنترلی غیر پیچیده طراحی شده است، استفاده از كدهای اسمبلی عملی است. برای برنامههای كوتاه، كه به سرعت اجرا میشوند احتیاجی به خرید مفسر نیست.
اصول برنامهنویسی اسمبلی
برنامهنویسی اسمبلی شامل یك مجموعه از دستورات است كه هر كدام مربوط به كدهای ماشینی هستند كه تراشه از آنها پشتیبانی میكند. مثلاً دستور iord، كه محل io را میخواند به كد h29 مربوط است. به جای به خاطر آوردن h 29، شما میتوانید iord را بنویسید، و مترجم معادل سازی را برای شما انجام خواهد داد. دستور iord همچنین احتیاج به یك عملوند دارد كه محل خواندن را مشخص كند. به عنوان مثال 01h iord پورتی با آدرس h 10 را میخواند.
زبان برنامهنویسی اسمبلی همچنین میتواند شامل دایركتیو[1] و توضیحات باشد. دایركتیوها دستوراتی هستند كه به جای اینكه مربوط به CPU باشند، مربوط به مترجم میباشند. دایركتیوها شما را قادر میسازند كه محلی از حافظه را مشخص كنید، متغیرهایی تعریف نمایید. در كل، نقشی كه مترجم در كنار اجرای دستورات مشخص شده باید ایفا كند را نشان میدهند. یك نقطه ویرگول ( : )یا ممیز دوبل ( // ) یك عبارت توصیفی را مشخص میكنند كه مترجم از آنها چشمپوشی میكند.
مترجمی كه توسط سیپرس ارائه میشود، cyasm.exe قابل اجرا در پنجره داس[2] میباشد. سیپرس مرجعها و راهنمای استفاده برای كاربرانی را تهیه كرده است كه چگونگی استفاده از مترجم را شرح میدهد.
مترجم از دو مجموعه دستور مشابه برای CPUهای سری A و سریB پشتیبانی میكند. تراشههای enCoRo از سری Bهستند. تراشههای قدیمیتر سیپرس، مانند 63001، از سری A بودند و از همة دستورات بجز بعضی از آنها پشتیبانی میكنند.
كدهای مترجم
راهنمای كاربران دارای توضیحات كاملی در مورد كد اسمبلی و دایركتیوهاست و در اینجا برخی از جزئیات آن تكرار میشود. جدول 1-8 خلاصهای از كدها میباشد و جدول 2-8 خلاصهای از دایركتیوها را نشان میدهد. كدهای ماشین تراشه به 37 دستور ترجمه شده است.