[תÌù]linuxÏÂcÓïÑÔǶÈë»ã±à
ÍøÉÏ¿´µ½µÄÕâÆª¹ØÓÚLinuxÏÂCÓïÑÔǶÈë»ã±àµÄÎÄÕÂдµÄ·Ç³£È«£¬×ªÔعýÀ´¡£
Using Assembly Language in Linux.
IntelºÍAT&T»ã±àÓï·¨²îÒ죺
1¡£Ç°×º£º
Intel»ã±à¼Ä´æÆ÷ºÍÁ¢¼´ÊýÎÞÐèǰ׺¡£ºóÕ߼ĴæÆ÷ǰ׺Ϊ%£¬Á¢¼´Êýǰ׺Ϊ$¡£
eg£º
Intex Syntax
mov eax,1
mov ebx,0ffh
int 80h
AT&T Syntax
movl $1,%eax
movl $0xff,%ebx
int $0x80
2¡£¶þÕß¶Ô²Ù×÷Êý´¦Àí·½Ïò²»Í¬£º
eg£º
Intel »ã±àÓï·¨£º
instr dest,source
mov eax,[ecx]
AT&T »ã±àÓï·¨£º
instr source,dest
movl (%ecx),%eax
3¡£ÄÚ´æ±äÁ¿Óï·¨²îÒ죺
IntelÓ﷨ʹÓÃÖÐÀ¨ºÅ[]£¬ºóÕßʹÓÃСÀ¨ºÅ()
eg£º
Intex Syntax
mov eax,[ebx]
mov eax,[ebx+3]
AT&T Syntax
movl (%ebx),%eax
movl 3(%ebx),%eax
4¡£ºó׺£º
AT&T»ã±àÖ¸ÁîÓкó׺£¬ÒÔ±íÃ÷Êý¾ÝÀàÐÍ£¨8λ¡¢16λµÈ£©£»IntelÔò¸ù¾Ý¼Ä´æÆ÷×Ô¶¯Ê¶±ð¡£
eg£º
Intel Syntax
mov al,bl
mov ax,bx
mov eax,ebx
mov eax, dword ptr [ebx]
AT&T Syntax
movb %bl,%al
movw %bx,%ax
movl %ebx,%eax
movl (%ebx),%eax
5¡£
Intel£ºsegreg:[base+index*scale+disp]
AT&T£º %segreg:disp(base,index,scale).
Àý×Ó£º
1 #include <stdio.h>
2
3 int main(void) {
4 long eax=4;
5 long ebx=2;
6
7 __asm__ __volatile__ ("addl %1, %0"
8
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
LinuxµÄÎļþ²Ù×÷APIÉæ¼°µ½´´½¨¡¢´ò¿ª¡¢¶ÁдºÍ¹Ø±ÕÎļþ¡£
1.linux API
¡¡¡¡´´½¨
int creat(const char *filename, mode_t mode);
¡¡¡¡²ÎÊýmodeÖ¸¶¨Ð½¨ÎļþµÄ´æÈ¡È¨ÏÞ£¬ËüͬumaskÒ»Æð¾ö¶¨ÎļþµÄ×îÖÕȨÏÞ£¨mode&umask£©£¬ÆäÖÐumask´ú±íÁËÎļþÔÚ´´½¨Ê±ÐèҪȥµôµÄһЩ´æÈ¡È¨ÏÞ¡£umask¿Éͨ¹ýϵͳµ÷ÓÃumask()À´¸ ......
²Ù×÷ϵͳÖУ¬Ç°Ì¨½ø³ÌºÍºǫ́½ø³ÌÓÐÊ²Ã´Çø±ð£¿ÌØÕ÷ÊÇʲô£¿
ºǫ́³ÌÐò»ù±¾Éϲ»ºÍÓû§½»»¥£¬ÓÅÏȼ¶±ðÉÔ΢µÍÒ»µã
ǰ̨µÄ³ÌÐòºÍÓû§½»»¥£¬ÐèÒª½Ï¸ßµÄÏìÓ¦ËÙ¶È£¬ÓÅÏȼ¶±ðÉÔ΢¸ßÒ»µã
Ö±½Ó´Óºǫ́ÊÖ¹¤Æô¶¯Ò»¸ö½ø³ÌÓõñȽÏÉÙһЩ£¬³ý·ÇÊǸýø³ÌÉõΪºÄʱ£¬ÇÒÓû§Ò²²»¼±×ÅÐèÒª½á¹ûµÄʱºò¡£¼ÙÉèÓû§ÒªÆô¶¯Ò»¸öÐèÒª³¤Ê±¼äÔËÐÐ ......
Linux Òýµ¼¹ý³ÌÄÚÄ»
http://www.lemote.com/bbs/redirect.php?goto=newpost&tid=1723
µ±ÏµÍ³Ê×´ÎÒýµ¼Ê±£¬»òϵͳ±»ÖØÖÃʱ£¬´¦ÀíÆ÷»áÖ´ÐÐÒ»¸öλÓÚÒÑ֪λÖô¦µÄ´úÂë¡£ÔÚ¸öÈ˼ÆËã»ú£¨PC£©ÖУ¬Õâ¸öλÖÃÔÚ»ù±¾ÊäÈë/Êä³öϵͳ£¨BIOS£©ÖУ¬Ëü±£´æÔÚÖ÷°åÉϵÄÉÁ´æÖС£Ç¶ÈëʽϵͳÖеÄÖÐÑë´¦Àíµ¥Ôª£¨CPU£©»áµ÷ÓÃÕâ¸öÖØÖÃÏò ......
http://blog.csdn.net/unbutun/archive/2009/01/21/3847514.aspx
±¾ÎÄÒÔRedHat9.0ºÍi386ƽ̨ΪÀý£¬ÆÊÎöÁË´ÓÓû§´ò¿ªµçÔ´Ö±µ½ÆÁÄ»³öÏÖÃüÁîÐÐÌáʾ·ûµÄÕû¸öLinuxÆô¶¯¹ý³Ì¡£²¢ÇÒ½éÉÜÁËÆô¶¯ÖÐÉæ¼°µ½µÄ¸÷ÖÖÎļþ¡£
¡¡¡¡ÔĶÁLinuxÔ´´úÂ룬ÎÞÒÉÊÇÉîÈëѧϰLinuxµÄ×îºÃ·½·¨¡£ÔÚ±¾ÎĶÔLinuxÆô¶¯¹ý³ÌµÄ½éÉÜÖУ¬ÎÒÃÇÒ²³¢ÊÔ´ÓÔ´´ú ......