
csapp
文章平均质量分 93
csapp学习
SchneeDuan
一位iOS兴趣爱好者
展开
-
CSAPP 第一章
理解执行过程:用户通过I/O设备输入数据,数据通过总线将被放入CPU中的寄存器PC,再利用总线将数据存入主存中,当我们敲回车键时,shell程序会执行一系列指令来加载可执行的hello文件,这些指令将hello目标文件中的代码和数据从磁盘复制到主存中,接着处理器就开始执行main中的机器语言指令,这些指令将hello的字节从主存复制到寄存器中文件,再从寄存器文件中复制到I/O显示设备。(控制器和适配器的区别在于封装方式不同,前者是I/O设备本身或者系统的主印刷电路板上的芯片组,后者是一块插在主板插槽的卡)原创 2023-07-05 20:40:13 · 127 阅读 · 1 评论 -
CSAPP 第二章
IEEE754 浮点数的格式如下图所示。有符号数-1和无符号数2的32次方的位表示是完全一样的 因为-1的二进制是1*10的32次方 而2的32次方的二进制也是1*10的32次方。比如二进制小数 10.111 = 1*2的一次方 + 0*2的零次方 + 1*2的负一次方 + 1*2的负二次方 + 1*2的负三次方。移码(又叫增码)是对真值补码的符号位取反,一般用作浮点数的阶码,引入的目的是便于浮点数运算时的对阶操作。无符号整数都是非负的,所以,无符号整数的右移,和整数除法的结果是一致的,即舍入到零。原创 2023-10-10 19:24:07 · 112 阅读 · 7 评论 -
CSAPP 第三章
介绍完寄存器,我们再回到汇编代码:可以看到,汇编代码分成左右两部分,左边是。原创 2023-11-13 15:23:41 · 180 阅读 · 0 评论 -
CSAPP 第六章---存储器层次结构
寄存器是CPU内部用来存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果。原创 2024-04-01 20:19:36 · 1230 阅读 · 1 评论 -
CSAPP 第八章---异常控制流
举个例子:假设有A1,A2两个值,其内存位置相邻,并且分别存放着指令I1、指令I2的地址,当计算机读取A1到读取A2的这个过渡,称之为“”,这样的叫做处理器的。(上下文切换)原创 2024-04-15 17:55:05 · 826 阅读 · 1 评论 -
CSAPP 第九章---虚拟内存(通俗易懂版)
在计算机操作系统中,虚拟内存是对主存储器(DRAM)的一种抽象,其为每个进程提供了一个大的、统一的和私有的地址空间。大的:因为虚拟内存是映射关系,所以虚拟内存的最大空间就是CPU的最大寻址空间,不受内存大小的限制,能提供比内存更大的地址空间统一的:虚拟内存将物理地址映射成一个连续的地址空间,同时将每个进程的地址空间分隔开,使得每个进程都以为自己独享地址空间。同时提供了统一的内存管理机制。私有的:每个进程都有自己的虚拟地址空间,相互分隔,且进程只能访问自己的虚拟地址空间的内存。原创 2024-04-24 22:17:30 · 686 阅读 · 0 评论 -
CSAPP dataLab实验笔记
当剩下的情况,分为非规格化和规格化判断,当为非规格化时,只有小数位,像0.0101....这样,只考虑frac即可。我们看给出的样例:12(01100) = 5 可以看出 当x为正数时,我们需要从最高位找到第一个1的位然后+1 , 当x为负数时,我们只需找到最高位数即可。因为不能用for循环,所以推荐用二分的方法去做:先看16位 ,再看8位,4位,2位。写过前面的题都知道,可以转换成 x - y ≤ 0 但是这里要考虑符号的正负问题:当 x 和 y 异号的时候,有可能溢出。这里&1是方便格式化。原创 2023-10-10 20:08:40 · 494 阅读 · 3 评论