1 Star 0 Fork 84

b0nd1iu/lab1

forked from 计算机系统基础/lab1 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
tests.c 1.00 KB
一键复制 编辑 原始数据 按行查看 历史
李幼萌 提交于 2024-02-26 14:18 . Initial Commit
/* Testing Code */
#include <limits.h>
#include <math.h>
/* Routines used by floation point test code */
/* Convert from bit level representation to floating point number */
float u2f(unsigned u) {
union {
unsigned u;
float f;
} a;
a.u = u;
return a.f;
}
/* Convert from floating point number to bit-level representation */
unsigned f2u(float f) {
union {
unsigned u;
float f;
} a;
a.f = f;
return a.u;
}
int test_isAsciiDigit(int x) {
return (0x30 <= x) && (x <= 0x39);
}
int test_anyEvenBit(int x) {
int i;
for (i = 0; i < 32; i+=2)
if (x & (1<<i))
return 1;
return 0;
}
int test_copyLSB(int x)
{
return (x & 0x1) ? -1 : 0;
}
int test_leastBitPos(int x) {
int mask = 1;
if (x == 0)
return 0;
while (!(mask & x)) {
mask = mask << 1;
}
return mask;
}
int test_divpwr2(int x, int n)
{
int p2n = 1<<n;
return x/p2n;
}
int test_bitCount(int x) {
int result = 0;
int i;
for (i = 0; i < 32; i++)
result += (x >> i) & 0x1;
return result;
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/zhaoyangchen/lab1.git
[email protected]:zhaoyangchen/lab1.git
zhaoyangchen
lab1
lab1
master

搜索帮助