2017-2018-1 20155328 《信息安全系统设计基础》第3周学习总结

教材学习内容总结

  • 排列表示一个对象的字节有两个通用的规则:小端法(最低有效字节在最前面)和大端法(最高有效字节在前面)。

  • 表达式x>>k会将x算术右移k(左端补k个有效位)个位置,而x>>>k会对k做逻辑(左端补k个0)右移。

  • 要将一个补码数字转换为一个更大的数据类型,可执行一个符号扩展。

  • 在相同长度的无符号和有符号整数之间进行强制类型转换时,大多数C语言实现遵循的原则是底层的位模式不变。

  • 最常见的浮点表示方式是由IEEE标准754定义的。它提供了几种不同的精度,最常见的是单精度(32位)和双精度(64位)。

教材学习中的问题和解决过程

  • 问题1:在看有符号数和无符号数之间的转换时,对转换规则中“位模式不变”产生了疑惑。
  • 问题1解决方案:强制类型转换的结果保持位值不变,转换前的负数补码表示与转换后的16位无符号数表示是完全一样的。

代码调试中的问题和解决过程

  • 问题1:课本第58页的练习题2.25,照着书上的代码敲下来,发现当数组长度代入0时运行程序,出现内存错误,如图:

  • 解决方案1:将代码中的i<=length-1修改成了i<length,运行后结果正确。

因为sum.c中将length定义为无符号数,当length为0时减一就是UMAX。而for循环的终止条件是i<=length-1,所以出现了数组越界问题,也就有了内存错误。

代码托管

上周考试错题总结

无法查看错题。

结对及互评

本周结对学习情况

- [20155325](http://www.cnblogs.com/GDDFZ/)

-结对学习内容:教材第十章、第二章。

其他(感悟、思考等,可选)

希望自己以后增强练习,提高解决问题的能力。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 40/40 1/1 20/20
第二周 40/40 1/2 18/38
第四周 154/194 2/4 20/58

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

  • 计划学习时间:25小时

  • 实际学习时间:20小时

  • 改进情况:

(有空多看看现代软件工程 课件
软件工程师能力自我评价表
)

参考资料