Wednesday, 13 February 2008

Hexa Code <-> Assembly Code <-> C Code

ဒီ Post ကေတာ့ နဲနဲမ်က္စိလည္မယ္ထင္ပါတယ္။ ကၽြန္ေတာ္ၾကံဳခဲ့ရတဲ့ အျဖစ္အပ်က္ေလးပါ။ Software တစ္ခုေပါ့ အဲဒါကကၽြန္ေတာ့ဆီမွာရွိတဲ့ ေနာက္ဆံုးဆိုတဲ့ Source Code ကလည္း ေနာက္ဆံုးဟုတ္မဟုတ္ မေသခ်ာတဲ့အခါမွာ Microprocessor ထဲကေန Hexa Codes ကိုျပန္ယူ။ Assembly Code ေျပာင္း ေနာက္ C Code ကိုျပန္ေျပာင္း ေနာက္ၿပီး C Code ကိုျပင္ ၿပီးေတာ့မွ Microprocessor ထဲကိုျပန္ၿပီး Download လုပ္လုိက္ရတဲ့ အေျခအေနပါ။ Hex Code ကိုဖတ္တဲ့ေနရာမွာ ဥပမာေျပာရရင္ 02 04 65 53 က Assembly ဆိုရင္ LJMP 0465H ANL ပါ C ဆိုရင္ #include “GBA.h”။ တစ္ကယ္ေတာ့ Function Call ပါပဲ။ ဒါေပမယ့္အဲဒါ အေသမဟုတ္ပါဘူး။ Complier Type ေပၚမူတည္ၿပီး Code Conversion ေျပာင္းလဲမႈရွိပါတယ္။ နမူနာ Program တစ္ခုကိုအရင္ေျပာင္းၾကည့္ၿပီးမွ တစ္ကယ္ကိုလုပ္မည့္ Software ကိုေျပာင္းမွ အဆင္ေျပမွာပါ။ မွန္ဖို႔ရာခိုင္ႏႈန္း အလြန္းနည္းပါတယ္။ မရႏိုင္ဘူးလို႔ေျပာတာ ပုိေကာင္းပါတယ္။ ကၽြန္ေတာ္ကိုယ္တိုင္လည္း မေသခ်ာလို႔ တစ္ျခားနည္းေျပာင္းသံုးရပါတယ္။

2 comments:

  1. Reverse Engineering လုပ္တာလို႔ထင္ပါတယ္။ ကၽြန္ေတာ္လဲ ဟိုတုန္းက စိတ္၀င္စားဘူးပါတယ္။ Decompiler ေတြ စုထားဘူးပါတယ္။ C , DELPHI, JAVA, VB ၄ မ်ိဳးအတြက္ ရွိပါတယ္။ ေသခ်ာေတာ႔မလုပ္ဘူးပါဘူး။ ကိုမိုးေရာ ဘယ္ tools ေတြ သံုးပါသလဲခင္ဗ်ာ။

    ReplyDelete
  2. ကၽြန္ေတာ္က C Compiler ပဲသံုးပါတယ္။

    ReplyDelete