اصول برنامه نویسی اسمبلی
دسته: فنی و مهندسیبازدید: 2 بار
فرمت فایل: doc
حجم فایل: 31 کیلوبایت
تعداد صفحات فایل: 46
مقاله اصول برنامه نویسی اسمبلی در 46 صفحه ورد قابل ویرایش
قیمت فایل فقط 4,000 تومان
اصول برنامه نویسی اسمبلی
تراشه enCorRe دستور پشتیبانی میكند. همه برنامهها باید از این 37 دستور استفاده كنند. سیپرس یك مترجم مجانی ارائه میدهد كه كدهای اسمبلی را كه شما مینویسید به فایلهای موضوع، كه به منظور برنامهریزی در EPROM تراشه تهیه میشوند، تبدیل میكند. اگر ترجیح دهید كه در C برنامهنویسی كنید، سیپریس یك مفسر C نیز پیشنهاد میكند.
اگر با برنامهنویسی اسمبلی میكروكنترلر آشنایی داشته باشید، برنامهنویسی برای enCoRo نیز مشابه همان است. اما اگر با برنامهنویسی در بیسیك و C آشنا هستید، باید بدانید كه در برنامهنویسی كدهای اسمبلی بسیاری از عملگرهای زبانهای سطح بالا موجود نیست در اینجا دیگر حلقههای While یا for یا انواع مختلف متغیرها وجود ندارد. اما برای تراشهای مانند enCoRo كه به منظور كارهای نمایشی و كنترلی غیر پیچیده طراحی شده است، استفاده از كدهای اسمبلی عملی است. برای برنامههای كوتاه، كه به سرعت اجرا میشوند احتیاجی به خرید مفسر نیست.
اصول برنامهنویسی اسمبلی
برنامهنویسی اسمبلی شامل یك مجموعه از دستورات است كه هر كدام مربوط به كدهای ماشینی هستند كه تراشه از آنها پشتیبانی میكند. مثلاً دستور iord، كه محل io را میخواند به كد h29 مربوط است. به جای به خاطر آوردن h 29، شما میتوانید iord را بنویسید، و مترجم معادل سازی را برای شما انجام خواهد داد. دستور iord همچنین احتیاج به یك عملوند دارد كه محل خواندن را مشخص كند. به عنوان مثال 01h iord پورتی با آدرس h 10 را میخواند.
زبان برنامهنویسی اسمبلی همچنین میتواند شامل دایركتیو و توضیحات باشد. دایركتیوها دستوراتی هستند كه به جای اینكه مربوط به CPU باشند، مربوط به مترجم میباشند. دایركتیوها شما را قادر میسازند كه محلی از حافظه را مشخص كنید، متغیرهایی تعریف نمایید. در كل، نقشی كه مترجم در كنار اجرای دستورات مشخص شده باید ایفا كند را نشان میدهند. یك نقطه ویرگول ( : )یا ممیز دوبل ( // ) یك عبارت توصیفی را مشخص میكنند كه مترجم از آنها چشمپوشی میكند.
داده شود یا اینكه فعالیت PSP داشته باشیم.
سه بیت كنترلی، برنامة تراشه را قادر میسازند كه خطوط USB یا PS/2 را در وضعیتهای خاصی تنظیم كنند، از جمله این وضعیتها میتوان از j،k و SE0 مربوط به USB نام برد. اگر قبلاً میزبان قابلیت Remote-wakup را فعال كرده باشد، برنامة كاربردی میتواند از وضعیت Force-k برای فرستادن سیگنال بازگشت كه به میزبان میگوید دستگاه میخواهد ارتباط دوباره آغاز شود استفاده كند.
بیت فعال كردن PS/2 قادر است مقاومت بالابر داخلی كه بین خطوط SDATA و SCLK است را برای استفاده ارتباط PS/2 فعال سازد.
رجیستر داده پورت 2، حالت چهار بیت فقط خواندنی را در یك پورت ورودی كمیك نگهداری میكند. دو بیت، حالت D+و D- در هنگام استفاده از USB یا حالت SCLK و SDATA در هنگام استفاده از PS/2 میباشند. دو بیت دیگر بیشتر مواقع میتوانند به عنوان دو ورودی استفاده شوند. اگر مقاومت موجود بر روی خط D- از منبع ولتاژ خارجی برای راهاندازی استفاده كند و یا اینكه دستگاه از USB پشتیبانی نكند، از پایة VREG میتوان به عنوان ورودی استفاده كرد كه در این حالت وضعیت این بیت از طریق P2.0 قابل دسترسی است.
وقتی كه ساعت داخلی فعال است، مرجع زمانی بر روی پایة XTALIN وجود نخواهد داشت و میتوان از این پایه نیز به عنوان ورودی از طریق PS.1 استفاده كرد.
آخرین رجیستر مربوط به USB رجیستر فعال ساز وقفههای اندپوینت است، كه وقفهها را برای اندپوینتهای صفر، 1 و 2 فعال میسازد. توضیحات مربوط به این رجیستر در زیر در بخش پردازش وقفه ارائه خواهد شد.
اصول راهانداز دستگاه
راهانداز دستگاه نرمافزاری است كه برنامة كاربردی را قادر می سازد كه به سختافزار دستگاه دسترسی یابد. بعضی از راهاندازهای دستگاهها راهانداز كلاس هستند كه میتوانند با دستگاههایی كه كاربرد مشابه دارند ارتباط برقرار كنند.
رها كردن برنامههای كاربردی از جزئیات
یك راهاندا دستگاه، برنامة كاربردی را از داشتن جزئیات درباره اتصالهای فیزیكی، سیگنالها، پروتكلهایی كه برای ارتباط با دستگاه لازم است، بینیاز میكند. برنامة كاربردی نرمافزاری است كه كاربر آن را راه میاندازد كه شامل پردازش كنندههای word و دادهها تا برنامههایی با كاربرد خاص كه سختافزار ویژهای را پشتیبانی میكند، میشوند.
یك راهانداز دستگاه كدهای برنامة كاربردی را قادر میسازد فقط با دانستن نام وسیلة جانبی (مثل Laserjet hp) و یا كار آن (دستة بازی) بتواند با آن ارتباط برقرار كنند. احتیاج نیست كه برنامه كاربردی آدرس فیزیكی پورتی را كه وسیلة جانبی له آن متصل شده بداند ( مانند آدرس h 378) یا اینكه سیگنالهای تأیید
متقابل كه به وسیله جانبی نیاز دارد ( Strobe .Busy و غیره) را كنترل و نمایش دهد. برنامة كاربردی حتی نمی داند كه یك دستگاه از مدار واسطه USB استفاده می كند یا مدار واسط دیگری. با توجه به اینكه جزئیات سخت افزاری در یك زبان سطح پایین تر وجود دارد.
وظیفة راه انداز دستگاه ترجمه ارتباط بین زبان سطح بالا برنامة كاربردی به كدهای ویژه سخت افزار می باشد. برنامة كاربردی از تابعهایی كه سیستم عامل آنها را پشتیبانی می كند. برای ارتباط با راه انداز دستگاه استفاده می كند. كدهای ویژه سخت افزار نیز پروتكل لازم برای دسترسی به مدار وسیله جانبی را دارا هستند كه شامل تشخیص حالت سیگنال های وضعیتی و استفاده از سیگنال های كنترلی در زمان لازم می باشد.
ویندوز دارای تابعهای كاربردی رابط با برنامه نویسان (API) است كه برنامة كاربردی را قادر می سازد كه با راه انداز دستگاه ارتباط برقرار كند. برنامه هایی كه در زبانهای برنامه نویسی ویژه وال بیسیك++C/C و دلفی نوشته می شوند قادر به فراخوانی تابعهای API هستند سه تابعی كه راه انداز دستگاه را قادر می سازد كه از دستگاه USB بخواند و بنویسد عبارتند از DeviceIoControl. Write File, ReadFile
به منظور اینكه برنامه نویسی آسانتر و صحیح تر باشد، ویژوال بیسیك برای كارهای معمولی دارای كنترل هایی است به عنوان مثال، برنامة كاربردی می تواند با استفاده از موضوع Printer داده را به چاپگر و كنترل McComm بفرستد تا به دستگاهی كه به پورت سریال RS-232 متصل است ارتباط برقرار كند. استفاده از این كنترل ها راه راحت تر و كم اشتباه تری برای تنظیم كردن پارامترها و تبادل اطلاعات می باشد. در پشت كد های كنترلی ممكن است تابعهای API وجود داشته باشند كه با راه انداز از دستگاه ارتباط برقرار می كنند. اما موضوعهای كنترلی برنامه نویسان را از سرو كار داشتن با آنها راحت می كند.
قیمت فایل فقط 4,000 تومان
برچسب ها : اصول برنامه نویسی اسمبلی , تحقیق اصول برنامه نویسی اسمبلی , پروژه اصول برنامه نویسی اسمبلی , مقاله اصول برنامه نویسی اسمبلی , دانلود تحقیق اصول برنامه نویسی اسمبلی , پروژه , پژوهش , مقاله , جزوه , تحقیق , دانلود پروژه , دانلود پژوهش , دانلود مقاله , دانلود جزوه , دانلود تحقیق
Screen-reader users, click here to turn off Google Instant.