کامپیوتر و IT و اینترنتعلوم مهندسی

اجرای دستورات و برنامه اسمبلی در محیط نرم افزار

صفحه 1:
۱ PRB Yon BE rene eas ‏در محيط نرم افزار‎ Debug استاد راهنما : آقای عیّاسی تهیه کننده: سعید رضا ولی زاده ‎E-mail: srvalizadeh@yahoo.com‏ www.SoftGozar. Com

صفحه 2:
eS Serve nee ens meer ee) م۳ ا ‎PATTON‏ ‎MOV BL,12‏ در این صورت عدد 49 به ثبات ,۴31 منتقل می شود. ولی اگر عدد داخل کروشه نوشته شود مثلا [(006)] محتوای خانه حافظه ای که آدرس آن » در سكمنت داده برابر (0©000 است در نظر كرفته مى شود. به عنوان مثال اگر نوشته شود: [131,]0200 10۷ ‎SSE CIE Et eC ESe Peep‏ کر ۱0 منتقل شود » و اكر محتواى خانه حافظه آدرس مذكور » عدد © © ا ا 0 ۱

صفحه 3:
0 "" دستور '12[1 : باعث مى شود كه بررينامه شما موقتا قطع ا ل ا ا 0 5 مراجعه شود » عمليات خواسته شده را انجام دهد » و دوباره به برنامه شما برگردد. ۱ nww.SoftGozar.Com

صفحه 4:
0 0 ل ) كرفتن تاريخ سيستم از دستور 2111 1771 استفاده مى شودء به شرطى كه قبلا در ثبات ‎U S|‏ ا ا ‎MOV AH,2A‏ ‎INT 21‏ با اجرای این دستورات تاریخ سیستم در ثبات های زیر قرار میگیرد روزهاى هفته ( () براى يكشنبه » 1) جهت دوشنبه .©...) -4.1/- سال ( به صورت هكزا مثلا 0720-2000 109 ماه (به صورت هكّزا 00 تا 0013 ) 2 1211 ‎Eni KOC) ED)‏ ۱ 4 www. SoftGozar.com

صفحه 5:
دستور وقفه 3 11271 ©) يايان اجراى دستورات توسط دستور 3 1171 210) به محض لجر لو ليندستور متوقفمىشود و در ا ا ا و ‎Ase |‏ 7 البته این دستور را می توان برای توقف اجرای دستورات برنامه نيز به كار برد » در صورتى كه از اين دستور استفاده نشود ممكن است كامييوتر قفل كند. www. SoftGozar.com

صفحه 6:
نرم لفزار 1015188176 " ابزارى كمكى جهت اجراى دستورات زبان اسمبلى و رای ال ا دا ‎GO ely JERE) 9 oho‏ ‎Su) Ghes! Gb 5 4‏ Nes DAE ULC pS ‏ا‎ CCR ‏است كه برنامه مستقيما قابل اجرا بوده » نيازى به ترجمه‎ ‏ندارد‎

صفحه 7:
مزیت های استفاده از محیط 060100 |۱۳ ewe Oe ye ore Dee eed "" برنامه آماده به زبان اسمبلى را مى توان به محيط ‎deubug‏ انتقال داده و ان را أزمايش كرد "" برنامه اسمبلى را مى توان دستور به دستور اجرا كرد » و مكدرات ناك ف ؛ و لكاده كافظة را نشاف رز شرك لازم را انجام داد. RECS ee ene erg Or Oc Cn Ora " مى توان تمام دستورات را به زبان اسمبلى و معادل آن ريا به زبان ماشين نشان داد. nww.SoftGozar.Com

صفحه 8:
وارد شدن به محیط 00000 "" کافیست فایل اجرایی اين نرم افزار را یعنی 0601.0 زا توسط سیستم عامل اجرا کنیم » در این حالت محیط کاری شبیه به 105 باز مى شود با اين تفاوت كه به جاى خط فرمان داس (1:0>) يى علامت

صفحه 9:
windows ‏در‎ debug c!o>! "" از 518316 منو 11112 را انتخاب مى كنيم سيس كلمه :061110 را در 11112 تايب كرده دكمه 1217© ‎abe ce KS Ly‏ START —+ RUN—- DEBUG a scaN is)

صفحه 10:
خارج شدن از محیط 6[] 11713 ” نكته: تمام دستوريات 0161110 تك حرفى هستند "" جهت خارج شدن از محيط 15881700 از فرمان © استفاده مى كنيم » كه اين فرمان باعث مى شود به سيستم عامل برگردیم

