الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

pleaz reply

مغلق
بدأه abram في 28 مايو 2004 · 3 رد · 621 مشاهدة · في لغة Assembly لأنظمة 16, 32, 64 بت
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

assalamo alikom

is there any equivalent in assembly to the left/right-shift operators in c++

i mean is there any left or right -shift operators in asm.

and thanx very much

#2

السلام عليكم,

هناك الأمر inc في الأسمبلر وهو يزيد 1 . وكمثال إذا كان عندنا الرجستر ax يساوي 4 فإذا قمنا ب

inc ax

فستصبح قيمته 5

والعكس dec هي تنقص 1 .

إلى اللقاء.

#3

but i do not need them

i need the lift-shift operator in asm.

thanx

#4

السلام عليكم

نعم بالنسبة للقيم الموجبة نستخدم الاوامر التالية لازاحة البتات الى اليمين او اليسار بت واحدة

shl al,1

shr al,1

واذا اردنا ازاحة اكثر من بت واحدة في نفس الوقت نستخدم cl مثلا

mov cl,4

shl al,cl

mov cl,3

shr bl,cl

بالنسبة للقيم الموجهة (الموجبة والسالبة) نستخدم الاوامر التالية

sal al,1

sar al,1

واذا اردنا ازاحة اكثر من بت واحدة في نفس الوقت نستخدم cl مثلا

mov cl,4

sal al,cl

mov cl,3

sar bl,cl

هذا الموضوع مغلق.

مواضيع مشابهة