PDA

View Full Version : مشکل با اجرای کد اسمبلی



one hacker alone
شنبه 20 آبان 1391, 14:01 عصر
با یاد خدا
با سلام
من قبلا کدهای اسمبلی رو در vc2008 اجرا میکردم اما الان بعد ازمدت ها که دوباره اومدم سراغش باهاش مشکل دارم
من دو تا کد زیر رو تست کردم هر دو مشکل داشتن

int main()
{
_asm{
mov AH,2
mov DL,7
int 21H
}

getch();
return 0;
}


int _tmain(int argc, _TCHAR* argv[])
{
//clrscr();
_asm{
mov ah,9h
mov bh,0
mov bl,7
mov cx,5
mov al,03h
int 10h
}

getch();
return 0;
}

برنامه کامپایل میشه اما خطای حین اجرا میگیره روی جایی که وقفه فراخوانی شده
متن خطا:

unhandled exception as 0x013d13c4 in 1.exe 0xc0000096: privileged instruction.

mafia1990
شنبه 20 آبان 1391, 20:17 عصر
اینو برو تو کامپایل کن حله


#include <conio.h>
int main()
{
_asm {
mov ah,2
mov dl,7
int 21h
}

_getch();
return 0;
}

shahmohammadi
چهارشنبه 24 آبان 1391, 10:51 صبح
سلام.
فايل هاي اجرايي كه اين كامپايلر توليد مي كنه از نوع ويندوز اپليكيشن يا كنسول ويندوز هست. اين وقفه ها براي سيستم داس و برنامه هاي داسي كه تحت ويندوز اجرا مي شند هست. فكر نكنم اين وقفه ها بتونن در برنامه هاي ويندوز اجرا شند.
من الان اين كامپايلر رو ندارم ولي مي تونيد به جاي وقفه يه دستور ديگه تايپ كنيد و امتحانش كنيد ببينيد مشكل از همون هست يا نه.