صفحه 11:
فرمان هاى برنامه 1/601 101:15 ‎HOLS a‏ ارلا ا ل ا ال ل كت زبان اسمبلی در حافظه » و ترجمه آن هاست. " شكل كلى اين فرمان به صورت : ‎eae TD ۶‏ می باشد که این آدرس ‏ آدرس شروع خانه حافظه ای در سگمنت کد ‎Beer ee eee DN NOE wer Ewe e meer)‏ 7 (چون سیستم عامل به حافظه ای با افست آدرس (20) تا ۳۳ برای اطلاعات خود نیاز دارد » لذا نرم افزار 06101 به عنوان پیش د د الا ا ل كم ‏ال 0

صفحه 12:
يس از وارد كردن 8100 دو عدد جهار رقمى ظاهر مى شود كه با یک علامت : از هم جدا شده اند مانند : 0 - ‎13BC:0100‏ ‏عدد سمت چپ » شماره سكمنت يعنى ‏ 05-1231860 است و شماره سمت راست » شماره افست خانه حافظه یعنی 11-100 می باشد. يس از ديدن اين اعداد دستورات اسمبلى را وارد مى كنيم. يس از هر دستور دكمه 117117516 را مى زنيم. ” وقتى كه دستورات به يايان رسيد يك بار » بدون نوشئن دستورى » ‎aT Lew Ree aN Bal CoS)‏ 0 به پایان رسد. nww.SoftGozar.Com

صفحه 13:
(se) oli tep ree upeye cower pp nent) Wale) "MOV AL,6_ ; (1) MOV BL,8 ; (2) ADD AL,BL ; (3) MOV DL,5 _ ; (4)

صفحه 14:
نام گذاری برنامه ۴ کافیست از فرمان ‏ نام برنامه - استفاده کنیم.مثلا در- اين مورد ]۲.001۷ 1۳5 نام برنامه مربوطه می باشد که با فرمان زیر : ‎-N TEST.COM‏ این نام به برنامه اختصاص داده می شود ل 16 ی

صفحه 15:
فرمان[1 "" دستور (355612116 1712) [1] باعث مى شود كه دستوراتى كه به زبان ماشين در حافظه قرار دارند » به زبان اسمبلی بر گردانده شود شكل كلى فرمان <آدرسرشروع> ۱0 www. SoftGozar.com

صفحه 16:
۵ اكر بخواهيم از دستور 10013 تا 10413 را به صورت 57 U 100 104 ‏نتيجه:‎ ‏ا‎ 199 4 386 0180 6 00 81:6 3862:0102 6 00 1 6 3806:0184 8 223 Cen www.SoftGozar.Com

صفحه 17:
" اكر مقابل فرمان 7] شماره اى نكذاريم » محتويات حافظه ‎TOS)‏ لا ۱ صورت دستورات اسمبلى و معادل آن ها را به صورت دستورات زبان ماشين نشان مى دهد دستورات زبان اسمبلی متورات زیان ماشین و و سب ۱۵ 2۳ 6 168 ‎yy ۵‏ 0 180 1261 189:51 222 8 186 "1 للم 188 ‎sea‏ 1 8 116 ۱ 1 6 112 ‎een a‏ 6 8 114 ی 223 8 116 | 1 118 تا ۱ 06 110 لال ‎Mic 3400 EC)‏ ‎ont)‏ 88 11 ا ا با 10 0 121 00 10 Seen 3806:8125 68 ADD ‏يا‎ www.SoftGozar.Com

صفحه 18:
فرمان غ1 ‎R (Register) ®‏ * این فرمان محتوای ثبات ها را نمايش می دهد » علاوه بر این وضعیت بیت های پرچم را نشان می دهد [نام شباط 11 اگر نام ثبات ذکر نشود » تمامی تبات ها را روی مانیتور نمايش مى دهد ‎www.SoftGozar.Ccom

صفحه 19:
۵ 34 توجه: وضعیت بیت های پرچم به صورت 11۳ ۱۲۷ .. ردقه نح افر 1288 2۲-2888 3۲-۳۲۲۲ 3۳-۵888 51-0886 ۰ ۱1-60 Seen ee) eae Ces CCC MN ON gt OA OC ۲ ۱20 18851 181: Petra) nww.SoftGozar.Com

