11月9日文件上传组件培训日记

// 计算结果,有进位借位或溢出或溢出产生,则为非0,否则为0

// 调用完宏后直接加以判断

int g_iResult = 0;

 

// 对有符号整数数学计算进行判断

#define CARRY /

    __asm__ ("jo 0f /n/t" /

        "movl $0, g_iResult/n/t" /

        "jmp 1f /n/t" /

        "0:/n/t" /

        "movl $1, g_iResult/n/t" /

        "1:/n/t");

 

// 对无符号整数数学计算进行判断

#define OVER_FLOW /

    __asm__ ("jc 0f /n/t" /

        "movl $0, g_iResult/n/t" /

        "jmp 1f /n/t" /

        "0:/n/t" /

        "movl $1, g_iResult/n/t" /

        "1:/n/t");

对于数学计算是无符号还是有符号,和参与计算的整型变量本身没有关系,而是视程序把计算结果当成有符号还是无符号而定。汇编代码为AT&T语法格式。

——元创,于 2007 10 14

你可能感兴趣的:(文件上传)