ویرگول
ورودثبت نام
سید عمید قائم مقامی
سید عمید قائم مقامیبرنامه نویسی سیستم ویندوز و مهندسی معکوس و علاقه مند به آموزش.
سید عمید قائم مقامی
سید عمید قائم مقامی
خواندن ۱ دقیقه·۲ ماه پیش

برنامه نویسی قسمت 17(اسمبلی Setting up Visual Studio 2022 For Assembly MASM):

برای برنامه نویسی اسمبلی (32 بیت) مراحل زیر رو انجام بدید.

مثال:

.386 .model flat, stdcall .stack 4096 .data myValue DWORD 1234h .code start: mov eax, 10h end start

1) .386

به اسمبلر می‌گوید که از دستورالعمل‌های پردازنده 80386 (معماری x86) استفاده کند.

2) .model flat, stdcall

  • flat → یعنی مدل حافظه تخت (حالت ۳۲بیتی ویندوز).

  • stdcall → قرارداد فراخوانی پیش‌فرض برای توابع (مثل APIهای ویندوز).

3) .stack 4096

یک پشته با اندازه ۴۰۹۶ بایت برای برنامه رزرو می‌کند.

4) .data

شروع بخش داده‌ها؛ متغیرهای برنامه اینجا قرار می‌گیرند.

5) myValue DWORD 1234h

تعریف یک متغیر ۴ بایتی (DWORD) با مقدار 1234h.

6) .code

شروع بخش کد (جایی که دستورالعمل‌ها قرار می‌گیرند).

7) start:

برچسب (Label) شروع برنامه؛ کامپایلر از اینجا اجرای برنامه را آغاز می‌کند.

8) mov eax, 10h

مقدار هگز 0x10 (معادل 16) را وارد رجیستر EAX می‌کند.

9) end start

به اسمبلر می‌گوید نقطه شروع برنامه start است و پایان فایل همین‌جاست.

Telegram: @CaKeegan
Gmail : amidgm2020@gmail.com

اسمبلیویژوال استدیو
۰
۰
سید عمید قائم مقامی
سید عمید قائم مقامی
برنامه نویسی سیستم ویندوز و مهندسی معکوس و علاقه مند به آموزش.
شاید از این پست‌ها خوشتان بیاید