esibarnamenevis
جمعه 22 دی 1391, 17:06 عصر
باسلام
برنامه ای نوشتم که در حافظه مقیم شده
بعد می خوام با بازنویسی یک وقفه اونو توی هر برنامه ای که بخوام اجرا کنم
وقفه موردنظر رو هم بازنویسی کردم
حالا سوال (مشکل) بنده:
1-داخل برنامه دیگه ای(برنامه زیر) که میخوام با اون وقفه ای که بازنویسی کردم برنامه مقیم شده رو اجرا کنم (مثلا با فشردن دکمه a وقفه رو صدا بزنم)
اینم کد برنامه
; multi-segment executable file template.
data segment
; add your data here!
pkey db "press any key...$"
ends
code segment
start:
; set segment registers:
mov ax, data
mov ds, ax
mov es, ax
mov ah,10h
int 16h
cmp ah,97; <a> ?
jne e1
int 5
e1:
mov ax, 4c00h ; exit to operating system.
int 21h
ends
end start ; set entry point and stop the assembler.
که پیغام خطای near jmp or call to different cs رو میده که خطا از دستور jmp هستش
به نظرتون مشکل از کجاست ؟ راه حل چیه؟؟؟
در ضمن با tasm تست و اجرا کردم
با تشکر
برنامه ای نوشتم که در حافظه مقیم شده
بعد می خوام با بازنویسی یک وقفه اونو توی هر برنامه ای که بخوام اجرا کنم
وقفه موردنظر رو هم بازنویسی کردم
حالا سوال (مشکل) بنده:
1-داخل برنامه دیگه ای(برنامه زیر) که میخوام با اون وقفه ای که بازنویسی کردم برنامه مقیم شده رو اجرا کنم (مثلا با فشردن دکمه a وقفه رو صدا بزنم)
اینم کد برنامه
; multi-segment executable file template.
data segment
; add your data here!
pkey db "press any key...$"
ends
code segment
start:
; set segment registers:
mov ax, data
mov ds, ax
mov es, ax
mov ah,10h
int 16h
cmp ah,97; <a> ?
jne e1
int 5
e1:
mov ax, 4c00h ; exit to operating system.
int 21h
ends
end start ; set entry point and stop the assembler.
که پیغام خطای near jmp or call to different cs رو میده که خطا از دستور jmp هستش
به نظرتون مشکل از کجاست ؟ راه حل چیه؟؟؟
در ضمن با tasm تست و اجرا کردم
با تشکر