01-09-2013, 05:49 PM
إقتباس :عندما تكتب OpCode فانت تحصل على ما تريد/كما تريد/أينما تريد بعد الترجمة وهنا تبتعد عن مفاجئات الOptimization التي يقوم بها المترجم ضف امكانية استخدام Runtime معدل/مختلف !أختلف معك أخي B.M.AbdelAziZ ؟
السبب : لا وجود للOptimization في الأسمبلي
يعني استخدام الاسمبلي في دالة = غياب للOptimization في تلك الدالة .
هل تعلم حتى أن ال inline لا تتم في الاسمبلي ؟
ال OpCode الناتج يختلف من كومبايلر لكومبايلر عند استخدام أسلوب باسكال للكتابة + نوع المعالج..
ستكتب ما تريد ب الأسمبلي أو ال OpCode لتحصل تماما على ما كتبته (على نفس CPU)
ال OpCode يختلف في بعض التعليمات من CPU الى CPU مثال :
بعض ال opCode لتعليمات معالج amd مختلفة كليا عن ال opCode لتعليمات معالج intel
الكتابة ب opCode تفرض العمل على نوع محدد من البروسس .
الكتابة ب ال asm تترجم الى ال opCode الخاص بالمعالج المستخدم للترجمة .
يعني يفضل الكتابة بال asm حتى تعمل على جميع المعالجات .
الأسمبلي ماهي الا لغة صممت حتى يفهمها الانسان .. تترجم بدون أي تعديلات أو تغييرات على ال OPCode
=> asm=opcode
ألق نظرة على هذا الكتاب :
الكتاي بوضح كيفية عمل Disassembler (From OpCode To Asm Instructions)
كود :
http://tuts4you.com/download.php?view.187
Open Your Source .. Open Your Mind

