美文网首页
条件分支与条件传送问题

条件分支与条件传送问题

作者: ProgrammingGuy | 来源:发表于2019-10-27 17:31 被阅读0次
// return absdiff;
int ct(int x, int y)
{
    int lval = x - y;
    int rval = y - x;
    if (x > y)
    {
        rval = lval;
    }
    return rval;
}

int cb(int x, int y)
{
    if (x > y)
    {
        goto t;
    }
    goto d;
t:
    return x - y;
d:
    return y - x;
}

long cread(long* xp)
{
    return (xp ? *xp : 0);
}

ct为条件传送示例,cb为条件分支示例。条件传送是先计算出该返回的两个值,然后根据条件来返回其中一个,因为有流水线的优势,所以这个方法在现代计算机中可以获得性能优势。条件分支为传统方式,根据测试条件来执行跳转,性能相对弱,特别是预测分支失败之后,需要很多时钟周期回到正确的分支。
cread示例说明了条件传送不适用的地方,如果xp是空指针,在条件传送流程中会对空指针取值,就引发了空指针引用问题。

相关文章

  • 条件分支与条件传送问题

    ct为条件传送示例,cb为条件分支示例。条件传送是先计算出该返回的两个值,然后根据条件来返回其中一个,因为有流水线...

  • JS语句用法大全

    if(判断) 格式: 单分支 if(条件){ 满足条件执行 } 双分支 if(条件){ 满足条件执行 }else{...

  • Python之条件判断

    Python 判断 + 循环 单条件 双条件 多条件 小案例 单分支 双分支 多分支

  • 5.14js学后感

    JavaScript分支结构 if分支 if(条件) {条件为true时执行的语句} if(条件){ ...

  • 条件分支

    if-else语句 如上图的代码写漏了,应要加(x==1) 结果为x!=1 switch语句 switch语句有两...

  • 条件分支

  • shell编程之流程控制

    if 条件判断1)、 单分支 if 条件语句if [ 条件判断式 ];then程序fi单分支条件语句需要注意几...

  • 第四节: JavaScript条件分支语句

    一. 条件分支语句 条件分支语句,也叫作条件判断语句,就是根据某种条件执行某些语句,不执行某些语句。 JS中条件...

  • 第四节 JavaScript条件分支语句

    一. 条件分支语句 条件分支语句,也叫作条件判断语句,就是根据某种条件执行某些语句,不执行某些语句。 JS中条件...

  • shell脚本的进阶

    一:条件选择if语句 注意:if语句可嵌套 单分支: if 判断条件;then 条件为真的分支代码 fi...

网友评论

      本文标题:条件分支与条件传送问题

      本文链接:https://www.haomeiwen.com/subject/bwcmvctx.html