objdump 예제

| 0

PowerPC의 경우 -M 인수 원시는 별칭이 아닌 하드웨어 인서를 구분하지 않고 선택합니다. 예를 들어 “clrlwi”가 아닌 “rlwinm”과 “li”가 아닌 “addi”가 표시됩니다. CPU를 선택하는 가스에 대한 모든 -m 인수가 지원됩니다. 이들은: 403, 405, 440, 464, 476, 601, 603, 604, 620, 7400, 7410, 7450, 7455, 750cl, 821, 850, 860, a2, 예약, booke32, 셀, com, e200z4, e300, e500mc, e500mc, e500mc64, e500x2, e5500, e6500, efs, power4, power5500, power6, power7, power9p9p9, p3pc, ppc64bridge, ppcps, pwr, pwr2, pwr4, pwr5, pwr5x, pwr6, pwr7, pwr8, pwr9, pwrx, 티탄 및 vle. 32 및 64는 기본 값 또는 이전 CPU 선택을 수정하여 각각 64비트 인시더를 비활성화하고 사용하도록 설정합니다. 또한 altivec, 모든, htm, vsx 및 spe 이전 또는 이후 CPU 선택에 기능을 추가 합니다. binutils에 알려진 모든 opcode를 분해하지만 opcode에 두 가지 다른 의미 또는 다른 인수가있는 경우 예상되는 분해가 표시되지 않을 수 있습니다. CPU 선택을 제공하지 않고 분해하는 경우 기본값은 개체 파일 헤더에서 BFD가 수집한 정보에서 선택되지만 결과는 예상대로 되지 않을 수 있습니다. 참고: 예제에서 사용되는 실행 형식은 ELF입니다. 그것에 대해 자세히 알아두려면 ELF 파일 형식에 대한 기사를 참조하십시오. 이제 ELF는 형식 표준이기 때문에 프로그램 및 섹션 헤더에 대한 유연한 명령 “readelf”가 아닌가요? objdump 어쨌든 가장 적합 디스어셈블 개체 코드. 맨 페이지에 따르면 objdump는 개체 파일의 정보를 dsplay하는 데 사용됩니다.

개체 파일을 심문하기 위해 제공 할 수있는 다른 스위치의 전체 호스트가 있지만이 게시물에서는 매우 간단한 사용법만 사용할 수 있습니다. Linux의 Objdump 명령은 개체 파일에 대한 철저한 정보를 제공하는 데 사용됩니다. 이 명령은 주로 컴파일러에서 작업하는 프로그래머가 사용하지만 디버깅과 관련하여 일반 프로그래머에게도 매우 편리한 도구입니다. 이 문서에서는 몇 가지 예제를 통해 objdump 명령을 사용하는 방법을 이해합니다. objdump의 기본 구문은 다음과 입니다 : objdump [-a |–아카이브 헤더] [-b bfdname |–target=bfdname] [-C |–demangle[=스타일] ] [-d |–disassemble] [-D |–모든 분해] [-z|–분해-제로] [-EB|–EL|–엔디안=큰 | 작은 }] [-f|-파일 헤더] [-F|—- 파일 오프셋] [–파일 시작 컨텍스트] [-파일 시작 컨텍스트] [-g|–디버깅] [-e|–디버깅 태그] [-h|–섹션 헤더 |–헤더] [-i|—-정보] [–j 섹션=섹션=] [-s–라인-숫자] [-S|———————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————– 디스어셈블러 옵션=옵션] [-p |–개인 헤더] [-r |–reloc] [-R |–dynamic-reloc] [-s|–전체 콘텐츠] [-W[lLiaprm] fFsoR]| –왜소합니다[=rawline,=rawline,=디코딩라인,=정보,=abbrev,=abbrev,=pubnames,=aranges,=매크로,=프레임,=프레임-인터프,=str,=loc,== 범위]] [-G |–찌르기] [-t|–심칭] [-T|–동적 심칭] [-x|–모든 헤더] [-w|와이드] [–시작 주소=주소] [–stop-address=주소] [–접두사 주소] [–[아니요]쇼-원시-인] [–adjust-vma=오프셋] [–특수 심즈] [–접두사=접두사] –접두사 스트립 = 수준] [–insn-width=너비] [-V |–버전] [-H|–help] objfile… 위의 예제에서는 -v 및 -i 옵션을 사용했습니다. -v는 버전 정보를 인쇄하는 데 사용되지만 -i는 지원되는 개체 형식 및 아키텍처를 제공하는 데 사용됩니다. 다음 예제에서는 다양한 섹션을 보여 주며 있습니다. 당신이 볼 수 있듯이 26의 총이있다 (부분 출력만 여기에 표시됩니다). objdump는 하나 이상의 개체 파일에 대한 정보를 표시합니다. 옵션은 표시할 특정 정보를 제어합니다. 이 정보는 프로그램을 컴파일하고 작업하려는 프로그래머와 달리 컴파일 도구를 작업하는 프로그래머에게 주로 유용합니다.

다음 예제에서는 모든 섹션을 표시합니다(부분 출력만 여기에 표시됨): 이 옵션은 코드 섹션의 명령 어셈블리에 미묘한 영향을 미칩니다.

Follow admin:

Latest posts from