CSAPP考前题
window.MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']], displayMath: [['$$', '$$'], ['\\[', '\\]']] } }; 一、系统漫游线上测试1.以下说法正确的是( )。a.处理器顺序执行机器指令。b.主存储器包括寄存器。c.总线系统只用来传输数据,不传输指令。d.中央处理器(CPU)是特定指令集架构下的执行单元。 答案:D解析: a项,目前多半是指令级并行、流水线技术,未必顺序执行; b项,著储存器与寄存器是两种不同的存储类型。寄存器是CPU内部的高速存储单元,主要用于临时存储数据和指令,而主存储器是外部于CPU的,通常用来存储程序和数据。 c项,总线系统可以传输指令。 2.可执行目标程序是( )。a.在目标机运行的汇编语言程序。b.是机器指令被按照固定格式打包的二进制文件。c.由编译器产生的汇编程序。d.在目标机运行的高级语言程序。 答案:B 3.SHELL的功能是( ...
2025-CSAPP
window.MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']], displayMath: [['$$', '$$'], ['\\[', '\\]']] } }; 第1章 系统漫游源程序 hello程序的生命周期是从一个源程序(或者说源文件)开始的,即程序员通过编辑器创建并保存的文本文件,文件名是hello.c。 源程序:由值0和1组成的位(又称为比特)序列。 字节:8个位被组织成一组。 每个字节表示程序中的某些文本字符。 编译系统的阶段和用处编译系统的阶段预处理阶段:预处理器(cpp)根据以字符#开头的命令,修改原始的C程序。 比如hello.c中第1行的#include<stdio.h>命令告诉预处理器读取系统头文件stdio.h的内容,并把它直接插入程序文本中。结果就得到了另一个C程序,通常是以.i作为文件扩展名。 编译阶段:编译器(cc1)将文本文件 he11o.i翻译成文本文件...
2025-CSAPP
window.MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']], displayMath: [['$$', '$$'], ['\\[', '\\]']] } }; 第1章 系统漫游源程序 hello程序的生命周期是从一个源程序(或者说源文件)开始的,即程序员通过编辑器创建并保存的文本文件,文件名是hello.c。 源程序:由值0和1组成的位(又称为比特)序列。 字节:8个位被组织成一组。 每个字节表示程序中的某些文本字符。 编译系统的阶段和用处编译系统的阶段预处理阶段:预处理器(cpp)根据以字符#开头的命令,修改原始的C程序。 比如hello.c中第1行的#include<stdio.h>命令告诉预处理器读取系统头文件stdio.h的内容,并把它直接插入程序文本中。结果就得到了另一个C程序,通常是以.i作为文件扩展名。 编译阶段:编译器(cc1)将文本文件 he11o.i翻译成文本文件...
汇编语言知识点复习
window.MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']], displayMath: [['$$', '$$'], ['\\[', '\\]']] } }; 第一章重点内容:1.3 内存及存储器访问逆序存储:高位在前,低位在后。存储器基本概念: 字节:存取信息的基本单位,4个比特位。 字:一个字16位,占用两个存储单元。 双字:一个双字32位,占用四个存储单元。 存储顺序: 大端存储:高字节存储在低地址,低字节存储在高地址。 小端存储:低字节存储在低地址,高字节存储在高地址。 逆序存放:低地址中存放低位字节数据,高地址中存放高位字节数据。 LSB:最低有效位;LSB=0,意味着最低有效位是0。 数据表示:不要写01 FD,否则会认为是一个变量,要写成0FD。 了解掌握内容:1.1...
第5章 文件系统(概要)
window.MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']], displayMath: [['$$', '$$'], ['\\[', '\\]']] } }; 1.什么是文件和文件系统?...
作业题汇总:第7章之后
window.MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']], displayMath: [['$$', '$$'], ['\\[', '\\]']] } }; 第7章 ...
第6章 设备管理(概要)
window.MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']], displayMath: [['$$', '$$'], ['\\[', '\\]']] } ...
考试题分析
window.MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']], displayMath: [['$$', '$$'], ['\\[', '\\]']] } }; 卷一一、 选择题(选择最确切的一个答案,将其代码填入括号中,每空2分,共20分)1. 把逻辑地址转变为内存的物理地址的过程称做( )。A 编译 B连接 C运行 D重定位2. 进程和程序的一个本质区别是( )。A 前者分时CPU,后者独占CPUB 前者存储在内存,后者存在外存C 前者在一个文件中,后者在多个文件中D 前者为动态的,后者为静态的3. 可重定位内存分区分配目的为( )。A 解决碎片问题B 便于多作业共享内存C 回收空白区方便D 摆脱用户干预4. 索引式(随机)文件组织的一个主要优点是()。A不需要链接指针B能实现物理块的动态分配C回收实现比较简单D用户存取方便5.作业I/O方式有如下三种:( )、脱机和( )。A询问 B联机 C中断 ...
作业题汇总:第2章到第6章
window.MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']], displayMath: [['$$', '$$'], ['\\[', '\\]']] } }; 第2章2-9 有五个作业正等待运行,它们估计运行时间分别为9,6,3,5和x。为了获得最小的平均周转时间,应按照什么顺序运行它们?(你给出的答案应是x的函数)。 答案:-平均周转时间:$$ 平均周转时间 = \frac{(完成时间 - 到达时间)}{进程个数} = \frac{(等待时间 + 运行时间)}{进程个数} $$(1)当 $$( x \leq 3 )$$ 运行顺序为 Px, P3, P5, P6, P9 $$ T = \frac{(x + (x + 3) + (x + 3 + 5) + (x + 3 + 5 + 6) + (x + 3 + 5 + 6 + 9))}{5} = x + 9.6 $$(2)当 $$( 3 < x...
第4章 存储器管理
window.MathJax = { tex: { inlineMath: [['$', '$'], ['\\(', '\\)']], displayMath: [['$$', '$$'], ['\\[', '\\]']] } }; 1.概述–功能地址空间存储空间地址重定位1.1 功能-存储器分配: -解决多进程共享主存的问题-地址转换或重定位: -研究各种地址变换方法及相应的地址变换机构。-存储器保护: -防止故障程序破坏OS和其它信息。-存储器扩充: -采用多级存储技术实现虚拟存储器,交换技术。-存储器共享: -研究并发进程如何共享主存中的程序和数据。 1.2 地址空间符号名字空间:源程序中的各种符号名的集合所限定的空间。源程序用符号名访问变量和子程序。编译:由于目标程序在主存中的位置是不可预知的,目标程序中的各个地址总是以“0”为参考地址顺序编码的;逻辑地址,相对地址,虚地址逻辑地址空间:经编译链接后的程序大小所限定的空间。程序地址域,程序地址空间 1.3...