当前位置: 首页 > news >正文

13015计算机系统原理-速记宝典

命题来源: 围绕学科的基本概念、原理、特点、 内容。

答题攻略:

1)不能像名词解释那样简单,也不能像论述题那样长篇大论,但需要加以简要扩展。

2)答案内容要简明、概括、准确,即得分的关键内容一定要写清楚。

3)答案表述要有层次性,列出要点,分点分条作答,不要写成一段;

4)如果对于考题内容完全不知道,利用选择题找灵感,找到相近的内容,联系起来进行作答。 如果没有,随意发挥,不放弃。

考点 1 :简述冯 ·诺依曼结构计算机的基本思想

1)采用“存储程序 ”工作方式。

2)计算机由运算器、控制器、存储器、输入设备和输出设备五大基本部件组成。

3)存储器能存放数据,也能存放指令,在形式上没有区别,但计算机应能区分它们

4)计算机内部以二进制形式表示指令和数据;

考点 2 :简述程序和指令的执行过程

1)取数指令(load)从主存单元中取出数据存放到通用寄存器中;

2)存数指令(store)将通用寄存器的内容写入主存单元;

3)加法指令(add)将两个通用寄存器内容相加后送入结果寄存器,

4)传送指令( mov)将一个通用寄存器的内容送到另一个通用寄存器,如此等等。

考点 3 :简述翻译程序的分类

1)汇编程序(Assembler):也称汇编器。用于将汇编语言源程序翻译成机器语言目标程序。

2)解释程序(Interpreter):也称解释器。用于将源程序中的语句按其执行顺序逐条翻译成机器指令 并立即执行,如 PYTHON BASIC 等;

3)编译程序(Compiler):也称编译器。用于将高级语言源程序翻译成汇编语言或机器语言目标 程序。

考点4:简述从源程序到可执行文件的转换过程。

1)预处理阶段

2)编译阶段

3)汇编阶段

4)链接阶段

考点 5 :简述计算机的用户分类

1)最终用户

2)系统管理员

3)应用程序员

4)系统程序员

考点 6 :简述定点数编码表示方法

1)原码

2)补码

3)反码

4)移码

考点 7 :简述补码的突出优点

1)与原码和反码相比,数 0 的补码表示形式唯一。

2)与原码和移码相比,补码运算系统是一种模运算系统,因而可用加法实现减法运算,且符号位 可以和数值位一起参加运算。

3)与原码和反码相比,它比原码和反码多表示一个最小负数。

4)与反码相比,不需要通过循环进位来调整结果。

考点 8 :简述无符号数除法运算的判断操作

1)若被除数为 0 、除数不为 0 ,或者定点整数除法时|被除数|<|除数| ,则说明商为 0 ,余数为被除 数,不再继续执行。

(2)若被除数不为 0 、除数为 0 ,对于整数,则发生除数 0”异常;对于浮点数,则结果为无穷大。

3)若被除数和除数都为 0 ,对于整数,则发生除法错异常;对于浮点数,则有些机器产生一个不发 信号的 NaN ,即quiet NaN

考点 9 :简述浮点数乘法的运算步骤

1)尾数相乘、阶相加

2)尾数规格化

3)尾数舍入处理

4)阶码溢出判断

考点 10:简述指令的类型

1 RR 型(两个操作数都来自寄存器)

2 RS 型(两个操作数分别来自寄存器和存储单元)

3SI 型(两个操作数分别来自存储单元和立即数)

4SS 型(两个操作数都来自存储单元)等。

考点 11:简述与 CISC 相比、RISC 指令系统的主要特点

指令数目少;

指令格式规整,采用定长指令字方式,操作码和操作数地址等字段的长度固定;

只有 Load/Store 指令中的数据需要访存、这种称为 Load/Store 型指令风格;

采用大量通用寄存器。

考点 12:简述生成机器代码的过程

预处理 编译

汇编

链接

考点 13:简述 C 语言程序中的基本数据类型

1)指针或地址

2)序数、位串

3)带符号整数

4)浮点数

考点 14:简述 IA-32 指令的操作数类型

1)立即数

2)寄存器操作数

3)存储器操作数

考点 15:简述 IA-32 中的通用寄存器

18  8/ 16/32 位定点通用寄存器

28  MMX 指令/x87 FPU 使用的 64 /80 位寄存器 MMO/ST0)~MM7/ST7

38  SSE 指令使用的 128 位寄存器 XMMOXMM7

考点 16:简述二进制数运算指令的类型

1./减运算指令

2./减运算指令

3.取负指令

4. 比较指令

5./除运算指令

考点 17:简述过程调用的执行步骤

假定过程 P 调用过程 Q ,则 P 称为调用者(Caller),Q 称为被调用者(Callee)。

过程调用的执行步骤如下。

1P 将入口参数(实参)放到 Q 能访问到的地方。

2P 将返回地址存到特定的地方,然后将控制转移到 Q

3Q 保存 P 的现场,并为自己的非静态局部变量分配空间。

