gpt4 book ai didi

c - 程序段最小化 - if, else

转载 作者:行者123 更新时间:2023-11-30 14:28:45 24 4
gpt4 key购买 nike

X、Y、Z、T 是不同的作业。例如,X = 多路复用器( ... )

if ( empty1 ) 
if ( empty2 )
if ( empty3 )
if ( empty4 )
// Do nothing
else
X
else
Y
else
Z
else
T

编辑: emptyA 是数字 1 或 0,A 是集合 { 1, 2, 3, 4 } 的成员

如何重写该程序段以获得最小比较成本

最佳答案

您有 Verilog/HDL 标签,因此假设这是用于可综合逻辑:

//This may be more readable
wire [3:0] empties = {empty4,empty3,empty2,empty1};
casex (empties)
4'xxx0: blah = T;
4'xx01: blah = Z;
4'x011: blah = Y;
4'0111: blah = X;
default: blah = something_else; //Shouldn't do nothing
endcase

逻辑成本将取决于其他因素,而不仅仅是此代码。

关于c - 程序段最小化 - if, else,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5605754/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com