【操作系统】信息的表示和处理

本章为CSAPP Ch-2的读书笔记,复习了数据的存储方式

信息存储

最小可寻址内存单位 -字节byte 一般为8位的块

内存被视为一个很大的字节数组,也就是虚拟内存,每个字节用地址标识

地址的集合为虚拟地址空间

虚拟内存中包含程序的数据,指令,控制信息

十六进制表示

字数据大小

字长为数据标称大小

字长决定了虚拟地址空间的最大大小,字长为w的机器虚拟地址范围是[0, $2^w-1$]

最多访问$2^w$个字节

32位和64位

gcc -m32可以编译32位程序

gcc -m64可以编译64位程序

寻址和字节顺序

最低有效字节在前-小端法

最高有效字节在前-大端法

部分cpu支持双端法 ,但是操作系统只支持小端模式(iOS & Android)

大小端的影响

  1. 网络收发统一顺序
  2. 汇编阅读字节顺序
  3. 按字节打印

字符串表示

以null结尾的字符数组

每个字符使用ASCII码,在各个系统都相同,因此文本数据的表示有更高的平台独立性(than二进制数据)

终止字符0x00

UTF-8,每个字符使用一个字节来编码

布尔代数

null

位运算

掩码运算

掩码:表示从一个字中选出来位的集合

整数表示

0%