[Linux] Linux에서 gdb AT&T 문법을 intel로 바꾸는 방법

x86 어셈블리 코드를 작성할 때 AT&T 문법이나 intel 문법을 사용하는데 at&t 문법은 레지스터 앞에 %와 $가 붙는다.  eax 레지스터를 나타낸다고 하면 AT&T는 %eax를, intel은 eax로 표현한다. 오퍼랜드 순서 또한 차이가 있다.
eax에서 ebx로의 데이터 복사를 예로 들면
AT&T => mov %eax, %ebx (source가 왼쪽, des가 오른쪽에 위치한다)
intel => mov ebx, eax (AT&T와 반대이다)

gdb를 사용할 때 AT&T 문법을 intel문법으로 바꾸고 싶다면 아래와 같은 명령어를 입력하면 된다.

 

댓글

Designed by JB FACTORY