码迷,mamicode.com
首页 > 其他好文 > 详细

20135219洪韶武——信息安全系统设计基础第三周学习总结

时间:2015-10-04 13:36:53      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:

学习过程总结

一、gcc 编译

  使用C99特性时 gcc -std=c99 xxx.c 实验楼环境为64位,编译为32位机器码: gcc -m32 xxx.c

二、重点注意知识点

  p20: 三种数字:无符号数、有符号数(2进制补码)、浮点数,信息安全系同学从逆向角度考虑为什么会产生漏洞

  p22: 进制转换,注意拿二进制作中间结果就好转了

  p25: gcc -m32 可以在64位机上(比如实验楼的环境)生成32位的代码

  p26: 字节顺序是网络编程的基础,记住小端是“高对高、低对低”,大端与之相反就可以了。

  p28: 代码执行一下

  p32: 能区分逻辑运算(结果是1或0)和位运算(结果是位向量),所有逻辑运算都可以用与、或、非表达(最大式、最小式),而与或非可以用“与非”或“或非”表达,所以,只要一个与非门,就可以完成所有的逻辑运算。

  p33: 掩码是位运算的重要应用,对特定位可以置一,可以清零

  p38: 要用C99中的“long long”类型,编译是要用 gcc -std=c99

  p39: 补码的利用寄存器的长度是固定的特性简化数学运算。想想钟表,12-1 等价于 12 + 11,利用补码可以把数学运算统一成加法,只要一个加法器就可以实现所有的数学运算。

  p44: 注意C语言中有符号数和无符号数的转换规则,位向量不变。想想第一章说的 信息就是“位+上下文”

  p48: 怎么样让负数等于正数? 信息安全的逆向思维

p49: 0扩展和符号扩展

p52: 深入思考一下代码和结果

  p54: 如何让整数运算溢出?如何避免? p62例子看看

  p67: 关于整数运算的最后思考

  p67: 浮点数有科学计数法的基础就不难理解,IEEE标准754

  p68: 浮点数运算的不精确性与舍入

  p70: IEEE浮点标准,float/double类型

  p74: 整数与浮点数表示同一个数字的关系

  p78: 整数与浮点数转换规则

  p80:家庭作业可以选做,协调好每题最多两人一组做,一星题目一人加一分,二星加二分,三星加三分,四星加四分

三、重点练习

  p24 进制转换代码

  p24 show_bytes,写个main函数测试一下,参考p30代码
  p35 练习2.11, 可以用GDB单步跟踪一下,理解更深刻
  p44 代码放到一个main函数中,可以用GDB单步跟踪一下,理解更深刻
  p47/p49代码放到一个main函数中,可以用GDB单步跟踪一下,理解更深刻
  p78,转换规则可以写几行代码测试一下。

未完成,回去继续做。。。

20135219洪韶武——信息安全系统设计基础第三周学习总结

标签:

原文地址:http://www.cnblogs.com/5219hsw/p/4854467.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!