صفحه 20:
ثبات برجم داراى وضعيت های زیر می باشد ‎(ee 2‏ سر ريز توف ‏جهت آدرس وقفه 117 ‎se ‏برش کیب‎ ‏خر‎ ‎CF li oy ‎03 ‎ZF ‎AF ‎lee ‎ ‎۳۹ ‎5 Ss eee ‏آدرس کاهنده‎ ‏للها ‏وقفه فعال 151 ‏نتيجه منفى 110 ‏نوجه صنر 1 ‎NOE tre)‏ ی ‏وجود بيت نقلى /01. ‎ ‏در حالت صفر ‏سر ريز وجود ندارد /271 ‎UP ۳۳۱‏ ۱۳ ‏نتيجه مثبت 1211 ‏نتیجه غبر صفر رل[ ۱۳ ‎PO 34‏ ‏وجود بیت نقلی 70 ‎ ‎ ‎ ‎

صفحه 21:
مشاهده محتویات یک ثبات خاص 539510 ‏ا‎ Pe CL ‏به عنوان مثال:‎ -R AX AX 000E :0000 dey yh 53 5 383 2 OLE OO0E 1: 1b AX GUS Gl gine ۳ Be RID Te CIS SECEDE : ‏کافیست عدد مربوطه را تایپ کنیم که در این مثال بعد از علامت‎ ‏عدد جديد مثلا صفر را وارد ثبات 06ل مى كينم‎

صفحه 22:
مشاهده محتويات ثبات يرجم "" با استفاده از دستور ده 1۳ U UP EI PL NZ NA PO NC -

صفحه 23:
تغيير مقادير بيت هاى يرجم " زمانى كه دستور ”111 اجرا مى شود » يس از نمايش بيت هاى يرجم علامت - جشمك زن قرار مى كيرد.در اين زيمان مى توان مقادير جديدى به بيت ها اختصاص داد ‎aes‏ كه ات ‎—cY ‎ ‎NC ‏وف‎ ‎ ‏به ۷) تغییر می دهیم ‎1۳ ‏نا ا‎ EI PL NZ NA PO ‎ty ‎U UP EI PL NZ NA PO ‏نين ‎ ‎

صفحه 24:
ع 000 Cyne oe Lerere Bicones To ‏"ا شكل كلى‎ <آدرس‌شروع> <آدرس‌توقفت > 6 اولين آدرس كه با علامت - شروع مى شود به 1058:8176 مى كويد که از چه آدرسی شروع به اجرای برنامه کند ” اكر تنها يك عدد جلوى © نوشته شود ‎٠‏ دستورات تا زمانى ادامه ا ا ا ا لك كك ات اگر دستوری برای پایان دادن به کار وجود نداشته باشد » اجرای ‎Ere eee Te ECCS]‏ 0

صفحه 25:
۲ در ضمن اين فرمان وضعیت بات ها در پایان اجرای دستورات ريا نيز نشان خواهد داد. ۳ ‏ا ل ا ا‎ Tes ‏اجرا شود » همراه با ترجمه آن به زبان ماشين ريا » نيز‎ ‏نمايش مى دهد.‎

صفحه 26:
مثال كلى ل ا ا كك اك ع ا ار ند وارد کردن برنامه در حافظه با فرمان ۸۸100 ‎MOV AX,1‏ = ‎MOV BX,2‏ = ‎MOV CX,3‏ = ‎ADD AX,BX‏ = ‎ADD AX,CX‏ "= 33( ۱۲

صفحه 27:
روند کار * نوشتن برنامه با دستور ظر " 17235561216 کردن‌برنامه با فرمان(101 100 ۲7 نشان دادن محتويات ثبات ها با فرمان +1 اجرای برنامه با ع www.SoftGozar.com

صفحه 28:
a ew با راست رای را رات نس ترا <آدرس‌شروع> <تعداد دستورلشد > 1[ عدد اول آدرس اولین دستور شروع است و دومی تعداد ‎Gus) (aI) sins‏ ۳ ie ere ene CS Eee Ieee ‏نمایش داده می شود‎ در صورتی که تعداد دستورات ذکر نشود تعداد دستور را ‎Eee ee To!‏

صفحه 29:
۵ ope ‏ا‎ ‎= MOV AX,1 = MOV BX,2 = MOV CX,3 = ADD AX,BX = ADD AX,CX FINT3

صفحه 30:
E(ENTER) oT Ree eRe CE TD ia tal ‏شکل کلی اين فرمان‎ ۲ ‏<آدرس>‎ ‎die 260 380-6126 8696© - اگر بخواهیم مقدار جدیدی مثلا 6300 را وارد کنیم پس از ورود عدد کلید 121511518 را فشار می دهیم E 126 ۳ ۰ 9 - 9 E i126 ‎doe‏ ی

صفحه 31:
فرمان (,۲)۳11,1 "" براى ذخيره داده اى در ناحيه خاصى از حافظه به كار برده مى شود <اآدرسشروع> <اآدرسيايان> <دادم ها> 7[ مثلا اگر بخواهیم از آديس (0000تا ©00 را با مقدار ©© ‎oe‏ F 100 106 23

صفحه 32:
فرمان (1()1(1/1۷]۳ " اين فرمان باعث مى شود كه محتويات خانه هاى حافظه به ‎UR ren ye‏ 0 ۱۳ " علاوه بر اين حروف و ارقامى كه كد هاى اسكى آن ها قابل نمايش رروى مانيتور هستند » سمت راست مانيتور ا ا ” اكر آدرس انتهاى را نگذاریم محتوای 1660 بایت خانه ۱۹ اگر کدهای اسکی قابل نمایش نباشند در سمت راست نقطه نمایش داده خواهد شد

صفحه 33:
۵ ۱۱۱ 3 ۸۲ 80 34 80 09 89 08-80 80 89 00 08 08 88 90 ا ا ‎CCRC Cec CCRC)‏ ل ا 6 88 88 88 88 88 88 86-88 86 88 88 88 86 88 86 ۱) ee eee aC a a al) 80:8178 88 88 88 88 88 88 88 88-88 88 88 88 88 88 88 8 www.SoftGozar.Com

صفحه 34:
فرمان ۷۷ "" فرمان نوشتن بر روی دیسک * ابتدا توسط فرمان ‎٩‏ به برنامه نامی نسبت می دهیم و سيس توسط فرمان 77 آن را دخيره مى كنيم ” فقط برنامه هاى با يسوند .20010/1) رما مى توان به اين ذخيره نمود. ae a ‏ومدع لم‎ 98668

