PDA

View Full Version : استفاده از اسمبلی در vc++ .net



soorena
جمعه 14 بهمن 1384, 23:34 عصر
salam be hameye doostane khoobam
man mikham dakhele vc++.net az assembly estefade konam vadakhele assembly ham az vaghfeye 21h estefade konam aya in kar aslan emkan pazir hast ya na?
in code morede nazare :


in ghesmat ro dakhele file.cpp mizaram :


extern "C" void assembl();
#include <dos.h>
#include <stdio.h>
int main()
{

assembl();
return 0;

}


va in ro ham dakhele file.asm mizaram
:

.586
.model FLAT,C
.stack
.data
soorena db 'aaaaaaaaaaaaa',"$"
.code
assembl proc
mov eax,0
mov ecx,0
mov edx,0
mov esp,0
mov ah,9h
mov dx,offset soorena
int 21h
mov ax,4c00h
int 21h

ret
assembl endp
end



vali mogheye compile kardan khata mide
mikham bedoonam chera va inke aslan estefade az in vaghfe ha ke male dos hastesh doroste ya na

Inprise
شنبه 15 بهمن 1384, 01:33 صبح
قبل از سوال پرسیدن فروم رو جستجو کن ؛
وقتی در حال استفاده از ویژوال سی هستی ، یعنی در حال استفاده از ویندوز هستی ، یعنی پردازنده در Protected Mode است ، که یعنی برنامه های User Mode ( برنامه های اجرائی معمولی ) امکان دسترسی مستقیم به سخت افزار/وقفه های سخت افزاری رو ندارند . روی Protected Mode ، بدون توجه به وضعیت و نوع سیستم عامل ، وقتی در حال نوشتن یک برنامه معمولی سطح کاربر هستی ، باید از توابع فراهم شده توسط کامپایلر یا سیستم عامل استفاده کنی ، مثلا" برای خواندن دیسک یا باید از OpenFile استفاده کنی که یک API ویندوز است ، یا از Open که یک تابع Posix است یا fopen که یک تابع C است ( که در دو هم نهایتا" باز به OpenFile ترجمه میشن ) ؛ وقفه ها رو فراموش کن .

soorena
شنبه 15 بهمن 1384, 13:38 عصر
aval salam va sharmande bare inke forum ro ghablan search nakardam va khili mamnoon baraye javabetoon pas ba in sharayet man nemitoonam az vaghfe ha estefade konam pas age mishe behem begin on tikeye code ke be zaboone asm hastesh ro che joory bayad benevisam ke ye file ijad kone va bazesh kone zemnan hatman bayad dakhele ye file joda ba pasvande asm bashe hamoon tor ke bala neveshtam.