2019-2020-1 20175320 《信息安全系统设计基础》第四周学习总结

2019-2020-1 20175320 《信息安全系统设计基础》第四周学习总结

一、教材学习内容总结

本周我们了解了在计算机系统中信息的表示与处理的方法,主要包括了以下三个方面:进制转换、位的概念与运算、信息的表示、数值运算以及信息的存储。

进制转换

进制转换已经在前面各门课程中多次提及,这里我就不再赘述了。

位的概念

该部分主要介绍了位向量的概念,并介绍了位运算以及逻辑运算,并介绍了两种移位方式,这部分需要注意的是:

  • 注意位运算符号与逻辑运算符号的区别,以及两者计算结果数据类型的区别。
  • 移位运算分为逻辑移位以及算术移位,一定要熟悉两者的符号。逻辑移位补零,算术移位补符号位,因此算术移位更多用在右移即有符号数的除法的情况。

信息的表示

在这部分介绍了补码的概念,并提出了无符号数以及有符号数的概念,以及二进制编码与无符号数以及有符号数之间的转化,介绍了IEEE标准的浮点数如何表示以及如何转化为十进制小数。这部分需要注意的是:

  • 在教材中几种数的转换都是使用抽象的函数符号进行表示,比如“B2Tw”,这需要我们熟悉各个函数符号表达的意思。
  • 使用数据转换公式时一定要看需要转换的数据否在取值范围内,并且该数据是属于范围内的哪种情况。
  • 尤其需要注意,在c语言中,对于同时包括有符号和无符号数的表达式,在计算过程中c语言会强制将有符号参数转化为无符号数,对于逻辑运算表达式,这样的处理方式会导致非直观的运算结果。
  • 二进制浮点数转化为十进制数的过程中,阶码E反映的是权值,尾数M反映的是小数点后的部分,在公式中进行运算的过程中,阶码字段以及小数字段都要转化为十进制数。
  • 浮点数还涉及舍入的问题,本章介绍了四种舍入方法,当需要舍入的数是舍入结果的中间值时,需要使用向偶数舍入的方式。

数值运算

主要是针对无符号数以及有符号数这两种情况进行运算,需要注意的是:

  • 在本章介绍的除法是除以2的幂,无符号数可以直接通过逻辑移位来得到计算结果,有符号数需要加上偏移量后再进行算术移位来得到结果。
  • 使用补码进行乘法运算时,需要将补码转化为有符号数,利用有符号数计算出结果后再将计算结果转化为补码,若有溢出则需要将超出长度的位截去,再将剩余的补码转化为有符号数。

信息的存储

这一部分主要介绍了大端以及小端两种计算机的存储方式,并了解了几个网络字节序与主机字节序之间进行转换的函数。

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

本章中遇到的问题基本通过阅读教材以及上网搜索解决了,部分解决后的问题我写在前面的注意内容中了。

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

本周主要是理论内容,代码量不大,运行过程中并没有碰到问题,以下是代码运行结果截图。

四、代码托管

五、上周考试错题总结

问题一:

问题一解析:temp是局部变量,不出现在符号表中。
问题二:

问题二解析:gcc -g 才会出现.debug   .line

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

本周的任务相较于上周的任务少了一些实际操作,多了许多理论知识。通过本章的学习,我了解了信息数据在电脑中的存储方式以及c语言是如何对这些数据进行转化以及操作的,通过了解这些基础理论,使我对计算机系统运行的规律有了更多的了解,使得我可以在编程过程中发现一些以前无法意识到的,由系统运行规律导致的错误。虽然本章内容较为繁琐,但我觉得这些内容能让我们的思考更加严谨,能从另一个角度解决程序中遇到的问题。

七、学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 54/54 1/1 13/13
第二周 59/113 1/2 22/35

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

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

参考资料

猜你喜欢

转载自www.cnblogs.com/nameless-student/p/11607961.html