«Դեկոմպիլյատոր»–ի խմբագրումների տարբերություն

Content deleted Content added
մանր-մունր, փոխարինվեց: << → «, >> → » oգտվելով ԱՎԲ
Տող 6.
Դեկոմպիլյացիան մասնավորապես օգտագործում են ծրագրի հակառակ մշակաման(''Reverse engineering'') դեպքում։ 
 
Դեկոմպիլյացիայի <<«հաջողությունը>>» կախված է ներկայացված կոդի ինֆորմացիայի ծավալից: [[Բայթկոդ]]ը,որը օգտագործվում է վիրտուալ մեքենաների մեծամասնության կողմից  (օր.`''Java Virtual Machine կամ  .NET Framework Common Language Runtime'') հաճախ պարունակում են լայն մետատվյալներ, մինչդեռ [[մեքենայական կոդ]]ը ավելի բարդ է դեկոմպիլացվում: Հիմնականում դժվար կարդացվող են համարվում այն կանչերը, որոնք կատարվում են ենթածրագրից կամ անուղղակի հասցեավորմամբ ( բարձր մակարդակի ծրագրավորման լեզուներում ֆունկցիայի կամ պրոցեդուրաների ցուչիրներ):
 
Եթե հայտնի է, թե որ լեզվով է գրված եղել դեկոմպիլացվող ծրագիրը, ապա առաջին հերթին հետազոտվում է [[Run-time գրադարան]]ը, քանի որ հիմնականում ծրագրի կոմպիլյացիան այդ գրադարանում պրոցեդուրաների կանչերի հետ է կապվում: Բացի դրանից շատ [[կոմպիլյատոր]]ներ թույլ են տալիս տեսնել, թե ինչ [[Ասսեմբլեր լեզու|ասսեմբլեր]]ական կոդի են վերածվում ծրագրի օպերատորները կոմպիլյացիայից հետո: Ամենահեշտը տարբերվում են պրոցեդուրաների կանչերը և նրանցից վերադարձը:
Տող 19.
* JAD — JAva Decompiler
* VB Decompiler —  Visual Basic 6.0-ի համար
 
 
 
== Հղումներ ==
Տող 26 ⟶ 24՝
* [http://www.diku.dk/~torbenm/Basics/basics_lulu2.pdf Basics of Compiler Design ]
* [https://q3k.org/gentoomen/Programming/Pragmatic%20Programmers/Language%20Implementation%20Patterns.pdf Language Implementation Patterns]
 
[[Կատեգորիա:Կազմարկիչներ]]