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

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

本周学习目标

1:理解二进制在计算机中的重要地位

2:掌握布尔运算在C语言中的应用

3:理解有符号整数、无符号整数、浮点数的表示

4:理解补码的重要性

5:能避免C语言中溢出,数据类型转换中的陷阱和可能会导致的漏洞

6:进一步理解“信息=位+上下文”

《深入理解计算机系统》第2章 信息的表示和处理

信息的表示和处理有关知识点

  • 现代计算机存储和处理信息以二值信号表示,这些二进制数字称为位。
  • 计算机将信息按位编码,通常组织成字节序列。
  • 在相同长度无符号和有符号整数之间进行强制类型转换时,大多数C语言实现遵循的原理则是底层的位模式不变。
  • 在补码机器上,对于一个w位的值,这种行为是由函数T2UWU2TW来描述的。
  • 由于编码长度有限,与传统整数和实数相比,计算机运算具有完全不同的属性。当超出表示范围时,有限长度能够引起数值溢出。例如:当浮点数非常接近于0.0,从而转换成0时,也会下溢出。
  • 浮点表示通过数字编码为x*2^y的形式近似表示实数。
  • 注意因为浮点数只有有限的范围和精度,不会遵守普遍的算数属性。

  • 通过移位来进行乘法运算
    • 教材2.4:若x需要乘以一个数k,则将k分解为2的指数的加减法,幂级数代表移位数,随后用加减的正负号来连接。
  • 教材P28的代码,自己添加main来进行测试

MAJyR.png

MAgag.png

  • 教材P35的代码

MAZnG.png

MAw7y.png

  • 教材P49的代码

MAums.png

MACa7.png

MAcE6.png

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

  • 关于大端法和小端法

    最开始理解定义没什么问题,区分不同的地方在于有效字节的排列。最低有效字节在最前面成为小端法,那么最高有效字节在最前端称谓大端法。

    但是书上习题 Ox01234567的例子为什么高位字节的16进制是Ox01 低位时Ox67?

    看过课后习题关于Ox87654321的例子明白了,因为每个十六进制的数字,在地址排列中有两个通用规则。考虑一个w位的数,位表示为[Xw-1,Xw-2,...,X1,X0]其中Xw-1是最高位,X0是最低位.这样一来就可以明白高位字节是Ox01,低位字节是Ox67,这样问题就顺利解决了。

  • 关于表示字符串

    通过以前的学习也知道是由一张ASCII字符码表,但是对于使用使用ASCII作为字符码的任何系统上会得到相同结果,与字节顺序和字大小规则无关并不太理解。

    在虚拟机下使用man ascii得到一张ASCII表,并用书上的例子

      const  cahr *s ="abcdef"
      show_bytes( (byte_pointer)s,strlen(s));

    解决了这一问题。

  • 关于掩码

    掩码是位模式,表示从一个字中选出位的集合。根据计算x&OxFF生成一个由x的最低有效字节组成的值,而其他的字节就被置为0。书上的例子X=Ox89ABCDEFOxFF&运算,为什么是Ox000000EF,原来运算需要换算成二进制数才可以,十六进制不可以运算。

  • 关于有符号数和无符号数

    创建无符号常量,必须加上后缀字符“u”或者“U”。允许无符号数和有符号数之间的转换,转换的原则是底层位保持不变。在转换时候可以采用隐式,这样就解决了书上p48的练习遇到的问题。

    隐式类似于:

      int x,y;
      unsigned ux, uy;
      x=ux;
      y=uy;

    因为在代码段中省略了x=(int)ux ;所以在编写代码的时候容易出错,一定要区分清楚哪个是符号数哪个是无符号数。

代码托管

代码链接

MWl2W.png

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

这周学到的知识,补码,反码等,包括溢出等知识点虽然以前在计算机导论和c语言基础的课程上都有所了解,但是将这些知识点放在一个全新的Linux系统下理解就有很多的不一样了,不论在理解方面还是运用的方面都是新的知识。

