我正在编写应用程序来控制LPT上的LEDS。 除了这个,我有一切工作。 这是一个小功能。
我是这样的:我想构建将接受两个参数并返回一个数字的函数: 在实际代码中,这些二进制数字将是十六进制的。我把它们放在那里,以便你更容易想象它。
例1:
arg1 = 1100 1100
arg2 = 1001 0001
retu = 0100 1100
例2:
arg1 = 1111 1111
arg2 = 0001 0010
retu = 1110 1101
示例3:
arg1 = 1111 0000
arg2 = 0010 0010
retu = 1101 0000
我不知道这个功能应该是怎样的。 我希望它尽可能快。
我将每秒调用此功能200次。
答案 0 :(得分:11)
基本上,第二个参数中的设置位是您要删除的位。所以你可以使用否定的第二个参数和:
byte Foo(byte a, byte b) {
return (byte)(a & ~b);
}
你的例子至少遵循这个。
正如Alexandre C.在对问题的评论中指出的那样,该函数被称为暗示,即 A ⇒ B 。