محمد حسن پزشکیان
عاشق امنیت و نفوذ ، رد تیم و دوستدار بزن بکش :)

تفاوت بین opcode-mnemonic-operands-Instruction چیست؟

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

در این سری مطالب به بررسی یه سری نکات میپردازیم که ممکنه شما در حین خوندن زبان اسمبلی نیاز باشه بدونیدشون ، درواقع از 0 تا 100 اسمبلی رو نمیگم بلکه نکات و سوالایی که ممکنه پیش بیاد رو بررسی میکنم

# هر قسمت از کد رو که بولد کردم ، یعنی اون قسمت رو دارم توضیح میدم و مربوط به اون سرفصله

Instruction :

به هر خط کد از زبان اسمبلی میگن دستورالعمل یا Instruction ، مثلا در مثال پایین ما 5 خط کد داریم به زبان اسمبلی ، به هر خط میگن یه دستورالعمل یا Instruction :

MOV EAX,1
MOV EXV,2
MOV EDX,3
MOV ECX,4
MOV INT,0x80

OpCode ( Operation Code ) :

کد های مبنای 16 یا Hexadecimal ای هستن که خلاصه دستورالعمل یا Instruction هستن ، یعنی مثلا بجای MOV EAX,1 ما B8 رو داریم که خلاصه شده همونه ، درواقع opcode چیزیه که به پردازنده میگه چیکار کنه و چه چیزی رو اجرا کنه ، (قاعده زبان ماشین ، در مبنای 16 و 2 رو اگر نمیدونید مطلب اول رو بخونید تا متوجه بشید)

B8 = MOV EAX,1
B9 = MOV EBX,2
BA = PUSH EBP
BB = MOVE ESP,EBP
CD = INT

Mnemonic :

در وهله اول تلفظش میشه (نمونیک ، "M" اولش خونده نمیشه) یه واژه ایه واسه توضیح opcode ، مثلا میتونیم بگیم نمونیکی که استفاده میشه برای توضیح آپکد CD ، میشه INT یا میشه گفت INT نمونیکیه برای آپکد CD ، یا CD آپکدیه برای نمونیک INT

MOV EAX = B9
MOV EBX = B8
MOV ECX = BA
MOV EDX = BB
INT = CD

Operands :

پارامتر ها یا آرگومان هایی هستن که مستقیما یه نمونیک رو دنبال میکنن و با یه نمونیک میان (بسته به نوع دستوری که میزنیم تعداد و نوعشون فرق میکنه)

MOV EAX,1
MOV ECX,2
MOV EDX,3
MOV EBX,4
INT 0x80
INT 80h
INT 128


این سوالات و ابهامات وقتی خودم شروع به خوندن اسمبلی و معماری سیستم کرده بودم برام پیش آمده و به مرور این نکات رو آپدیت میکنم که دوستانی که بعد من میخوان اقدام به خوندن کنن راحت تر باشن :)

سوالی چیزی بود در خدمتم


محمد حسن پزشکیان
محمد حسن پزشکیان

عاشق امنیت و نفوذ ، رد تیم و دوستدار بزن بکش :)

کارشناس تست نفوذ سنجی ، علاقه مند به امنیت تهاجمی و رد تیمینگ | عضو انجمن بین المللی ورزش های رزمی کشور آلمان و دارای احکام بین المللی و داخلی کمربند مشکی در سبک های کیوکوشین ، هاپکیدو ، کیک بوکسینگ و چند تام قهرمانی کشوری

03 تیر 1400 این مطلب را ارسال کرده

نظرات