FacebookTwitter

رئوس مطالب زبان اسمبلی ۸۹/۰۸/۰۹

نویسنده: | تاریخ: ۱۰ آبان ۱۳۸۹ | موضوع: آموزش, زبان اسمبلی | بدون دیدگاه

مطالب ارائه شده درکلاس به شرح ذیل می باشد: * حل و آنالیز قطعه برنامه مربوط به محاسبه یک عبارت جبری (تمرین جلسه گذشته) *عمل جمع وتفریق با استفاده ازدستورات بیتی (4 بیتی) *فرمان SHR و SHL *فرمان ROR *فرمان RCL و RCR * فرمان SAR و SAL *دستور Loop ——————————————————————– حل تمرین جلسه گذشته: قطعه برنامه ای بنویسید که عبارت جبری زیر را محاسبه نماید: 3x2 + 5y +8 X DW XXXXH Y DW YYYYH . . . . START: MOV AX,[X] MOV CX,[X] MUL CX PUSH DX MOV CX,03H MUL CX POP CX PUSH AX PUSH DX MOV AX,CX MOV CX,05H MUL CX POP CX ADD CX,AX ADC DX,0 POP AX PUSH CX PUSH AX MOV AX,[Y] MOV CX,05H MUL CX ADD AX,08H ADC DX,OOH POP CX ADD AX,CX POP CX ADC DX,CX . . . RET...

محاسبه CHS

نویسنده: | تاریخ: ۵ آبان ۱۳۸۹ | موضوع: آموزش, برنامه سازی سیستم, زبان اسمبلی | بدون دیدگاه

دانشجویان درس نرم افزار سیستم برای محاسبه تبدیل سکتور منطقی به CHS که توسط INT 013H مورد استفاده قرار می گیرد از روابط زیر استفاده نمایید: Logical Sector Calculation L is given as a Logical Sector. Disk Parameters (Can be found in BPB): C: Number of Cylinders H: Number of Heads S: Number of Sectors Results: c: Relevant cylinder of specified logical sector h: Relevant head of specified logical sector s: Relevant sector of specified logical sector c = [L/H/S] s = L%S + 1 h = [L/S] % H c = [L/H/S]

ابزار مشاهده BIOS Parameter Block

نویسنده: | تاریخ: ۴ آبان ۱۳۸۹ | موضوع: آموزش, برنامه سازی سیستم, برنامه نویسی پیشرفته, زبان اسمبلی | بدون دیدگاه

دانشجویان درس برنامه نویسی سیستم میتوانند از برنامه زیر که برای مشاهده محتویات سکتور صفر فلاپی دیسک A آماده نموده ام استفاده کنند. کد منبع برنامه در اختیار دانشجویان  عزیز قرار گرفته تا هر گونه تغییران مورد نیاز را در آن اعمال کنند و از کدهای نوشته شده این برنامه در پروژه خود استفاده نمایند. ZEROREAD.ASM org 0100h mov ax,00201h mov cx,00001h mov dx,00000h push cs pop es lea bx, [buffer] int 013h mov ax, word [bx+0bh] lea dx, [bps] call hex2str mov al, byte [bx+0dh] mov ah, 00h lea dx, [spa] call hex2str mov ax, word [bx+0eh] lea dx, [mdb] call hex2str mov al, byte [bx+010h] mov ah, 00h lea dx, [nof] call hex2str mov ax, word [bx+011h] lea dx, [nor] call hex2str mov ax, word [bx+013h] lea dx, [tos] call hex2str mov al, byte [bx+015h] mov ah, 00h lea dx, [mdb] call hex2str mov ax, word [bx+016h] lea dx, [spf] call hex2str mov ax, word [bx+018h] lea dx, [spt] call hex2str mov ax, word...

تمرینهای اسمبلی جلسه ۸۹/۰۸/۰۲

نویسنده: | تاریخ: ۴ آبان ۱۳۸۹ | موضوع: زبان اسمبلی | بدون دیدگاه

1- قطعه برنامه ای بنویسید که هریک ازعبارات زیر رامحاسبه نماید: سوالات هفته x2 + 41x + 5 (x: 16 – Bit) 3x2 + 5y + 8 (x: 16 – Bit) 2x2 + 4y - 1 (x: 16 – Bit) 2- برنامه ای بنویسید که عمل جمع و تفریق را با استفاده از دستورات بیتی (به صورت 8 بیتی) انجام دهد. دقت داشته باشید که فقط از دستورات منطقی مانند AND , OR  باید استفاده نمایید. 3- نمونه تمرین حل شده در کلاس: برنامه ای بنویسید که عبارت  x2 + 41x + 5 را محاسبه کند: حل: x2 + 41x + 5 x db xxh . . . . MOV AL, [x] MUL AL PUSH AX MOV AL, [x] MUL 41 ADD AX, 05H POP BX ADC AX, BX . . ....

نکته آموزشی زبان اسمبلی

نویسنده: | تاریخ: ۲ آبان ۱۳۸۹ | موضوع: آموزش, زبان اسمبلی | بدون دیدگاه

سوال: پس از اجرای فرمان mov مقدار رجیستر BX چه خواهد بود؟ Question Code Section value1 db 0FFH,055H,011H value2 dw 0FF33H . . . mov BX, word[value + 2] پاسخ: پس از اجرا BX=03311H خواهد بود. برای بررسی علت این موضوع به مفاهیم مربوط به جابجایی بایتها در کلمه مراجعه نمایید.

رئوس مفاهیم ارائه شده زبان اسمبلی 89/07/25

نویسنده: | تاریخ: ۲۸ مهر ۱۳۸۹ | موضوع: زبان اسمبلی | یک دیدگاه

دستورات زبر به طور کامل بررسی گردید. انتقال بایت و کلمه از رجیستر به حافظه وبلعکس و مفهوم جابجایی بایتها در هنگام انتقال کلمه به حافظه و بلعکس. دستورMOV دستور ADD دستور SUB دستورات منطقی AND,OR,XOR درمورد دستور JMP و حداکثر فاصله نسبی آن از محل JMP بحث شد. لازم به تذکر و یادآوری است که تمام دستورات اسمبلی برای جلسه آینده مرور کلی گردد.

صفحه 3 از 512345

Pin It on Pinterest