2

调用附图代码,编写一个程序 “week0602学号.c",用show_int(), show_float()打印一下你的4位学号,参考教材P33打印出匹配的位序列。
20155231 cho2 课下作业

3

  1. 编写一个程序 “week0603学号.c",运行下面代码:
  2. short int v = -学号后四位
  3. unsigned short uv = (unsigned short) v
  4. printf("v = %d, uv = %u\n ", v, uv);
  5. 在第三行设置断点用gdb调试,用p /x v; p /x uv 查看变量的值,提交调试结果截图,要全屏,要包含自己的学号信息.
  6. 分析p /x v; p /x uv 与程序运行结果的不同和联系 运到问题

20155231 cho2 课下作业

  • 课上运到的问题:直接输入了p /x v; p /x uv 查看变量,没有用run运行。
  • 学到的:short int 和unsigned short储存的值一样。

2.96

int float_f2i(float_bits f);

对于浮点数f,这个函数计算(int)f。如果f是NaN,你的函数应该向零舍入。如果f不能用整数表示(例如,超出表示范围,或者它是一个NaN),那么那么函数应该返回0x80000000。
测试你的函数,对参数f可以取的所有2^32个值求值,将结果与你使用的机器的浮点运算得到的结果相比较。

代码执行实现这些指定的浮点运算的位操作,用unsigned 类型模拟int去运算浮点数的转换,将一个float类型转换为整数,用unsigned实现一个float数转换为intt时的位级表示。

20155231 cho2 课下作业

2.97

float_bits float_i2f(int i);

对于函数i,这个函数计算(float)i的位级表示。
测试你的函数,对参数f可以取的所有2^32个值求值,将结果与你使用的机器的浮点运算得到的结果相比较。

代码执行实现这些指定的浮点运算的位操作,用unsigned 类型模拟float去运算浮点数的转换,将一个int类型转换为浮点数,用unsigned实现一个int数转换为float时的位级表示。

20155231 cho2 课下作业

代码链接

相关文章:

  • 2021-11-15
  • 2021-09-27
  • 2022-02-01
  • 2021-11-07
  • 2022-01-23
  • 2021-10-09
  • 2022-02-23
猜你喜欢
  • 2021-06-07
  • 2021-09-08
  • 2022-02-21
  • 2022-02-02
  • 2021-12-20
  • 2021-11-10
  • 2022-02-22
相关资源
相似解决方案