PDA

View Full Version : راهنمایی در مورد یک Screen Saver به زبان اسمبلی



My program is My Child
یک شنبه 08 خرداد 1384, 17:17 عصر
در مورد مقیم در حافظه و نحوه انتظار برنامه مرا راهنمایی کنید ممنون

MSK
شنبه 04 تیر 1384, 10:04 صبح
خوب از کجاش بگیم!؟

اول باید بدونی چکار میخوای بکنی و کدوم وقفه بدردت می خوره؟

اینجا وقفه شماره 8.

بعد باید آدرسش رو بدست بیاری!

بعد باید یه رویتین برای پردازش وقفت بنویسی که قواعد داره.

آخر هم باید رویتین خودت رو جایگزین رویتین اصلی وقفه کنی!

در نهایت هم باید رویتین اصلی وقفه رو فرا بخونی!

فرایند کوتاهی نیست! مخصوصا برای نوشتن یه اسکرین سیور احتمالا باید برای جند تا وقفه رویتین هایی بسازی که در تقابل باهم کار کنند!

من باید بدونم تو چقدر با مسپله آشنایی داری و در کجای کار مشکل داری؟

:گیج:

soushiant
شنبه 26 آذر 1384, 09:16 صبح
من یک برنامه screen saverبه زبان اسمبلی احتیا ج دارم.
با تشکر

smt_414
پنج شنبه 01 دی 1384, 17:14 عصر
با سلام دوست عزیز این ساده ترین نوعی است که توانستم بنویسم اما خودم به یک چیز اعتقاد دارم و اون اینکه یکی از بد ترین چیزها برای یک دانش پژوه
لقمه آماده است .


datasg segment para 'data’
m db 10
datasg ends
;****************************************
codesg segment para 'code'
main proc far
assume ds:datasg, cs:codesg
;************پاک کردن صفحه**************
mov ah,6h ;clear screen
mov al,50
mov ch,0
mov cl,0
mov dh,48 ;row
mov dl,79 ;column
mov bh,0
int 10h
;*******************مکان نما**************
l2:
mov ah,02h
mov bh,0
mov dh,m
mov dl,10
int 10h
;***************اضافه کردن*****************
add m,5
;*******************رسم خط****************
mov ah,09h
mov al,0c4h
mov bh,0
mov bl,0ah
mov cx,79
int 10h
;********خروج از حلقه اگر کلیدA فشرده شود****
mov ah,6h
mov dl,0ffh
int 21h
cmp al,'a'
je L1
;**********************L2*******************
jmp L1
;************************L1*****************
L1:
;*************اتمام برنامه*********************
mov ax,4c00h
int 21h
;********************************************
main endp
codesg ends
end main