صفحه 35:
فرمان های ورودی و خروجی " با فرمان ها ى ورودى و خروجى مى توان اطلاعات ريا از يورت ها خواند يا در يورت ها نوشت . "" فرمان 1 (براى خواندن يك بايت اطلاعات يورت ها ) اكت ل اک | nww.SoftGozar.Com

صفحه 36:
۱ ‏ا‎ vee -1 417 که کامپیوتر عدد 2017 را روی مانیتور می نویسد یعنی : اا 2 2 2 4 ال مقدار بيت : (0 (0 0 (0 0 0 00 00 SCROLL LOCK € NUM LUCKS CAPSLOCK 8S لل 1116 ای

صفحه 37:
فرمان خروجى (0 "" براى فرستادن اطلاعات بر روی پورت <شمارم يوري> <مقدار جديد > © مثال( فرمان اول باعث می شود بلند گو کامپیوتر یک سوت ممتد بکشد و فرمان دوم باعث قطع صدای بلندگو می شود ‎-O 61 4F‏ ‎-O 61 4E‏ www. SoftGozar.com

صفحه 38:
‎eed (one‏ ارات سس ‎MOV AH,2AH INT 21H ‏با اجرای دستور فوق مقادیر تاریخ امروز در ثبات ها قرار می گیرد‎ ۴ 2 ‏3چون به صورت هگزا است پس سال برابر 000008 می باشد‎ CX=7D6 11-08 ‏ماه یازدهم میلادی یعنی نوامبر‎ 11,214 ‏هكزا به صورت دهدهی برایر 600 می شود‎ 6< ‏بنابراين تاريخ برابر دوشنبه 00© نوامبر ©(0(0© مى باشد.‎ ‎nww.SoftGozar.Com

صفحه 39:
لل فا FEE BP-@008 81-0000 21-888 84 ۰ ۱۲ ۱۴ 81 ۴۲ ۱۶ ۱ 0 ۵ 3 09-2081 84-8 ۳ i 1 ete 1 ‏ولا‎ 3 ۱386:0104 6

صفحه 40:
* مرجم : زبان ماشین و اسمبلی دکتر حسن سید رضی nww.SoftGozar.Com

جهت مطالعه ادامه متن، فایل را دریافت نمایید.
34,000 تومان