각 코드 행의 의미를 분석하고 강조 표시 할 수있는 도구가 있습니까? 내가 헥스 - 레이 Decompiler 같은 decompiler 찾고 아니에요. 어셈블리 코드를 읽는 데 도움이 될 간단한 도구를 찾고 있습니다.ARM 분해 코드
7
A
답변
9
objdump을 사용하면 어떨까요?
$ cat add.c
int add(int a, int b) {
return a + b;
}
$ arm-linux-gnueabihf-gcc -c -O2 add.c
$ arm-linux-gnueabihf-objdump -d add.o
add.o: file format elf32-littlearm
Disassembly of section .text:
00000000 <add>:
0: 1840 adds r0, r0, r1
2: 4770 bx lr
그것은뿐만 아니라 당신의 오브젝트 파일이 디버그 정보가 포함되어있는 경우 혼합 소스 코드를 제공 할 수있다 (GCC -g) 및 -S를 제공하는 경우 objdump를합니다. 이 무료 프로그램 ::에 대해 http://pel.hu/armu/이
2
. 라이브 뷰에 바이너리 데이터를 입력하고 입력 할 때 디스 어셈블리가 표시되는 것을 보거나 디스 어셈블 할 파일을 업로드 할 수 있습니다. 이 사이트의 좋은 점은 해체에 대한 링크를 다른 사람들과 공유 할 수 있다는 것입니다.
+0
Websense가 URL을 차단합니다. "- ( – tecMav
7
2
당신도, IDA Pro를 할 수있는 분해 ARM 질문에서 언급 한 바와 같이.
게다가 ARM DS-5 Development Studio을 사용해 보셨습니까?
일부 기능은 하드웨어와 관련이 있지만 IDE는 매우 좋습니다 (일식).
특징 : 베어 메탈 (bare-metal)에 대한
- 디버그 지원, RTOS와 리눅스 및 안드로이드 플랫폼 SMP 시스템
- 비 침해주기 정확한 ETM과 PTM 명령 추적
- 원활한 지원
- 빠른 디버그 사이클을위한 자동화 된 디버그 세션
- ITM 및 STM 계측 추적
- pre-con 패턴 및 사용자 정의 플랫폼 설명서에
가 포함 된 말한다 :
- DS-5 디버거, 제품 개발의 모든 단계를 포함하는
- ARM 임베디드 및 베어 메탈 (bare-metal) 코드에 대한 컴파일러 5.04
- Linux 응용 프로그램 및 Linux 커널 용 Linaro GCC Toolchain 2013.03
- Linux, Android 및 RTX를 포함한 다양한 운영 체제 용 ARM Streamline ™ 성능 분석기
- 이클립스 IDE, 소스 코드 편집기와 프로젝트 매니저
- 고정 가상 플랫폼 (FVP)
- 예 프로젝트 및 문서
관련 문제
- 1. 분해 안드로이드 NDK 코드
- 2. 분해 된 코드 리펙터링
- 3. ARM 어셈블리 코드 이해
- 4. ARM 코드 추적기
- 5. Keil arm startup.s 어셈블리 코드
- 6. Matlab의 임계 분해 분해
- 7. 분해
- 8. 분해 된 프로그램의 Asm 코드 조각
- 9. 다중 해상도 웨이브 렛 분해 코드
- 10. C++ ARM 장치의 코드 최적화 팁
- 11. 학습 분해
- 12. 분해 코드에 잘못되어있는 것
- 13. Dalvik 코드의 분해 이해?
- 14. 4x4 행렬 분해 알고리즘
- 15. PostgreSQL 쿼리 분해
- 16. ARM Undefined 명령어 오류
- 17. 값을 URL 형식으로 변환 - 유니 코드 분해 Åhhh
- 18. 비 프라임 인수 분해 공개 키 알고리즘 및 코드?
- 19. matlab : 희소 매트릭스 분해
- 20. 행렬 분해 알고리즘
- 21. Linux에서 Android 용 ARM 바이너리 실행 ARM
- 22. 매트릭스가 LU 분해 포함
- 23. 직교 행렬의 LU 분해
- 24. C# 프로그램의 추적 분해
- 25. 구분 기호 배열로 분해
- 26. 트리를 포리스트로 분해
- 27. 특이 값 분해 알고리즘
- 28. HTTP 응답 분해 (C)
- 29. BCNF 분해 (데이터베이스 설계)
- 30. JPA에서 집계 및 분해
팔 ARM (ARM 코어 텍스 ™ -A8 및 쿼드 코어 코어 텍스 A9 프로세서 아키텍처 참조 설명서)는 특정 아키텍처의 경우 (또는 아키텍처 차이를 지정하는 경우 더 새로운 아키텍처 얻기) 각 명령의 의미를 자세히 설명합니다. objdump + ARM ARM 만 있으면됩니다. –
동의. 도구는 부족한 일정을 실행할 때 보물을 보충하고 소중한 몇 분을 절약하는 것입니다. – tecMav
명령 세트가 복잡하지 않고 문서를 한눈에 볼 수 있으므로 일반적으로 돌아갈 필요가 없습니다. 찾아보고이 질문에 대한 답변을 기다리는 시간에 여러 번 지시 사항을 배울 수있었습니다. –