decompiler는 무엇입니까?

a decompiler는 코드를 생성하는 프로그램은 소스 코드를 실행합니다.

컴파일러의 소스 코드를 실행 코드 생성이 있고 하나의 반전이 과정을 decompiler하려고합니다.

a decompiler는 전문 버전을 분해합니다. 반면에 실행 파일의 코드를 분해 어셈블리 언어로 변환을 시도합니다 더 멀리 decompiler의 코드를 소스 코드를 실행 파일을 변환하는 높은 수준의 언어와 같은 c 또는 c + +.

decompilers

부메랑

부메랑 프로젝트가 시도의 목표는 진정한 decompiler에 대한 기계 코드 프로그램을 개발하기 위해 오픈 소스 커뮤니티를 통해합니다. a decompiler은 실행 파일을 입력으로, 그리고 높은 수준을 만들려 시도, 컴파일, 아마 심지어는 같은 일을하는 소스 파일을 유지합니다. 그러므로 그 반대의 컴파일러, 어떤은의 소스 파일과 실행을합니다. 그러나, 일반적으로 매일을 뒤집을 수 decompiler의 작업을 시도하지 않습니다 decompiler, 오히려 그것의 입력 프로그램을 변환 결과는 높은 수준까지 반복해서 소스 코드를합니다. 따라서 원래 소스 파일을 재현되지 않습니다; 아마 아무것도 좋아합니다. 그것은 중요하지 않아 실행 파일의 경우에는 기호를 말든지, 아니면 특정 언어를 컴파일합니다. (단, ml 같은 선언적 언어로 간주되지 않습니다.)

retargetable를 만들려는 의도가 decompiler (즉 1 디컴파일 수있는 여러 종류의 기계 코드 파일이 겸손의 노력, 예를 들면 x86 - 창문, sparc - 솔라리스, 등). 그것도 의도가 높은 모듈, 그래서 decompiler의 각기 다른 부분이 실험적인 모듈로 교체 수있습니다. 그것은 결국 될하기위한 대화식의 라 아이다 직업, 왜냐하면 어떤 것들 (변수 이름이나 의견뿐만 아니라, 비록 이들은 분명히 매우 중요하다) 전문의 개입이 필요합니다. decompiler이나 양방향에 속해 있는지 여부를 별도의 도구를 불분명하게 남아있습니다.

전환하여 의미의 개인적인 지침을, 그리고 정적 단일 과제를 사용하여 데이터 흐름과 같은 강력한 기술을 분석, 부메랑되어야 (대부분)의 정확한 동작을 독립적으로 일어난 컴파일러를 사용하도록합니다. 최적화는 검색 결과에 영향을 미치지 않습니다. 이에 따라 회사의 목표는 일반적인 decompiler합니다.




즐겨찾기 decompiler는 무엇입니까?

최신 블로그 게시물


저작권 2008 기술 - 자주 묻는 질문합니다. 판권 소유.