我们一定要把概念搞清楚,才会少犯这种低级的错误,还是得把基础搞牢。计算机和人不一样,我们要慢慢的去习惯这种计算机式的思维方式,有利于提高我们的编程能力。

学习进度条

代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
目标5000行30篇400小时
第一周10 /101/110/10
第二周60 /702/418/38
第三周170/2003/715/60

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

  • 计划学习时间:15小时

  • 实际学习时间:15小时

  • 改进情况:多提出问题,多解决问题。

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

参考资料

转载于:https://www.cnblogs.com/hxl681207/p/7988768.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: nbt33008.1-2018是指《建筑电气火灾监控及报警系统设计规范》。该规范是我国建筑电气火灾监控及报警系统设计的参考标准,对建筑电气火灾监控及报警系统设计做出了详细的要求和规范,以提高建筑电气火灾的预防和控制能力。 规范中包括了系统的方案设计、设备选用、系统结构、电气结构、逻辑结构、程序和接口等详细内容,并对各方面进行了严格的要求和规范。如要求监控系统要能够及发现火灾、准确报警、自动控制;要求监控系统能够与其他设备和系统联动控制,提高安全性和便利性等。 总的来说,nbt33008.1-2018规范对建筑电气火灾监控及报警系统设计的规范化程度和要求有了进一步提高,对于建筑安全和人身安全具有重要意义,值得各相关方面在实践中广泛采用。 ### 回答2: nbt33008.1-2018是中国的国家标准,名称为“电子设备用户手册的编制 第1部分:通用要求”。该标准主要规定了电子设备用户手册编制的通用要求。用户手册是为了帮助用户正确和安全地使用电子设备而编写的文件。 根据nbt33008.1-2018,用户手册的编制应符合以下要求:首先,必须包含设备的基本信息,如设备的名称、型号、功能特点、技术参数等。其次,用户手册应提供设备的安装和使用指导,包括设备的组装和安装步骤,操作方法和注意事项等。此外,还应提供设备的维护和保养说明,例如设备的清洁方法、零部件更换和维修等。对于设备的故障处理和常见问题解答也应在用户手册中列出。 除了这些基本要求外,nbt33008.1-2018还强调设备用户手册的语言应简明易懂,避免使用过于专业化的术语,以便用户能够理解。此外,用户手册还应使用图表、表格和示意图等辅助说明,以帮助用户更好地理解。最后,用户手册应具有可读性,排版要整齐清晰,字体大小适中。 总之,nbt33008.1-2018是关于电子设备用户手册编制的国家标准,规定了用户手册必须包含的内容和满足的要求。遵循该标准能够编写出较为完善、易于理解、操作指引清晰的设备用户手册,提高用户对设备的了解和正确使用。 ### 回答3: NBT33008.1-2018是中国国家标准化技术委员会制定的关于建筑物电气安装的国家标准。该标准的内容主要涵盖了建筑物电气安装的设计、施工、验收和运行等方面的要求。 NBT33008.1-2018标准的制定目的是为了保障建筑物电气安装的安全可靠性,提高建筑物的用电质量和节能水平。标准规定了电气装置的设计要求,包括电力负载计算、线路布置、电器设备选型等内容,确保电气装置能够满足建筑物的用电需求。 标准还规定了电气施工的要求,包括电缆敷设、保护接地、接线、安装检查等方面的具体步骤和要求,确保电气设备的安全可靠运行。标准还指出了电气验收的程序和方法,包括验收文件、检测标准、抽样检查等要求,确保电气装置符合国家和行业标准的要求。 此外,NBT33008.1-2018标准还对电气装置的运行和维护提出了一些要求,包括定期检查、电器设备的维护和维修等内容,以保证电气装置的安全可靠运行。 总的来说,NBT33008.1-2018是一项关于建筑物电气安装的国家标准,其制定的目的是为了保障建筑物电气安装的安全可靠性,提高建筑物的用电质量和节能水平。标准涵盖了设计、施工、验收和运行等方面的要求,对建筑物电气安装起到了重要的指导作用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值