bits.c

来自「这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易」· C语言 代码 · 共 90 行

C
90
字号
#include	"cc.h"Bitsbor(Bits a, Bits b){	Bits c;	int i;	for(i=0; i<BITS; i++)		c.b[i] = a.b[i] | b.b[i];	return c;}Bitsband(Bits a, Bits b){	Bits c;	int i;	for(i=0; i<BITS; i++)		c.b[i] = a.b[i] & b.b[i];	return c;}/*Bitsbnot(Bits a){	Bits c;	int i;	for(i=0; i<BITS; i++)		c.b[i] = ~a.b[i];	return c;}*/intbany(Bits *a){	int i;	for(i=0; i<BITS; i++)		if(a->b[i])			return 1;	return 0;}intbeq(Bits a, Bits b){	int i;	for(i=0; i<BITS; i++)		if(a.b[i] != b.b[i])			return 0;	return 1;}intbnum(Bits a){	int i;	long b;	for(i=0; i<BITS; i++)		if(b = a.b[i])			return 32*i + bitno(b);	diag(Z, "bad in bnum");	return 0;}Bitsblsh(uint n){	Bits c;	c = zbits;	c.b[n/32] = 1L << (n%32);	return c;}intbset(Bits a, uint n){	if(a.b[n/32] & (1L << (n%32)))		return 1;	return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?