4)执行 Q 的过程体(函数体)。

5Q 恢复 P 的现场,并释放局部变量所占空间。

6Q 取出返回地址,将控制转移到 P

考点 18:简述 C 语言中循环结构

1for 语句

2while 语句

3dowhile 语句

考点 19:简述 i386 System V ABI  struct 结构体数据的对齐方式规则

①整个结构体变量的对齐方式与其中对齐方式最严格的成员相同;

②每个成员在满足其对齐方式的前提下,取地址最小的可用位置作为成员在结构体 中的偏移量,这可能导致内部插空;

③结构体大小应为对齐边界长度的整数倍。这可能会导致尾部插空。

考点 20:简述与 IA-32 代码相比,x86-64 代码主要特点

1  IA-32 具有更多的通用寄存器个数。

2  IA-32 具有更长的通用寄存器位数,从 32 位扩展到 64 位。

3)字长从 32 位变为 64 位,因而逻辑地址从 32 位变为 64 位。

4)对于 long double 型数据,虽然还是采用与 IA-32 相同的 80 位扩展精度格式,但是,所分配的存储 空间从 IA-32  12 字节大小扩展为 16 字节大小。

5)过程调用时,对于整型入口参数只有 6 个以内的情况,用通用寄存器而不是用栈来传递。

6128 位的 XMM 寄存器从原来的8 个增加到 16 个,浮点操作采用基 SSE 的面向 XMM 寄存器的指 令集,浮点数存放在 128 位的 XMM 寄存器中。

考点 21:简述 x86-64 的寄存器的使用约定

可以不用帧指针寄存器 RBP 作为栈帧底部,此时,使用 RSP 作为基址寄存器来访问栈帧中的信息,  RBP 可作为普通寄存器使用;

传送入口参数的寄存器依次为 RDI RSI RDX RCX R8  R9 ,返回参数存放在 RAX 中;

③调用者保存的寄存器为 R10  R11 ,被调用者保存的寄存器为 RBX RBP R12 R13 R14  R15

 RSP 用于指向栈顶元素;

 RIP 用于指向正在执行或即将执行的指令。

考点 22:简述四趟扫描处理

第一趟扫描进行词法分析;

第二趟扫描进行语法分析;

第三趟扫描进行代码优化和存储分配;

第四趟扫描生成代码。

考点 23:简述与 ELF 可重定位文件格式相比,ELF 可执行文件的不同点

1ELF 头中字段 e_entry 给出程序执行入口地址,可重定位文件中此字段为 0

2)通常会有.init 节和.fini 节,其中,init 节定义一个 init 函数,用于可执行文件开始执行时的初始化 工作。

3)少了.rel text .rel data 等重定位信息节。

4)多了一个程序头表,也称段头表(Segment Header Table),它是一个结构数组。

考点 24:简述符号表中的符号类型

1)在 m 中定义并被其他模块引用的全局符号(Global Symbol)。这类符号包括非静态的函数名和全局 变量名。

2 由其他模块定义并被 m 引用的全局符号,称为 m 的外部符号(External Symbol),包括在 m 中引 用的在其他模块定义的外部函数名和外部变量名。

3)在 m 中定义并在 m 中引用的本地符号(Local Symbol)。

考点 25:简述通过 shell 命令行输入可执行文件名 a.out 进行程序加载的过程

1shell 命令行解释器输出一个命令行提示符(如:unix>),并开始接受用户输入的命今行。

2)当用户在命令行提示符后输入命令行“./a out[enter] ”后,shell 命令行程序开始对命令行进行解 析,获得各个命令行参数并构造传递给函数 execve 的参数列表 argv 和参数个数 argc

3)调用 fork 函数,创建一个子进程。

4)以第 2)步命令行解析得到的参数个数 argc 、参数列表 argv 以及全局变量 environ 作为参数,调用 函数 execve ,从而实现在当前进程(用fork 新创建的子进程)的上下文中加载并运行 a.out 程序。

考点 26:简述 CPU 执行指令的过程。

1)取指令

2)指令译码

3)计算源操作数地址并取操作数

4)执行数据操作

5)计算目的操作数地址并存结果、 6)计算下条指令地址

考点 27:简述 CPU 的基本功能和组成。

1)程序计数器(PC)。

2)指令寄存器(IR)。IR 用以存放现行指令。

3)指令译码器(ID)。

4)启停控制逻辑。

5)时序信号产生部件。

6)操作控制信号形成部件。

7)总线控制逻辑

8)中断机构。实现对异常情况和外部中断请求的处理。

考点 28:简述 CPU 对异常和中断的响应过程步骤

1.  保护断点和程序状态

2.  关中断

3.  识别异常和中断事件并转相应处理程序

考点 29:简述指令的处理过程阶段

1)取指令并 PC  1IF):根据 PC 的值从存储器取出指令,并 PC PC+1

2)译码并读寄存器(ID):对指令操作码进行译码并生成控制信号,同时读取寄存器 rs  rt 的内容。

