2019-2020-1 20175311胡济栋 《信息安全系统设计基础》第四周学习总结教材学习
2019-2020-1 20175311胡济栋 《信息安全系统设计基础》第四周学习总结教材学习 2.1信息存储 基础概念 机器即程序将 内存 视为一个非常大的 字节数组 ,称为 虚拟内存 。 内存的每个 字节 都有 唯一的数字 标识,称为它的 地址 。所有可能地址的集合就称为 虚拟空间地址 。字长用来指明 整数和指针数据 的标称大小,虚拟地址空间的大小由 字长 决定,对于一个字长为w位的机器而言,虚拟地址的范围为 0-2^w-1 。 字节 是最小的可寻址的存储器单位。 十六进制表示法:若位的总数不是4的倍数,最左边的一组可以少于4位,前面用0补足。字长指明整数和指针数据的标称大小。 C语言的一个很有用的特性就是它支持按位布尔运算。 位级运算 :&(与),|(或),~(取反),^(异或),运算时都是按位进行计算。 逻辑运算 :|| OR 或;&& AND 与;! NOT 非。 移位运算 :一般而言,机器支持两种形式的右移: 逻辑右移、算术右移 。 逻辑右移 (x>>>k)在左端补k个0,得到的结果是[0,…,0,xn-1,xn-2,…,xk]。 算术右移 (x>>k)是在左端补k个最高有效位的值,得到的结果是[xn-1,…,xn-1,xn-1,xn-2,…,xk]。 字节顺序 字节顺序是网络编程的基础,是指占内存多于一个字节类型的数据在内存中的存放顺序,通常有小端、大端两种字节顺序。