PDA

نسخه کامل مشاهده نسخه کامل : آموزش اسمبلی



farshidshd
12-03-2009, 12:35
سلام دوستان
یه کتاب یا pdf کامل زبان اسمبلی میخواستم
ممکنه کمکم کنین؟؟

BioHazard
12-03-2009, 15:22
سلام
پیشنهاد میکنم ، کتاب "زبان اسمبلی پیشرفته" از انتشارات دیباگران رو از فروشگاه آنلاینشون(تو گوگل سرچ کن) بخری
تحت لینوکس هست + خیلی قشنگ و ساده گفته
البته نا گفته نماند ، با CPU های شرکت Intel سازگار هست

البته 3تا PDF سری هم هست که تخت ویندوز آموزش داده(MASM32)
این سری هم مثل قبلی با Intel سازگار هست

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
موفق باشید:11:

ARASH BAHAL
12-03-2009, 23:11
ممنون جناب biohazard

اگه امکانش هست در این زمینه منابع دیگه ای رو هم اگه هست معرفی کنین!:20:

farshidshd
13-03-2009, 10:57
سلام
پیشنهاد میکنم ، کتاب "زبان اسمبلی پیشرفته" از انتشارات دیباگران رو از فروشگاه آنلاینشون(تو گوگل سرچ کن) بخری
تحت لینوکس هست + خیلی قشنگ و ساده گفته
البته نا گفته نماند ، با cpu های شرکت intel سازگار هست

البته 3تا pdf سری هم هست که تخت ویندوز آموزش داده(masm32)
این سری هم مثل قبلی با intel سازگار هست

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
موفق باشید:11:


ممنونم اگه باز هم دارین ممنون میشم بزارین

BioHazard
13-03-2009, 11:24
والا ، من اسمبلی رو برای مهندسی معکوس نیاز دارم ، بخاطر همین ، فقط همون کتاب دیباگران رو تا حدی توی لینوکس کار کردم
ولی در کل ، توی مقالات فارسی این 2تا که معرفی کردم ، خیلی خوب هستند

----------------------
ولی در کل ، اگه اسمبلی رو برای برنامه نویسی میخواین ، کافی هست ، بعد که آشنایی بیشتر پیدا کردید ، سورس بخونید

farshidshd
13-03-2009, 11:34
من فعلا میخوام یه برنامه ی ساده بنویسم که استاد خواست ازم هیچی هم بلد نیستم

BioHazard
13-03-2009, 11:54
من فعلا میخوام یه برنامه ی ساده بنویسم که استاد خواست ازم هیچی هم بلد نیستم


والا نمیدونم ،
این یک برنامه ساده Print Hello word! هست

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

اینم ، یک مقاله از خودم ، که یک برنامه کوچیک اسمبلی رو آنالیز کردم


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
تحت لینوکس هم هسنتد

BioHazard
13-03-2009, 12:01
اینم همون برنامه داخل مقاله ولی با توابع سی


#by biohazard
.section .data
output:
.asciz "the processor vendor id is %s\n"
.section .bss
.lcomm buffer, 12

.section .text
.globl main
main:
Movl $0, %eax
cpuid
movl $buffer, %edi
movl %ebx, (%edi)
movl %edx, 4(%edi)
movl %ecx, 8(%edi)
pushl $buffer
pushl $output
call printf

movl $1, %eax
movl $0, %ebx
int $0x80





(تحت لینوکس) ، امیدوارم کمکی برای شروع برنامه نویسی اسمبلی باشه

farshidshd
13-03-2009, 12:57
خیلی خیلی ازت ممنونم
ولی من یه برنامه دیگه باید بنویسم
اینه که اگه 1 رو بزنیم دایره اگه 2 رو بزنیم مربع و 3 رو بزنیم مستطیل نشون بده....

راستی این کدها رو چطوری باید اجرا کنم/؟؟؟

BioHazard
14-03-2009, 09:16
خیلی خیلی ازت ممنونم
ولی من یه برنامه دیگه باید بنویسم
اینه که اگه 1 رو بزنیم دایره اگه 2 رو بزنیم مربع و 3 رو بزنیم مستطیل نشون بده....

راستی این کدها رو چطوری باید اجرا کنم/؟؟؟

برای اجرا ، باید این کدها رو داخل لینوکس سیو کنید و با دستور gcc کامپایل کنید