3)运算或读存储器(EX): ALU 中对寄存器操作数进行运算,或者根据 addr 读存储器

4)结果写回(WB):将结果写入目的寄存器 rt ,或写人主存单元 addr 中。

考点 30:简述磁盘读/写的操作步骤

1)寻道操作

2)旋转等待操作

3)读/写操作

考点 31:简述磁盘存储器的性能指标

1)记录密度

2)存储容量

3)数据传输率

4)平均存取时间等

考点 32:简述闪存的基本操作

1)编程(充电)

2)擦除(放电)

3)读取

考点 33:简述 SSD 的三个限制

①写某一页信息之前,必须先擦除该页所在的整个区块;

②擦除后区块内的页必须按顺序写入信息;

③擦除/编程次数有限。

考点 34:简述主存块和cache 行之间的映射方式。

1)直接映射:每个主存块映射到 cache 的固定行中。

2)全相联映射:每个主存块映射到 cache 的任意行中。

3)组相联映射:每个主存块映射到 cache 的固定组的任意行中。

考点 35:简述用户空间映射到用户进程的区域

1)用户栈(User Stack)。

2)共享库(Shared Libraries)。

3)堆(Heap)。

4)可读/写数据区。

5)只读数据和代码区。

考点 36:简述虚拟存储器的类型

1.   段式虚拟存储器

2.   页式虚拟存储器

3.   段页式虚拟存储器

考点 37:简述指令集架构和硬件的基本功能。

1)使部分 CPU 状态只能由操作系统内核程序访问而用户进程只能读不能写,或者根本不能访问。

2)支持至少两种特权模式。

3)提供在不同特权模式之间相互切换的机制。

考点 38:简述使用标准 I/O 库函数的不足

 I/0 为同步操作,即程序必须等待 I/O 操作真正完成后才能继续执行;

在一些情况下不适合甚至无法使用标准 I/O 库函数实现 I/O 功能, C 标准 VO 库中不提供读取文 件元数据的函数;

标准 I/O 库函数还存在一些问题,用它进行网络编程容易造成缓冲区溢出等风险,同时它也不提供 对文件进行加锁和解锁等功能。

考点 39:简述 I/O 的主要控制方式

1.  程序直接控制

2.  中断控制

3.  DMA 控制

考点 40:简述 I/O 接口的主要职能

1)数据缓冲。

2)错误和就绪检测。

3)控制和定时。

4)数据格式的转换。

考点 41:简述中断系统的基本功能

①及时记录各种中断请求,通常用一个中断请求寄存器来记录。

②自动响应中断请求。CPU 在“开中断 ”状态下,执行一条指令后会自动检测中断请求引脚,发现有 中断请求后会自动响应中断。

③同时有多个中断请求时,能自动选择并响应优先级最高的中断请求。

④保护被打断程序的断点和现场。断点指被打断程序中将要执行的下一条指令的地址,由 CPU 保存, 现场指被打断程序在断点处各通用寄存器的内容, 由中断服务程序保存。

⑤通过中断屏蔽实现多重中断的嵌套执行。

http://www.xdnf.cn/news/1239859.html

相关文章:

  • Web 开发 12
  • 移动前后端全栈项目
  • 小迪安全v2023学习笔记(五十一讲)—— 持续更新中
  • Nexus配置npm私有仓库
  • Java项目:基于SSM框架实现的商铺租赁管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告+任务书+远程部署】
  • LLM大模型开发-SpringAI:ChatClient、Ollama、Advisor
  • io_destroy系统调用及示例
  • 基于 LangChain + 通义千问 + bge-large 中文 Embedding 搭建一个RAG问答示例
  • FastAPI入门:安全性
  • 第12届蓝桥杯Scratch图形化【省赛】初级组 2021年4月24日
  • MySQL学习之MVCC多版本并发控制
  • python常用数据类型
  • 13.Redis 的级联复制
  • 03.一键编译安装Redis脚本
  • sqli-labs:Less-23关卡详细解析
  • 【运维基础】Linux 硬盘分区管理
  • 数据集相关类代码回顾理解 | StratifiedShuffleSplit\transforms.ToTensor\Counter
  • Corrosion2靶机练习笔记
  • 选择排序原理与C语言实现详解
  • 第15届蓝桥杯Scratch图形化国赛初/中级组2024年9月7日真题
  • 【LeetCode刷题指南】--对称二叉树,另一颗树的子树
  • 【量化交易】日内交易有效特征因子
  • Socket编程——TCP协议
  • 智慧社区(六)——社区居民人脸识别功能实现详解:从腾讯 API 集成到模拟验证
  • CMake 命令行参数完全指南(2)
  • C++入门自学Day5-- C/C++内存管理(续)
  • 控制建模matlab练习08:根轨迹
  • 【图像处理基石】如何使用deepseek进行图像质量的分析?
  • pycharm上如何添加conda环境
  • 当Windows远程桌面出现“身份验证错误。要求的函数不受支持”的问题