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

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

教材学习内容总结

  • 无符号编码基于传统二进制表示法,表示大于等于零的数字。
  • 补码编码是表示有符号整数
  • 浮点数编码是表示实数的科学计数法的以2为基数的版本
  • 在C语言中,以0x或0X开头被认为是十六进制值得表示方法。
  • 字长决定的最重要的系统参数就是虚拟地址空间的最大大小。(每台计算机都有一个字长,大小为指明指针数据的标。)
  • 排列表示一个对象的字节有两个通用的规则,即小端法和大端法。小端法即我们之前在汇编中学习过的‘低对低,高对高’,其每个字节的内部是不变化顺序的,同时也是我们常用到的。而大端法则为最高有效字节在前面。
  • c语言中字符串被编码成为一个以null(值为0)字符结尾的字符数组。最常使用的为ASCII字符码,其好处在于在使用ASCII字符码的任何系统上都能得到相同的结果,与字节顺序和字大小规则无关,因此文本数据比二进制数据具有更强的平台独立性。
  • 布尔代数:二进制1和0分别表示逻辑值T和F,运算符-,&,|,和^分别表示NOT,AND,OR,EXCLUSIVE-OR。我们可以将布尔运算扩张到位向量的运算。
    • 位向量即固定长度w,由1和0组成的串,可定义成参数的每个对应元素之间的运算。其一个有用的应用就是有限集合。
  • c语言一个很有用的特性就是它支持按位布尔运算。
  • c语言中逻辑运算符||,&&,!分别对应命题逻辑中的OR,AND,NOT。与位级运算功能完全不同。逻辑运算认为所有非零参数表示TRUE,0表示FALSE,它们返回1或者0分别对应结果TRUE和FALSE。
  • 补码:利用补码表示有符号数,,所有的运算都可用加法器实现。在补码中,将字的最高有效位解释为负权
    • 补码的范围是不对称的
    • 补码的最高位是符号位,用带向左箭头的条表示。无符号数的最高有效位有正权重,用带向右箭头的条表示
    • 无符号数与有符号数间的转换原则是底层的位表示不变
    • 零扩展/符号扩展:将一个无符号数/补码数字转换为一个更大的数据类型
    • 对于无符号和补码乘法来说,乘法运算的位级表示都是一样的

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

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

  • 问题1:p31页代码无法运行
  • 问题1解决方案:需补充一个main函数
  • 后续页数代码也出现了类似的问题,解决方案同上

代码托管

(statistics.sh脚本的运行结果截图)

上周考试错题总结

考试错题的链接打不开

本周结对学习情况

  • 20155235
    • 结对学习内容
      • 逻辑运算与位级运算的不同

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

本周因为和十一假期相连,故而拖了一段时间。本周的学习内容与上学期多门课的学习相连,在看书的时候同时复习了一下上学期的内容。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第三周 94/100 1/1 12/15

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

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

  • 计划学习时间:15小时

  • 实际学习时间:12小时

  • 改进情况:因为上学期学习java时多用windows下的idea,故在虚拟机中调试耗费了许久,然而统计代码的stastics脚本仍然有些问题,在给予权限后虽可统计代码却仍然会有权限不足的提示。

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

参考资料

posted on 2017-10-15 14:00  20155211  阅读(152)  评论(0编辑  收藏  举报