- GitHub计算机系统CSAPP课程资源
- 计算机系统课程 笔记总结 CSAPP第二章 信息的表示和处理(2.1-2.2)
- 计算机系统课程 笔记总结 CSAPP第二章 信息的表示和处理(2.3-2.4)
- 计算机系统课程 笔记总结 CSAPP第三章 程序的机器级表示(3.2-3.4)
- 计算机系统课程 笔记总结 CSAPP第三章 程序的机器级表示(3.5-3.7)
- 计算机系统课程 笔记总结 CSAPP第三章 程序的机器级表示(3.8-3.10)
- 计算机系统课程 笔记总结 CSAPP第四章 处理器体系结构(4.1-4.3)
- 计算机系统课程 笔记总结 CSAPP第五章 优化程序性能(5.1-5.14)
- 计算机系统课程 笔记总结 CSAPP第六章 存储器层次结构(6.2-6.6)
- 计算机系统课程 笔记总结 CSAPP第七章 链接(7.1-7.13)
- 计算机系统课程 笔记总结 CSAPP第八章 异常控制流(8.0-8.1)
- 计算机系统课程 笔记总结 CSAPP第八章 异常控制流(8.2-8.4)
- 计算机系统课程 笔记总结 CSAPP第九章 虚拟存储器(9.1-9.5)
- 计算机系统课程 笔记总结 CSAPP第九章 虚拟存储器(9.6-9.10)
目录
2.1 信息存储
字节:
- 最小可寻址存储单位
- 8位的块
- 非单独的位
- 由唯一数字标识,称为“地址”
对于跨越多字节的程序对象必须建立两个规则:
- 这个对象的地址是什么?
- 如何在存储器中排列这些字节?
2.1.1 十六进制表示法
2.1.2 字数据大小
|
|
|
|
|
|
| |
| 计算机有字长,指明指针数据的标称大小 |
| |
|
|
|
2.1.3 寻址和字节顺序
|
|
|
|
|
|
| |
|
假设:
排列顺序结果可能: 0x100 0x101 0x102 0x103
|
| |
|
|
|
2.1.4 表示字符串
2.1.5 表示代码
2.1.6 布尔代数简介
2.1.7 C语言中的位级运算
- C语言中的位运算: &, |, ~, ^
- 适用于任何整型数据类型:long, int, short, char, unsigned
- 将操作数视为位向量
- 将参数按位运算
|
|
|
|
|
| ||
|
|
|
2.1.8 C语言的逻辑运算
2.1.9 C语言中的移位运算
2.2 整数表示
2.2.1 整型数据类型
2.2.2 无符号数的编码
- 符号位
- 对于补码(2’s complement), 最高位表示符号
- 0 表示非负数( != 正数),1 表示负数
2.2.3 补码编码
- 补码(正数取反加1)
- x = 15213: 00111011 01101101
- y = -15213: 11000100 10010011
|
|
|
|
|
|
| |
| 无符号数与有符号数编码的值
|
| |
|
|
|
2.2.4 有符号数和无符号数之间的转换
|
|
|
|
|
|
|
|
|
|
| |
|
|
|
| ||
|
|
|
|
| |
|
|
| |||
|
|
|
|
2.2.5 C语言中的有符号数与无符号数
|
|
|
|
|
|
|
|
|
|
|
2.2.6 扩展一个数字的位表示
|
|
|
|
|
|
|
|
|
| ||
|
|
|
|
| |
|
|
|
| ||
|
|
|
|
|
2.2.7 截断数字
- 截断 (例如从unsigned 到unsigned short的转换)
- 无论有/无符号数:多出的位(高位)均被截断
- 结果重新解读
- 无符号数: 相当于求模运算
- 有符号数: 与求模运算相似
- 对于小整数,结果是明确(正确)的预期值
- 计算机系统课程 笔记总结 CSAPP第二章 信息的表示和处理(2.1-2.2)
- 计算机系统课程 笔记总结 CSAPP第二章 信息的表示和处理(2.3-2.4)
- 计算机系统课程 笔记总结 CSAPP第三章 程序的机器级表示(3.2-3.4)
- 计算机系统课程 笔记总结 CSAPP第三章 程序的机器级表示(3.5-3.7)
- 计算机系统课程 笔记总结 CSAPP第三章 程序的机器级表示(3.8-3.10)
- 计算机系统课程 笔记总结 CSAPP第四章 处理器体系结构(4.1-4.3)
- 计算机系统课程 笔记总结 CSAPP第五章 优化程序性能(5.1-5.14)
- 计算机系统课程 笔记总结 CSAPP第六章 存储器层次结构(6.2-6.6)
- 计算机系统课程 笔记总结 CSAPP第七章 链接(7.1-7.13)
- 计算机系统课程 笔记总结 CSAPP第八章 异常控制流(8.0-8.1)
- 计算机系统课程 笔记总结 CSAPP第八章 异常控制流(8.2-8.4)
- 计算机系统课程 笔记总结 CSAPP第九章 虚拟存储器(9.1-9.5)
- 计算机系统课程 笔记总结 CSAPP第九章 虚拟存储器(9.6-9.10)
- GitHub计算机系统CSAPP课程资源