首页 > 技术文章 > 20145202 《信息安全系统设计基础》第3周学习总结

tuolemi 2016-10-02 15:33 原文

20145202 《信息安全系统设计基础》第3周学习总结

教学内容总结

三种数字:

  • 无符号数:基于传统二进制表示法,表示大于或者等于零的数字。
  • 补码:表示有符号整数的最常见方式
  • 浮点数:表示实数的科学计数法的以二为基数的版本。

计算机使用8位的块,或者字节,作为最小的可寻址的存储器单位,一个字节由8位组成,她的值域时0--255。

在计算机上,多字节对象都被存储为连续的字节序列,对象的地址为所使用字节中最小的地址。

布尔运算,补码的各种运算,浮点数运算,二进制小数的运算和汇编课上所学到的是一样的,这里就不说了。

c语言中的移位运算:x<<k,x左移k位,右边补0。

无符号数和有符号数之间互相转换时是可能出错的。这个我在代码里也试过,在书44页。

字节顺序是网络编程的基础。

  • 小端法:高对高,低对低。
  • 大端法:高对低,低对高。

实验楼中的学习

书上的一些代码我在虚拟机上敲了敲,把实验楼中的重点要求的题目在虚拟机上运行了一遍。

  • 二进制文件可以用od命令查看
  • 指针就是地址,局部变量保存再寄存器中

家庭作业

我做的是第56题,要求我用多组值来测试show_bytes

代码运行中的问题和解决过程

在运行树上的show_bytes的时候出现了这个情况没有声明,当时我只是简单的把代码敲到虚拟机上只是想看看能出来什么结果。

看了书上的完整内容之后知道要先声明一下所以我就先做了一个库,这样就可以运行了。

本周代码托管链接

git.oschina.net/tuolemi/haha/tree/3

推荐阅读