回 帖 发 新 帖 刷新版面

主题:求助!

#define __HAVE_ARCH_STRNCAT
static inline char * strncat(char * dest,const char * src,size_t count)
{
int d0, d1, d2, d3;
__asm__ __volatile__(
    "repne\n\t"
    "scasb\n\t"
    "decl %1\n\t"
    "movl %8,%3\n"
    "1:\tdecl %3\n\t"
    "js 2f\n\t"
    "lodsb\n\t"
    "stosb\n\t"
    "testb %%al,%%al\n\t"
    "jne 1b\n"
    "2:\txorl %2,%2\n\t"
    "stosb"
    : "=&S" (d0), "=&D" (d1), "=&a" (d2), "=&c" (d3)
    : "0" (src),"1" (dest),"2" (0),"3" (0xffffffffu), "g" (count)
    : "memory");
return dest;
}

上面嵌套汇编中scasb,tdecl,stosb是什么意思?有没有相关的资料?谢谢!!

回复列表 (共1个回复)

沙发

没人知道吗?

我来回复

您尚未登录,请登录后再回复。点此登录或注册