인라인 어셈블리에서 사용하는 명령어를 모두 알고 싶습니다. 커널 소스 분석할 때마다 어셈블리 명령어가 나오는데 어디를 찾아봐야 이런 명령어들이 있을까요??
알려주시면 감사하겠습니다.
http://www-106.ibm.com/developerworks/linux/library/l-ia.html
http://wiki.kldp.org/wiki.php/DocbookSgml/GCC_Inline_Assembly-KLDP
이런 문서들이 있군요..
답변 감사드립니다..
그럼 혹시 다음 문장이 무엇을 말하는 지 알 수 있을 까요??
tsbbl %0,%0
p.s. 리눅스 커널 2.6.0에 보면 이런 알 수 없는 명령어들이 많이 있는데 이런 명령어들을 어디서 볼 수 있을까요?? 설명이 되어있는 곳으로.. 아님 책이라두...
긍정적 사고는 긍정적 결과를 만든다.
Google에서 검색어Partial 8086/8088 Instructino set reference하시면 몇 가지 문서가 나올 거구요. KLDP에서는 http://wiki.kldp.org/HOWTO//html/Assembly-HOWTO/있군요.
i386 기반으로 가정하면
일단 명령어들은 인텔 매뉴얼 2권 Instruction Set Reference 을 참조하셔야 하겠구요GNU 어셈블러 매뉴얼도 같이 보셔야 할 겁니다.
그럼 혹시 다음 문장이 무엇을 말하는 지 알 수 있을 까요?? tsbbl %0,%0
추측컨데 맨 앞의 t 는 "\t" 에 연결된 것으로 보이고 sbb 는 인텔 매뉴얼 상에서 "Integer Subtraction with Borrow" 라고 나와있군요 마지막의 l 은 GNU 어셈블러 문법에서 32 비트 연산임을 표시하기 위해 들어간 것으로 보입니다.
즉, 간단히 "빼기" 인 것으로 보입니다만.. -_-;;
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
http://www-106.ibm.com/developerworks/li
http://www-106.ibm.com/developerworks/linux/library/l-ia.html
http://wiki.kldp.org/wiki.php/DocbookSgml/GCC_Inline_Assembly-KLDP
이런 문서들이 있군요..
답변 감사드립니다.... 그런데..
답변 감사드립니다..
그럼 혹시 다음 문장이 무엇을 말하는 지 알 수 있을 까요??
tsbbl %0,%0
p.s.
리눅스 커널 2.6.0에 보면 이런 알 수 없는 명령어들이 많이 있는데 이런 명령어들을 어디서 볼 수 있을까요?? 설명이 되어있는 곳으로..
아님 책이라두...
긍정적 사고는 긍정적 결과를 만든다.
Google 검색어
Google에서 검색어
Partial 8086/8088 Instructino set reference하시면
몇 가지 문서가 나올 거구요.
KLDP에서는 http://wiki.kldp.org/HOWTO//html/Assembly-HOWTO/있군요.
GAS 매뉴얼과 인텔 매뉴얼..
i386 기반으로 가정하면
일단 명령어들은 인텔 매뉴얼 2권 Instruction Set Reference 을 참조하셔야 하겠구요
GNU 어셈블러 매뉴얼도 같이 보셔야 할 겁니다.
추측컨데 맨 앞의 t 는 "\t" 에 연결된 것으로 보이고
sbb 는 인텔 매뉴얼 상에서 "Integer Subtraction with Borrow" 라고 나와있군요
마지막의 l 은 GNU 어셈블러 문법에서 32 비트 연산임을 표시하기 위해 들어간 것으로 보입니다.
즉, 간단히 "빼기" 인 것으로 보입니다만.. -_-;;
댓글 달기