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

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

第2章 信息的表示和处理

1、信息存储

计算机最小的可寻址的存储器单位——字节

一个字节的值域:00H-FFH

2、进制转换

常用进制:二进制(B),十进制(D),八进制(O或者Q),十六进制(H)

转换为二进制-十六进制相互转换,二进制的四位数字对应十六进制的一位数字。

二进制与八进制的转化是三位对应一位。

通常情况下,进制转换都以二进制为桥梁进行转换。

3、字

字长决定虚拟地址空间的最大大小。

字长为w,虚拟地址的范围为1-(2^w-1)

w=32或64:也就是我们通常所说的电脑是32位还是64位。

4、小端法和大端法

 小端法:最低有效字节在前面——“高对高,低对低”
 大端法:最高有效字节在前面

注意:

有效位的高低的判断:

以0x01234567为例,每个字节为8bit所以2个十六进制位为1个字节,即划分为01,23,45,67;在最前面的为最高有效位,最后面的为最低有效位,所以最高有效位-01,最低有效位-67。

    大端法:
    最高有效位在最前,所以为01 23 45 67
    小端法:
    最低有效位在最前,所以为67 45 23 01

但是字节内部的顺序是不变的!以前在学汇编的时候经常犯这种错误!理解最高/低有效位的含义!

所以在书写小端法的字节序列时,最低有效位在左边,最高有效位在右边,与惯常书写方法相反。

5、无符号数的编码

0-(2^w)-1中的每一个整数和长度为w的位向量是一一对应

6、强制类型转换

位级角度考虑。

强制类型转换的结果保持位值不变,只是改变了解释这些位的方式。即:这些位上的值不变,但是由于最高有效位的权重发生变化,从而导致结果发生改变。

7、c语言中的有符号数和无符号数及其转换

转换原则:底层的位保持不变。
(1)有符号数→无符号数

 非负数——保持不变
 负数——转换成大正数

(2)无符号数→有符号数

以2的w-1次方为界限:

 小于它——保持不变
 大于它——转换为负数值

8、扩展

扩展——从一个较小的数据类型转换为较大的数据类型,同时保持数值不变。

①零扩展
多用于无符号数转换为一个更大的数据类型。只需在开头加上0即可。

②符号扩展
多用于补码数字转换

最高有效位是什么,就添加什么。

注:无符号和有符号数字之间的转换,和数据的大小的转换,这之间的相对顺序能够影响到一个程序的行为。具体见联系2.23。

9、截断数字
不用额外的位来扩展数值,而是减少表示一个数字的位数。而这么做可能会改变它的值,这也是溢出的一种形式。

将一个w位的数截断为k位数字时,就会丢弃高w-k位。

对于无符号数来说,就相当于 mod 2的k次幂

对于有符号数来说,先按照无符号数截断,然后再转化为有符号数

具体的公式参见书52页。

10、关于适用范围:

无符号数适用于没有任何数字意义的位的集合,比如地址;又或者实现模运算、多精度运算的时候,数字由字的数组表示的时候。

编程中多用有符号数

11、整数运算的总结
 计算机执行的“整数运算”实际上是一种模运算
 无论运算数是以无符号形式还是补码形式表示,都有完全一样或者非常类似的位级行为。
* 在编写c语言程序时需要谨慎食用unsigned数据类型,很可能会造成漏洞。

T托管代码截图

890515-20161003001951736-932144298.png

总结

以往写博客虽然也是在接触新知识,但是比较容易理解和接受。但是这次的博客从新的角度去刷新我们对于旧知识的理解,而且涉及的内容比较深,所以感觉非常难理解。很多琐碎的细节需要自己去注意,并且要不断的实践,不断地在失败加深记忆。不过学完之后,真的感觉自学学到的东西和听老师讲课学到t的东西是不一样的。

学习进度条

代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
目标5000行30篇400小时
第一周150/1501/220/20
第二周200/3501/224/44
第三周150/5001/320/64

参考资料

转载于:https://www.cnblogs.com/GZSdeboke/p/5928266.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值